Lumiera  0.pre.03
»edit your freedom«
steam/mobject/session/binding.hpp
Go to the documentation of this file.
1 /*
2  BINDING.hpp - link to use a sequence within the session
3 
4  Copyright (C) Lumiera.org
5  2009, Hermann Vosseler <Ichthyostega@web.de>
6 
7  This program is free software; you can redistribute it and/or
8  modify it under the terms of the GNU General Public License as
9  published by the Free Software Foundation; either version 2 of
10  the License, or (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program; if not, write to the Free Software
19  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 
21 */
22 
23 
32 #ifndef STEAM_MOBJECT_SESSION_BINDING_H
33 #define STEAM_MOBJECT_SESSION_BINDING_H
34 
37 
38 
39 namespace steam {
40 namespace asset {
41  class Sequence;
42 
43  typedef lib::P<Sequence> PSequence;
44 
45 }
46 
47 namespace mobject {
48 namespace session {
49 
50  using asset::PSequence;
51 
58  class Binding : public Meta
59  {
60  PSequence boundSequence_;
61 
62  string
63  initShortID() const
64  {
65  return buildShortID("Binding");
66  }
67 
68  bool isValid() const;
69 
70  public:
71  Binding (PSequence const& sequence_to_bind);
72 
74 
75  };
76 
77  } // namespace mobject::session
78 
82 
83 }} // namespace steam::mobject
84 #endif
A refcounting Handle to an MObject of type MO, used to constrain or explicitly specify the location w...
Definition: trait.hpp:91
Base class of all BuilderTools, used according to the visitor pattern: each Tool contains the concret...
Steam-Layer implementation namespace root.
Namespace of Session and user visible high-level objects.
Definition: sequence.hpp:74
Visiting-tool mechanism configured specifically for the Builder.
Intermediate Asset interface: metadata and processing instructions.
Explicit link to bind a Sequence (container) to be used within the Session, either as contents of a t...
Meta-MObject doesn&#39;t represent real Media Content, but rather all sorts of Processing Instructions an...
Customised refcounting smart pointer template, built upon std::shared_ptr, but forwarding type relati...
Definition: trait.hpp:80
#define DEFINE_PROCESSABLE_BY(TOOL)
mark a Visitable subclass as actually treat-able by some "visiting tool" base interface.
Definition: visitor.hpp:231
The asset subsystem of the Steam-Layer.
Definition: wrapperptr.hpp:44