Lumiera  0.pre.03
»edit your freedom«
segmentation-tool.hpp
Go to the documentation of this file.
1 /*
2  SEGMENTATION-TOOL.hpp - Tool for creating a partitioning of the current timeline
3 
4  Copyright (C) Lumiera.org
5  2008, 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 
34 #ifndef MOBJECT_BUILDER_SEGMENTATION_TOOL_H
35 #define MOBJECT_BUILDER_SEGMENTATION_TOOL_H
36 
37 
39 
41 #include "steam/fixture/fixture.hpp"
42 
43 
44 #include <list>
45 using std::list;
46 
47 
48 
49 namespace steam {
50 namespace mobject {
51 namespace builder {
52 
53 
62  : public ApplicableBuilderTargetTypes<SegmentationTool>
63  {
64 
65  public:
67 
68  void treat (mobject::session::Clip& clip) ;
69  void treat (mobject::session::Effect& effect) ;
70 
71  void treat (mobject::Buildable& something) ;
72 
73  void onUnknown (Buildable& target) ;
74 
75  bool empty() const;
76 
77  private:
78  using Segment = fixture::Segment;
79 
81  //session::Segmentation& segments_;
83 
84  };
85 
86 
87 
88 }}} // namespace steam::mobject::builder
89 #endif /*MOBJECT_BUILDER_SEGMENTATION_TOOL_H*/
Marker Interface for classes visitable by Builder tools.
Tool implementation for deriving a partitioning of the current timeline, such that each Segment has a...
Backbone data structure of the low-level render node model The fixture defines the boundary between t...
A user visible/editable Clip is a reference to a contiguous sequence of media data loaded as Asset in...
Steam-Layer implementation namespace root.
Declaration of all kinds of MObjects to be treated by some "Builder tool".
For the purpose of building and rendering, the fixture (for each timeline) is partitioned such that e...
Definition: segment.hpp:68
Part of the Fixture datastructure to manage time segments of constant structure.
Marker used to declare some visiting Tool class to be actually a mobject::builder::BuilderTool and to...