Lumiera
0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
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*/
lib::idi::BareEntryID::getSym
string const & getSym() const
Definition
entry-id.hpp:169
lib::time::Time
Lumiera's internal time value datatype.
Definition
timevalue.hpp:306
steam::mobject::Placement
A refcounting Handle to an MObject of type MO, used to constrain or explicitly specify the location w...
Definition
placement.hpp:233
steam::mobject::session::AbstractMO::buildShortID
string buildShortID(lib::Literal typeID, string suffix="") const
Definition
abstractmo.cpp:45
steam::mobject::session::Fork
A Fork serves as grouping device within the Session.
Definition
fork.hpp:95
steam::mobject::session::Fork::start_
Time start_
Definition
fork.hpp:96
steam::mobject::session::Fork::isValid
bool isValid() const
MObject self-test (usable for asserting)
Definition
fork.cpp:45
steam::mobject::session::Fork::isSameID
bool isSameID(string const &)
Child tracks in a tree structure.
Definition
fork.hpp:123
steam::mobject::session::Fork::initShortID
string initShortID() const
Definition
fork.hpp:101
steam::mobject::session::Fork::id_
ForkID id_
Definition
fork.hpp:97
steam::mobject::session::MObjectFactory
Definition
mobjectfactory.hpp:61
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:41
entry-id.hpp
Bare symbolic and hash ID used for accounting of asset like entries.
meta.hpp
Intermediate Asset interface: metadata and processing instructions.
steam::mobject::session
Namespace of Session and user visible high-level objects.
Definition
sequence.hpp:65
steam::mobject::PFork
Placement< session::Fork, session::Meta > PFork
Definition
fork.hpp:133
steam
Steam-Layer implementation namespace root.
lib::idi::EntryID< Fork >
timevalue.hpp
a family of time value like entities and their relationships.
steam
mobject
session
fork.hpp
Generated on Fri Nov 7 2025 for Lumiera by
1.9.8