Lumiera
0.pre.03
»edit your freedom«
fork.hpp
Go to the documentation of this file.
1
/*
2
FORK.hpp - A grouping device within the Session.
3
4
Copyright (C)
5
2008, Hermann Vosseler <Ichthyostega@web.de>
6
7
**Lumiera** is free software; you can redistribute it and/or modify it
8
under the terms of the GNU General Public License as published by the
9
Free Software Foundation; either version 2 of the License, or (at your
10
option) any later version. See the file COPYING for further details.
11
12
*/
13
14
45
#ifndef MOBJECT_SESSION_FORK_H
46
#define MOBJECT_SESSION_FORK_H
47
48
#include "
steam/mobject/session/meta.hpp
"
49
#include "
lib/idi/entry-id.hpp
"
50
#include "
lib/time/timevalue.hpp
"
51
52
53
54
namespace
steam
{
55
namespace
mobject {
56
namespace
session
{
57
58
using
lib::time::Time
;
59
60
class
Fork;
61
62
using
ForkID =
lib::idi::EntryID<Fork>
;
63
64
65
66
69
94
class
Fork
:
public
Meta
95
{
96
Time
start_;
97
ForkID
id_;
98
99
100
string
101
initShortID()
const
102
{
103
return
buildShortID(
"Fork"
);
104
}
105
106
bool
isValid
()
const
;
107
108
protected
:
109
Fork
(
ForkID
const
&);
110
friend
class
MObjectFactory
;
111
112
public
:
114
// vector<Placement<Track>> subTracks; ///////////TODO: it should really work with PlacementRefs! this here is just a decoy!!!!!!!
116
117
bool
isSameID
(
string
const
&);
118
119
};
120
121
122
inline
bool
123
Fork::isSameID
(
string
const
& refID)
124
{
125
return
refID == id_.getSym();
126
}
127
128
129
}
// namespace mobject::session
130
132
template
class
Placement<session::Fork, session::Meta>
;
133
typedef
Placement<session::Fork, session::Meta>
PFork
;
134
135
}}
// namespace steam::mobject
136
#endif
/*MOBJECT_SESSION_FORK_H*/
steam::mobject::Placement
A refcounting Handle to an MObject of type MO, used to constrain or explicitly specify the location w...
Definition:
trait.hpp:82
steam::mobject::session::MObjectFactory
Definition:
mobjectfactory.hpp:60
steam::mobject::session::Fork::isSameID
bool isSameID(string const &)
Child tracks in a tree structure.
Definition:
fork.hpp:123
steam::mobject::session::Fork::Fork
Fork(ForkID const &)
create a new fork-MObject based on the given unique ID.
Definition:
fork.cpp:36
lib::idi::EntryID< Fork >
steam
Steam-Layer implementation namespace root.
Definition:
dummy-player-facade.h:37
steam::mobject::session
Namespace of Session and user visible high-level objects.
Definition:
sequence.hpp:65
lib::time::Time
Lumiera's internal time value datatype.
Definition:
timevalue.hpp:299
meta.hpp
Intermediate Asset interface: metadata and processing instructions.
steam::mobject::session::Meta
Meta-MObject doesn't represent real Media Content, but rather all sorts of Processing Instructions an...
Definition:
mobject/session/meta.hpp:40
steam::mobject::session::Fork
A Fork serves as grouping device within the Session.
Definition:
fork.hpp:94
steam::mobject::session::Fork::isValid
bool isValid() const
MObject self-test (usable for asserting)
Definition:
fork.cpp:45
entry-id.hpp
Bare symbolic and hash ID used for accounting of asset like entries.
timevalue.hpp
a family of time value like entities and their relationships.
steam
mobject
session
fork.hpp
Generated on Fri Dec 13 2024 05:05:33 for Lumiera by
1.8.13