diff --git a/doc/devel/uml/class128645.html b/doc/devel/uml/class128645.html index 27413648f..5f94489fb 100644 --- a/doc/devel/uml/class128645.html +++ b/doc/devel/uml/class128645.html @@ -23,7 +23,9 @@
Operation resolve

create an actual (explicit) placement while trying to satisfy the network of adjacent objects and placements.

Declaration :

Relation subject (<unidirectional association>)

Placement acts as smart pointer

Declaration :

Operation chain

create and add another Placement for this media object, thus increasingly constraining the (possible) position of this object.

Declaration :

-
Relation chain (<unidirectional association>)

Chain of additional Placements further constraining the position of this MObject

Declaration :

+
Relation chain (<unidirectional association>)

Chain of additional Placements further constraining the position of this MObject

Declaration :

+
Relation <unidirectional association>

Declaration :

Stereotype: has_a

+

All public operations : chain , resolve

diff --git a/doc/devel/uml/class152069.html b/doc/devel/uml/class152069.html new file mode 100644 index 000000000..5b8f8eee2 --- /dev/null +++ b/doc/devel/uml/class152069.html @@ -0,0 +1,22 @@ + + + + + + +Class PlacementIndex + + + + + +
Class PlacementIndex
+

+ + + + +

Declaration :

+
+ + diff --git a/doc/devel/uml/class152197.html b/doc/devel/uml/class152197.html new file mode 100644 index 000000000..3bc899ed8 --- /dev/null +++ b/doc/devel/uml/class152197.html @@ -0,0 +1,20 @@ + + + + + + +Class Sequence + + + + + +
Class Sequence
+

+ + + + +

Declaration :

+ diff --git a/doc/devel/uml/class152325.html b/doc/devel/uml/class152325.html new file mode 100644 index 000000000..b800ba25b --- /dev/null +++ b/doc/devel/uml/class152325.html @@ -0,0 +1,20 @@ + + + + + + +Class Binding + + + + + +
Class Binding
+

+ + + + +

Declaration :

+ diff --git a/doc/devel/uml/class152453.html b/doc/devel/uml/class152453.html new file mode 100644 index 000000000..be3d68aa4 --- /dev/null +++ b/doc/devel/uml/class152453.html @@ -0,0 +1,24 @@ + + + + + + +Class PlacementRef + + + + + +
Class PlacementRef
+

+ + + + +

Declaration :

+ +
Relation id_ (<unidirectional association>)

Declaration :

Stereotype: holds

+
+ + diff --git a/doc/devel/uml/class152581.html b/doc/devel/uml/class152581.html new file mode 100644 index 000000000..6b8ffdfb5 --- /dev/null +++ b/doc/devel/uml/class152581.html @@ -0,0 +1,22 @@ + + + + + + +Class Id + + + + + +
Class Id
+

+ + + + +

Declaration :

+
+ + diff --git a/doc/devel/uml/class152709.html b/doc/devel/uml/class152709.html new file mode 100644 index 000000000..331b63679 --- /dev/null +++ b/doc/devel/uml/class152709.html @@ -0,0 +1,21 @@ + + + + + + +Class LuidH + + + + + +
Class LuidH
+

+ + + + +

Declaration :

Directly inherited by : Id

+ + diff --git a/doc/devel/uml/class152837.html b/doc/devel/uml/class152837.html new file mode 100644 index 000000000..05dbec817 --- /dev/null +++ b/doc/devel/uml/class152837.html @@ -0,0 +1,24 @@ + + + + + + +Class MObjectRef + + + + + +
Class MObjectRef
+

+ + + + +

Declaration :

+ +
Relation pRef_ (<unidirectional association>)

Declaration :

Stereotype: holds

+
+ + diff --git a/doc/devel/uml/class152965.html b/doc/devel/uml/class152965.html new file mode 100644 index 000000000..a297d3f85 --- /dev/null +++ b/doc/devel/uml/class152965.html @@ -0,0 +1,21 @@ + + + + + + +Class Handle + + + + + +
Class Handle
+

+ + + + +

Declaration :

Directly inherited by : MObjectRef

+ + diff --git a/doc/devel/uml/class153093.html b/doc/devel/uml/class153093.html new file mode 100644 index 000000000..b5b237ee8 --- /dev/null +++ b/doc/devel/uml/class153093.html @@ -0,0 +1,20 @@ + + + + + + +Class shared_ptr + + + + + +
Class shared_ptr
+

+ + + + +

Declaration :

+ diff --git a/doc/devel/uml/class153221.html b/doc/devel/uml/class153221.html new file mode 100644 index 000000000..9ead038a7 --- /dev/null +++ b/doc/devel/uml/class153221.html @@ -0,0 +1,20 @@ + + + + + + +Class P + + + + + +
Class P
+

+ + + + +

Declaration :

+ diff --git a/doc/devel/uml/class153349.html b/doc/devel/uml/class153349.html new file mode 100644 index 000000000..48617516d --- /dev/null +++ b/doc/devel/uml/class153349.html @@ -0,0 +1,24 @@ + + + + + + +Class Scope + + + + + +
Class Scope
+

+ + + + +

Declaration :

+ +
Relation <unidirectional association>

Declaration :

Stereotype: holds

+
+ + diff --git a/doc/devel/uml/class153477.html b/doc/devel/uml/class153477.html new file mode 100644 index 000000000..25eca07ee --- /dev/null +++ b/doc/devel/uml/class153477.html @@ -0,0 +1,24 @@ + + + + + + +Class ScopePath + + + + + +
Class ScopePath
+

+ + + + +

Declaration :

+ +
Relation path_ (<directional composition>)

Declaration :

Stereotype: vector

+
+ + diff --git a/doc/devel/uml/class153605.html b/doc/devel/uml/class153605.html new file mode 100644 index 000000000..3978922a5 --- /dev/null +++ b/doc/devel/uml/class153605.html @@ -0,0 +1,24 @@ + + + + + + +Class QueryFocus + + + + + +
Class QueryFocus
+

+ + + + +

Declaration :

+ +
Relation scopes (<unidirectional association>)

Declaration :

Stereotype: has_a

+
+ + diff --git a/doc/devel/uml/class153733.html b/doc/devel/uml/class153733.html new file mode 100644 index 000000000..aeffde979 --- /dev/null +++ b/doc/devel/uml/class153733.html @@ -0,0 +1,24 @@ + + + + + + +Class QueryFocusStack + + + + + +
Class QueryFocusStack
+

+ + + + +

Declaration :

+ +
Relation <directional composition>

Declaration :

Stereotype: vector

+
+ + diff --git a/doc/devel/uml/class153861.html b/doc/devel/uml/class153861.html new file mode 100644 index 000000000..1ef4ad515 --- /dev/null +++ b/doc/devel/uml/class153861.html @@ -0,0 +1,26 @@ + + + + + + +Class ScopeLocator + + + + + +
Class ScopeLocator
+

+ + + + +

Declaration :

Stereotype: singleton

+
+ +
Relation <unidirectional association>

Declaration :

+
Relation <unidirectional association>

Declaration :

Stereotype: use

+
+ + diff --git a/doc/devel/uml/class153989.html b/doc/devel/uml/class153989.html new file mode 100644 index 000000000..2330627fd --- /dev/null +++ b/doc/devel/uml/class153989.html @@ -0,0 +1,22 @@ + + + + + + +Class QueryResolver + + + + + +
Class QueryResolver
+

+ + + + +

Declaration :

Directly inherited by : PlacementIndex

+

Stereotype: interface

+ + diff --git a/doc/devel/uml/classdiagrams.html b/doc/devel/uml/classdiagrams.html index bfd20dbab..522259723 100644 --- a/doc/devel/uml/classdiagrams.html +++ b/doc/devel/uml/classdiagrams.html @@ -23,15 +23,18 @@ Command structure Controller Entities File MappingShows whats used to access Frames +Focus of Query HierarchyLumiera Exception hierarchy In Memory Database interface components Layer Separation Interface Media-Asset Relations +MObjectRef Proc-Asset Relations Render Entities Render Mechanics Rules access +Session backbone Session structure StateAdapter composition Stream Type Framework diff --git a/doc/devel/uml/classes.html b/doc/devel/uml/classes.html index ebec4c117..a6a2fe704 100644 --- a/doc/devel/uml/classes.html +++ b/doc/devel/uml/classes.html @@ -27,6 +27,7 @@ AssetManagerboundaryFacade for the Asset subsystem AutoAutomation data for some parameter (i.e. a time varying function) BackendCache +Binding BuffHandle BuffTable Buildableinterface @@ -83,7 +84,9 @@ FrameDescriptorinterfaceA FrameDescriptor implements the higher level interfaces for frames. Further refinements are made by subclassing and policy classes FrameReference GLBuf +Handle HandlingPatterninterface +Id ImplFacade InstanceHandle InterpolatorProvides the implementation for getting the acutal value of a time varying or automated effect/plugin parameter @@ -95,6 +98,7 @@ Lock Lock Logic +LuidH Mask Mediakey abstraction: media-like assets MediaAccessFacadeboundaryprovides functions for querying (opening) a media file, detecting the channels or streams found within this file, etc. Delegating to the actual backend functions @@ -103,18 +107,22 @@ Metakey abstraction: metadata and organisational asset Meta MObjectinterface +MObjectRef Monitor Mutationfunc MutexI provided a reworked Mutex class in my Cinelerra2 repository NodeCreatorToolThis Tool implementation plays the central role in the buld process: given a MObject from Session, it is able to attach ProcNodes to the render engine under construction such as to reflect the properties of the MObject in the actual render. NodeWiring OperationBase +P ParamAccessor ParameterDescriptor and access object for a plugin parameter. Parameters may be provided with values from the session, and this values may be automated. ParamProviderinterfaceA facility to get the actual value of a plugin/effect parameter PathManagerWhile building a render engine, this Strategy class decides on the actual render strategy in accordance to the current controller settings (system state) Pipestructural asset representing a basic building block within the high level model: a port for building a processing chain and generating media output Placementinterfaceused to specify the position of a MObject in the EDL. This can be done in various ways (absolute, relative).
Placement at the same time acts as (refcounting) smart pointer for accessing the MObject. +PlacementIndex +PlacementRef PlayControl PlayheadCursor Plug @@ -132,8 +140,11 @@ Proxy PullInput QueryCache +QueryFocus +QueryFocusStack QueryHandlerinterface QueryHandlerImpl +QueryResolverinterface ReadSource RedoLast RelativeLocation @@ -144,16 +155,21 @@ RenderTask ResolverBase Scheduler +Scope +ScopeLocatorsingleton +ScopePath Segment Segmentation SegmentationToolTool implementation for deriving a partitioning of the current timeline such, that each segement has a constant configuration. "Constant" means here, that any remaining changes over time can be represented by automation solely, without the need to change the node connections. Seq +Sequence Sequence Serializeractor ServiceImpl SessionPrimary Interface for all editing tasks.
The session contains defaults, all the assets being edited, and a set of EDL with the individual MObjects to be manipulated and rendered. SessionImplImplementation class for the Session interface SessManager +shared_ptr SimpleClipElementary clip consisting of only one media stream SmartPointerauxiliary SourceSource Node: represents a media source to pull data from. diff --git a/doc/devel/uml/classes_list.html b/doc/devel/uml/classes_list.html index 173ec52e4..2378c288f 100644 --- a/doc/devel/uml/classes_list.html +++ b/doc/devel/uml/classes_list.html @@ -28,6 +28,7 @@ AssetManager
Auto
BackendCache
+Binding
BuffHandle
BuffTable
Buildable
@@ -84,7 +85,9 @@ FrameDescriptor
FrameReference
GLBuf
+Handle
HandlingPattern
+Id
ImplFacade
InstanceHandle
Interpolator
@@ -96,6 +99,7 @@ Lock
Lock
Logic
+LuidH
Mask
Media
MediaAccessFacade
@@ -104,18 +108,22 @@ Meta
Meta
MObject
+MObjectRef
Monitor
Mutation
Mutex
NodeCreatorTool
NodeWiring
OperationBase
+P
ParamAccessor
Parameter
ParamProvider
PathManager
Pipe
Placement
+PlacementIndex
+PlacementRef
PlayControl
PlayheadCursor
Plug
@@ -133,8 +141,11 @@ Proxy
PullInput
QueryCache
+QueryFocus
+QueryFocusStack
QueryHandler
QueryHandlerImpl
+QueryResolver
ReadSource
RedoLast
RelativeLocation
@@ -145,16 +156,21 @@ RenderTask
ResolverBase
Scheduler
+Scope
+ScopeLocator
+ScopePath
Segment
Segmentation
SegmentationTool
Seq
+Sequence
Sequence
Serializer
ServiceImpl
Session
SessionImpl
SessManager
+shared_ptr
SimpleClip
SmartPointer
Source
diff --git a/doc/devel/uml/fig134021.png b/doc/devel/uml/fig134021.png index edd544530..5405d2010 100644 Binary files a/doc/devel/uml/fig134021.png and b/doc/devel/uml/fig134021.png differ diff --git a/doc/devel/uml/fig136325.png b/doc/devel/uml/fig136325.png new file mode 100644 index 000000000..32668374d Binary files /dev/null and b/doc/devel/uml/fig136325.png differ diff --git a/doc/devel/uml/fig136453.png b/doc/devel/uml/fig136453.png new file mode 100644 index 000000000..2768139df Binary files /dev/null and b/doc/devel/uml/fig136453.png differ diff --git a/doc/devel/uml/fig136581.png b/doc/devel/uml/fig136581.png new file mode 100644 index 000000000..f94911df8 Binary files /dev/null and b/doc/devel/uml/fig136581.png differ diff --git a/doc/devel/uml/index.html b/doc/devel/uml/index.html index 4cbf83614..a45c5e406 100644 --- a/doc/devel/uml/index.html +++ b/doc/devel/uml/index.html @@ -147,7 +147,7 @@ Documentation
Artifact Lumiera

the main executable to be built

Depends on common

Depends on gui

Depends on proc

Depends on backend

Stereotype: executable

-

executable associated with : allocation, vframe, toolfactory, hub, buildable, abstractmo, exitnode, pathmanager, track, meta, fixedlocation, relativelocation, controllerfacade, rendergraph, pluginadapter, explicitplacement, auto, glrender, arender, renderstate, label, nodecreatertool, projector, interpolator, paramprovider, mask, mobject, source, frame, effect, buildertool, segmentationtool, link, parameter, renderengine, glbuf, procnode, stateproxy, edl, fixture, glpipe, main, conmanager, clip, vrender, placement, sessionimpl, builderfacade, aframe, assembler, trafo

+

executable associated with : effect, buildertool, segmentationtool, link, parameter, renderengine, glbuf, procnode, stateproxy, edl, fixture, glpipe, main, conmanager, clip, vrender, placement, sessionimpl, builderfacade, aframe, assembler, trafo, allocation, vframe, toolfactory, hub, buildable, abstractmo, exitnode, pathmanager, track, meta, fixedlocation, relativelocation, controllerfacade, rendergraph, pluginadapter, explicitplacement, auto, glrender, arender, renderstate, label, nodecreatertool, projector, interpolator, paramprovider, mask, mobject, source, frame

Artifact main

Stereotype: source

@@ -949,8 +949,11 @@ undo

2.3 Package MObject

+ +

2.3.1 Package Session

+
-

2.3.1 Class View Session

+

2.3.1.1 Class View Session parts

@@ -987,17 +990,56 @@ undo + +

2.3.1.2 Class View Object ref

+
+ +

+

MObjectRef



+
+
Class Id
+
Class LuidH
+
+
+ +

2.3.1.3 Class View Datastructure

+
+ +

+

Session backbone



+
+
Class Sequence
+
Class Binding
+
+
+ +

2.3.2 Package Placement

+
+ +

2.3.2.1 Class View Scopes

+
+ +

+

Focus of Query



+
Class Scope
+
Class ScopePath
+
+
+
+
+
+
-

2.3.2 Package Builder

+

2.3.3 Package Builder

-

2.3.2.1 Class View Builder Workings

+

2.3.3.1 Class View Builder Workings

build process



This figure shows the process of building and starting a RenderEngine

-

2.3.2.1.1 Activity building the Engine

+

2.3.3.1.1 Activity building the Engine

Pre Condition :

    Post Condition :

      @@ -1011,7 +1053,7 @@ undo

      Defined in building the Engine

      Pre Condition :

        Post Condition :

          Behavior :

            Flow <flow>

            From configure Tools To fork activity node

            Weight :

              Guard :

                Selection :

                  Transformation :

                    -

                    2.3.2.1.1.1 Expansion region establish partitioning

                    +

                    2.3.3.1.1.1 Expansion region establish partitioning

                    Opaque activity action define segment
                    @@ -1038,7 +1080,7 @@ undo

                    Defined in building the Engine

                    Flow <flow>

                    From fork activity node To segment Tool

                    Weight :

                      Guard :

                        Selection :

                          Transformation :

                            Flow <flow>

                            From fork activity node To build Tool

                            Weight :

                              Guard :

                                Selection :

                                  Transformation :

                                    -

                                    2.3.2.1.1.2 Expansion region build Processors

                                    +

                                    2.3.3.1.1.2 Expansion region build Processors

                                    Activity object build Tool
                                    @@ -1086,7 +1128,7 @@ undo
                                    -

                                    2.3.3 Use Case View config examples

                                    +

                                    2.3.4 Use Case View config examples

                                    @@ -1503,8 +1545,18 @@ undo
                                    Class instance predicate impl

                                    type :TypeHandler

                                    + +

                                    5.4 Package Containers

                                    +
                                    + +

                                    5.4.1 Class View Custom holders

                                    +
                                    +
                                    Class Handle
                                    +
                                    Class P
                                    +
                                    +
                                    -

                                    5.4 Class View error

                                    +

                                    5.5 Class View error

                                    @@ -1518,7 +1570,7 @@ undo -

                                    5.5 Class View Service Components

                                    +

                                    5.6 Class View Service Components

                                    Class Tool
                                    @@ -1528,7 +1580,7 @@ undo
                                    Class Appconfig
                                    -

                                    5.6 Class View Posix Threads Abstraction

                                    +

                                    5.7 Class View Posix Threads Abstraction

                                    C++ wrapers for pthreads

                                    Class Thread
                                    @@ -1536,9 +1588,10 @@ undo
                                    Class Mutex
                                    -

                                    5.7 Class View SmartPointers

                                    +

                                    5.8 Class View SmartPointers

                                    +
                                    diff --git a/doc/devel/uml/index_60.html b/doc/devel/uml/index_60.html index ab6befaf1..d00995e12 100644 --- a/doc/devel/uml/index_60.html +++ b/doc/devel/uml/index_60.html @@ -17,8 +17,8 @@ - + @@ -28,8 +28,8 @@ - + @@ -45,20 +45,20 @@ + - - - - - - + - - + + + + + +
                                    NameKindDescription
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <flow>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    <transition>transition
                                    diff --git a/doc/devel/uml/index_65.html b/doc/devel/uml/index_65.html index 38dfaced6..25d659f38 100644 --- a/doc/devel/uml/index_65.html +++ b/doc/devel/uml/index_65.html @@ -60,9 +60,9 @@ aud_aclass instance aud_Aclass instance audioclass instance +audio1class instance audio1class instance audio1class instance -audio1class instance autoartifactMedia Object holding automation data AutoclassAutomation data for some parameter (i.e. a time varying function) Automation Entitiesclass diagram diff --git a/doc/devel/uml/index_66.html b/doc/devel/uml/index_66.html index 2788567d7..36ad84a5e 100644 --- a/doc/devel/uml/index_66.html +++ b/doc/devel/uml/index_66.html @@ -23,6 +23,7 @@ backend-componentscomponent diagram BackendCacheclass BackendLayerpackage +Bindingclass BuffHandleclass BuffTableclass buildoperation diff --git a/doc/devel/uml/index_67.html b/doc/devel/uml/index_67.html index a8a98a5d6..693346ea5 100644 --- a/doc/devel/uml/index_67.html +++ b/doc/devel/uml/index_67.html @@ -29,44 +29,44 @@ Categoryclasstree like classification of Assets categoryartifacttree like classification of Assets causeattributea copy of the first exception encountered in this exception chain -chainoperationcreate and add another Placement for this media object, thus increasingly constraining the (possible) position of this object. chainrelationChain of additional Placements further constraining the position of this MObject +chainoperationcreate and add another Placement for this media object, thus increasingly constraining the (possible) position of this object. checked_inrelationchecked_in objects are subject of cache aging and must be not in use checked_outrelationthis list keeps all mappings which are in use, and thus prevents them from Cache aging choice pseudo statechoice pseudo state -class instanceclass instance class instanceclass instance -class instanceclass instance -class instanceclass instance -class instanceclass instance -class instanceclass instance class instanceclass instance class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance class instanceclass instance class instanceclass instance -class instanceclass instance -class instanceclass instance -class instanceclass instance -class instanceclass instance +class instanceclass instance +class instanceclass instance class instanceclass instance -class instanceclass instance -class instanceclass instance -class instanceclass instance class instanceclass instance -class instanceclass instance -class instanceclass instance class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance class instanceclass instance class instanceclass instance -class instanceclass instance +class instanceclass instance +class instanceclass instance +class instanceclass instance class instanceclass instance -class instanceclass instance -class instanceclass instance clearoperationclear current session contents
                                    without resetting overall session config.
                                    Afterwards, the session will contain only one
                                    empty EDL, while all Assets are retained.
                                    client codecomponent Clipclassbookkeeping (asset) view of a media clip. -clipartifactbookkeeping (asset) view of a media clip. clipartifacta Media Clip +clipartifactbookkeeping (asset) view of a media clip. Clipclass clipsrelation closureattribute @@ -109,6 +109,7 @@ connectopaque activity action constraintartifactLocatingPin representing an directive by the user that
                                    must not be violated Constraintclass +Containerspackage controlpackagesourcecode package

                                    The Processing and Render Controller,
                                    and the Proc-Layer dispatcher ControlpackageCommand handling, Proc-Layer dispatcher, controller and administrative facilities Controllercomponent @@ -124,6 +125,7 @@ currentclass instance currentrelationStandard access path to get at the current session via the Session Manager, which acts as a "PImpl" smart pointer currFramerelation +Custom holdersclass view diff --git a/doc/devel/uml/index_68.html b/doc/devel/uml/index_68.html index 580695e3a..9866cde59 100644 --- a/doc/devel/uml/index_68.html +++ b/doc/devel/uml/index_68.html @@ -20,6 +20,7 @@ Datasetclassmeta asset describing a collection of control data datasetartifactmeta asset describing a collection of control data datasrcrelationThe predecessor in a processing pipeline, i.e. a source to get data to be processed +Datastructureclass view DBclassImplementation of the registry holding all Asset instances known to the Asset Manager subsystem. As of 8/2007 implemented by a hashtable. dbartifactregistry holding known Asset instances. defaultsrelation diff --git a/doc/devel/uml/index_69.html b/doc/devel/uml/index_69.html index 3c4e4f7af..0c6f365e7 100644 --- a/doc/devel/uml/index_69.html +++ b/doc/devel/uml/index_69.html @@ -23,8 +23,8 @@ EDL Example2object diagramMore complex example showing the Object graph in the EDL and how it is linked into the Fixture to yield the actual locations. In this example, an HUE Effect is applied on a part of the Clip edlsrelation EffectclassEffect or media processing component -effectartifactEDL representation of a pluggable and automatable effect. effectartifactEffect or media processing component +effectartifactEDL representation of a pluggable and automatable effect. Effectclass effective timeline (Fixture)node effectiveTimelinerelation diff --git a/doc/devel/uml/index_70.html b/doc/devel/uml/index_70.html index 93fe59aa1..e177ed876 100644 --- a/doc/devel/uml/index_70.html +++ b/doc/devel/uml/index_70.html @@ -39,9 +39,10 @@ fixtureartifactthe (low level) representation of the EDL with concrete placement data Fixturecomponent Fixtureclass +Focus of Queryclass diagram fork activity nodefork activity node -fork pseudo statefork pseudo state fork pseudo statefork pseudo state +fork pseudo statefork pseudo state FrameclassFrames are just a low level lump of continous memory, most parts are opaque. Frames are memory sensitive, they will be small constant sized structures which can be efficently managed in a pool. Framenode FrameclassTODO: how to relate to Cehteh's Frame entity in the Backend?
                                    The latter is the fundamental Frame entity, wheras this Object rather represents a buffer set containing frame date diff --git a/doc/devel/uml/index_72.html b/doc/devel/uml/index_72.html index 7356cb17f..2d011b5a4 100644 --- a/doc/devel/uml/index_72.html +++ b/doc/devel/uml/index_72.html @@ -17,6 +17,7 @@ + @@ -24,8 +25,8 @@ - +
                                    NameKindDescription
                                    Handleclass
                                    handlerelationweak pointer
                                    handlesrelation
                                    handles_availableattributeinitialized to the maximum number of filehandles the backend may use for mapped files. When no handles are available, the handle which is last in the handles list is closed and (re-)used.
                                    Else this number is decremented for each new filehandle used and incremented for any one explicitly freed.
                                    Hierarchyclass diagramLumiera Exception hierarchy
                                    howtoProcoperation@return descriptor how to build a render pipeline corresponding to this media
                                    hubartifactspecial ProcNode used to build data distributing connections
                                    HUEclass instance
                                    HUEclass instance
                                    HUEclass instance
                                    diff --git a/doc/devel/uml/index_73.html b/doc/devel/uml/index_73.html index 1e264158e..6fa319735 100644 --- a/doc/devel/uml/index_73.html +++ b/doc/devel/uml/index_73.html @@ -20,12 +20,14 @@ idattributeAsset primary key. IDattribute IDentry point pseudo state +Idclass +id_relation ImplFacadeclass In Memory Databaseclass diagram inFixtureactivity action pin -inputclass instance -inputclass instance inputclass instance +inputclass instance +inputclass instance instanceoperation InstanceHandleclass instructionsrelation diff --git a/doc/devel/uml/index_76.html b/doc/devel/uml/index_76.html index bdd59ab29..3eaed2f2b 100644 --- a/doc/devel/uml/index_76.html +++ b/doc/devel/uml/index_76.html @@ -34,6 +34,7 @@ Lockclass Logicclass longDescattributeuser visible qualification of the thing, unit or concept represented by this asset. perferably "in one line". To be localized. +LuidHclass Lumieraartifactthe main executable to be built lumierapackage diff --git a/doc/devel/uml/index_77.html b/doc/devel/uml/index_77.html index bef78819f..908bede9a 100644 --- a/doc/devel/uml/index_77.html +++ b/doc/devel/uml/index_77.html @@ -34,13 +34,15 @@ MediaKindclass merge activity nodemerge activity node Metaclasskey abstraction: metadata and organisational asset -metaartifactkey abstraction: metadata and organisational asset metaartifactabstract base class of all MObjects representing meta data or processing instructions +metaartifactkey abstraction: metadata and organisational asset Metaclass mobjectartifactKey Abstraction: A Media Object in the Session mobjectpackagesourcecode package

                                    MObject Subsystem
                                    including the Session (EDL), Builder and Processing Controller MObjectpackage MObjectclass +MObjectRefclass diagram +MObjectRefclass Monitorclass multichannel clipobject diagram Mutationclass diff --git a/doc/devel/uml/index_79.html b/doc/devel/uml/index_79.html index 0f0da521d..c557cd0be 100644 --- a/doc/devel/uml/index_79.html +++ b/doc/devel/uml/index_79.html @@ -17,11 +17,12 @@ + - + diff --git a/doc/devel/uml/index_80.html b/doc/devel/uml/index_80.html index fc2fcf572..738c03906 100644 --- a/doc/devel/uml/index_80.html +++ b/doc/devel/uml/index_80.html @@ -17,6 +17,7 @@
                                    NameKindDescription
                                    Object refclass view
                                    offsetattributeOffset the actual position by this (time) value relative to the anchor point. TODO: Representation?
                                    OperationBaseclass
                                    orgattributeorigin or authorship id. Can be a project abbreviation, a package id or just the authors nickname or UID. This allows for the compnent name to be more generic (e.g. "blur"). Default for all assets provided by the core Lumiera codebase is "lumi".
                                    ouputclass instance
                                    ouputclass instance
                                    ouputclass instance
                                    ouputclass instance
                                    outPortrelationthe Port this MObject wants to be conected to
                                    Overviewcomponent diagramThis drawing shows the top level compoents and relations
                                    + @@ -25,6 +26,7 @@ + @@ -32,7 +34,10 @@ + + + @@ -47,6 +52,7 @@ + diff --git a/doc/devel/uml/index_81.html b/doc/devel/uml/index_81.html index 6367201fd..7668e971e 100644 --- a/doc/devel/uml/index_81.html +++ b/doc/devel/uml/index_81.html @@ -21,8 +21,11 @@ + + +
                                    NameKindDescription
                                    Pclass
                                    paramrelation
                                    ParamAccessorclass
                                    parameterartifactrepresentation of an automatable effect/plugin parameter
                                    ParamProviderclassA facility to get the actual value of a plugin/effect parameter
                                    paramsrelation
                                    paramsrelation
                                    path_relation
                                    PathManagerclassWhile building a render engine, this Strategy class decides on the actual render strategy in accordance to the current controller settings (system state)
                                    pathmanagerartifactManager for deciding the actual render strategy
                                    Pipeclassstructural asset representing a basic building block within the high level model: a port for building a processing chain and generating media output
                                    pipesrelation
                                    pipesrelationthe global ports (busses) of the session
                                    placementartifactKey Abstraction: a way to place and locate a Media Object
                                    Placementpackage
                                    Placementclassused to specify the position of a MObject in the EDL. This can be done in various ways (absolute, relative).
                                    Placement at the same time acts as (refcounting) smart pointer for accessing the MObject.
                                    PlacementIndexclass
                                    PlacementRefclass
                                    playoperationTODO: will probably be handled differently (see Cehteh)
                                    PlayControlclass
                                    PlayheadCursorclass
                                    Posix Threads Abstractionclass viewC++ wrapers for pthreads
                                    predecessorsrelation
                                    predicate implclass instance
                                    pRef_relation
                                    Prefetchclass
                                    Previewclassalternative version of the media data, probably with lower resolution
                                    previewartifactalternative version of the media data, probably with lower resolution
                                    Query System overviewcomponent view
                                    query useuse case view
                                    QueryCacheclass
                                    QueryFocusclass
                                    QueryFocusStackclass
                                    QueryHandlerclass
                                    QueryHandlerImplclass
                                    QueryResolverclass
                                    diff --git a/doc/devel/uml/index_83.html b/doc/devel/uml/index_83.html index fa8dc7579..93f76635f 100644 --- a/doc/devel/uml/index_83.html +++ b/doc/devel/uml/index_83.html @@ -20,6 +20,11 @@ SAMETIMEattributeplace subject at the sime time as the anchor saveoperationcreate a complete, serialized representation
                                    of the current session config and contents.
                                    @todo how to serialize, prameters, return value? Schedulerclass +Scopeclass +ScopeLocatorclass +ScopePathclass +Scopesclass view +scopesrelation scratchstate segmentartifactSegment of the Timeline.
                                    Used at the moment (7/07) for partitioning the timeline/fixture into segments
                                    to be rendered by a specialized render node network for each, without the need
                                    to change any connections within a given segment.
                                    Note this concept may be superfluos alltogether; is a draft and the real
                                    use still needs to be worked out... Segmentclass @@ -31,15 +36,18 @@ segmentsactivity object segmentsrelationthe partitioning of the Timeline to be created by this tool. Seqclass +Sequenceclass Sequenceclass Serializerclass Service Componentsclass view ServiceImplclass Sessioncomponent sessionartifactInterface: the session edited by the user -Sessionclass view sessionpackagesourcecode package

                                    Everything concerning the EDL and Session, within the MObject Subsystem +Sessionpackage SessionclassPrimary Interface for all editing tasks.
                                    The session contains defaults, all the assets being edited, and a set of EDL with the individual MObjects to be manipulated and rendered. +Session backboneclass diagram +Session partsclass view Session structureclass diagram sessionimplartifactholds the complete session data to be edited by the user SessionImplclassImplementation class for the Session interface @@ -47,6 +55,7 @@ SessManagerclass setup Build Paramsopaque activity action setup StateProxyopaque activity action +shared_ptrclass shortDescattributeuser visible Name-ID. To be localized. simpleclipartifactElementary clip (single media stream only) SimpleClipclassElementary clip consisting of only one media stream @@ -63,15 +72,15 @@ Statenode Stateclass staterelation -state actionstate action -state actionstate action +state actionstate action state actionstate action state actionstate action +state actionstate action +state actionstate action +state actionstate action state actionstate actiontry to fetch existing definition -state actionstate action state actionstate action state actionstate action -state actionstate action StateAdapterclass StateAdapter compositionclass diagram StateProxyclass diff --git a/doc/devel/uml/index_84.html b/doc/devel/uml/index_84.html index ea6b9d69e..33624b8dd 100644 --- a/doc/devel/uml/index_84.html +++ b/doc/devel/uml/index_84.html @@ -34,8 +34,8 @@ Trackclassstructural asset holding the configuration of a track in the EDL trackattribute trackrelation -trackartifactA grouping device within the EDL. The corresponding Placement
                                    by which this Track object is refered defines fallback placing
                                    properties to be used by all objects placed on this track in
                                    case they don't specify more concrete placements.
                                    Typically, tracks are used do make default Port connections,
                                    define a layer or pan for sound and for for disabling groups
                                    of clips. Note tracks are grouped in a tree like fashion.
                                    trackartifactstructural asset holding the configuration of a track in the EDL +trackartifactA grouping device within the EDL. The corresponding Placement
                                    by which this Track object is refered defines fallback placing
                                    properties to be used by all objects placed on this track in
                                    case they don't specify more concrete placements.
                                    Typically, tracks are used do make default Port connections,
                                    define a layer or pan for sound and for for disabling groups
                                    of clips. Note tracks are grouped in a tree like fashion.
                                    trackrelation Trackclass tracksrelationelementary media assets comprising this compound @@ -44,13 +44,13 @@ trafoartifacttransforming processing Node treatoperation treatoperationThis operation is to be overloaded for the specific MObject subclasses to be treated. -treatoperation -treatoperation treatoperation treatoperation -treatoperation -treatoperation +treatoperation +treatoperation treatoperation +treatoperation +treatoperation TypeHandlerclass TypeHandler<Pipe>class diff --git a/doc/devel/uml/index_86.html b/doc/devel/uml/index_86.html index 85cc3a896..3c3999692 100644 --- a/doc/devel/uml/index_86.html +++ b/doc/devel/uml/index_86.html @@ -22,10 +22,10 @@ vframeartifacta buffer and render process holding a Video frame vid1class instance vid_Aclass instance -vid_Aclass instance -vid_aclass instance -vid_aclass instance vid_Aclass instance +vid_aclass instance +vid_aclass instance +vid_Aclass instance videoclass instance videoclass instance videoclass instance @@ -33,9 +33,9 @@ video1class instance video1class instance video1class instance -video1class instance video1class instance video1class instance +video1class instance Visitableclass visitorpackagesub-namespace for visitor library implementation visitorartifactAcyclic Visitor library diff --git a/doc/devel/uml/packages.html b/doc/devel/uml/packages.html index 7b039a400..8b63a59fb 100644 --- a/doc/devel/uml/packages.html +++ b/doc/devel/uml/packages.html @@ -20,12 +20,13 @@ Asset backendsrcsourcecode package

                                    Data backend classes here... BackendLayer -Builder buildersrcsourcecode package

                                    The Builder creating the Render Engine,
                                    located within the MObject Subsystem +Builder codegenThis package is used to organize code generation by BOUML. It is considered useless after having generated the initial code skeleton. commonsrcsourcecode package

                                    Common library and helper classes CommonLib ConfigQuery +Containers controlsrcsourcecode package

                                    The Processing and Render Controller,
                                    and the Proc-Layer dispatcher ControlCommand handling, Proc-Layer dispatcher, controller and administrative facilities design @@ -37,10 +38,12 @@ lumiera mobjectsrcsourcecode package

                                    MObject Subsystem
                                    including the Session (EDL), Builder and Processing Controller MObject +Placement procsrcsourcecode package

                                    All classes belonging to the (middle) processing layer ProcessingLayer RenderEngine sessionsrcsourcecode package

                                    Everything concerning the EDL and Session, within the MObject Subsystem +Session toolsrcsourcecode package

                                    Tools and Utilities
                                    (separate from the main cinelrra binary) visitorsub-namespace for visitor library implementation diff --git a/uml/lumiera/128261 b/uml/lumiera/128261 index 87b5544e9..699fc9f00 100644 --- a/uml/lumiera/128261 +++ b/uml/lumiera/128261 @@ -1,6 +1,6 @@ format 58 "MObject" // ProcessingLayer::MObject - revision 37 + revision 38 modified_by 5 "hiv" // class settings //class diagram settings @@ -26,1413 +26,9 @@ format 58 package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default show_infonote default drawing_language default show_stereotype_properties default - classview 128005 "Session" - //class diagram settings - draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default - //collaboration diagram settings - show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default - //object diagram settings - write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default - //sequence diagram settings - show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default - //state diagram settings - package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default - show_activities default region_horizontally default drawing_language default show_stereotype_properties default - //class settings - //activity diagram settings - package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default - show_infonote default drawing_language default show_stereotype_properties default - classdiagram 128133 "Session structure" - draw_all_relations no hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default - size A4 - end + package_ref 132229 // Session - class 139653 "Session" - abstract visibility public - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Primary Interface for all editing tasks. -The session contains defaults, all the assets being edited, and a set of EDL with the individual MObjects to be manipulated and rendered." - operation 133509 "currEDL" - public return_type class_ref 128133 // Seq - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "The EDL currently in focus. In most cases, Session and EDL are almost the same, just EDL emphasizes the collection aspect. But generally (for larger editing projects) one Session can contain several EDLs, which may even be nested. At any given time, only one of these EDLs has focus and recieves the editing commands." - end - - operation 133637 "getFixture" - public explicit_return_type "Fixture&" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "While the session can be comprised of several EDLs, -there is only one Fixture, which represents the actual -configuration of all Objects to be rendered" - end - - classrelation 144773 // current () - relation 142853 ---> - a role_name "current" multiplicity "1" class_relation public - comment "Standard access path to get at the current session via the Session Manager, which acts as a \"PImpl\" smart pointer" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}& ${name}${value}; -" - classrelation_ref 144773 // current () - b parent class_ref 139781 // SessManager - end - - classrelation 150917 // defaults () - relation 148101 ---> - a role_name "defaults" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 150917 // defaults () - b parent class_ref 141445 // DefaultsManager - end - end - - class 128005 "SessionImpl" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Implementation class for the Session interface" - classrelation 128005 // edls () - relation 128005 *--> - a role_name "edls" multiplicity "1..*" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value}; -" - classrelation_ref 128005 // edls () - b parent class_ref 128133 // Seq - end - - classrelation 128261 // theFixture () - relation 128133 ---> - a role_name "theFixture" multiplicity "1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value}; -" - classrelation_ref 128261 // theFixture () - b parent class_ref 128261 // Fixture - end - - classrelation 144645 // - relation 142725 -_-|> - stereotype "PImpl" - a public - cpp default "${type}" - classrelation_ref 144645 // - b parent class_ref 139653 // Session - end - - classrelation 147717 // pipes () - relation 145541 o--> - stereotype "vector" - a role_name "pipes" multiplicity "*" protected - comment "the global ports (busses) of the session" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 147717 // pipes () - b parent class_ref 138117 // Pipe - end - end - - class 139781 "SessManager" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - operation 133765 "clear" - public explicit_return_type "void" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "clear current session contents -without resetting overall session config. -Afterwards, the session will contain only one -empty EDL, while all Assets are retained. -" - end - - operation 133893 "reset" - public explicit_return_type "void" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "reset all session config and -start with a pristine default session." - end - - operation 134021 "load" - public explicit_return_type "void" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "replace the current session by a new -session loaded from serialized state." - end - - operation 134149 "save" - public explicit_return_type "void" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "create a complete, serialized representation -of the current session config and contents. -@todo how to serialize, prameters, return value?" - end - end - - class 145541 "Timeline" - abstract visibility public - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 159109 // - relation_ref 154885 // - end - - classrelation 159237 // - relation 155013 ---> - stereotype "own" - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 159237 // - b parent class_ref 145925 // PlayControl - end - - classrelation 159621 // - relation 155269 ---> - a role_name "" multiplicity "1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 159621 // - b parent class_ref 146309 // Sequence - end - - classrelation 160005 // globalBusses () - relation 155653 *--> - stereotype "list" - a role_name "globalBusses" multiplicity "*" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - classrelation_ref 160005 // globalBusses () - b multiplicity "1" parent class_ref 138117 // Pipe - end - end - - class 145797 "TimelineView" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 158853 // - relation 154757 -_-|> - a public - cpp default "${type}" - classrelation_ref 158853 // - b parent class_ref 145541 // Timeline - end - - classrelation 159749 // - relation 155397 ---> - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 159749 // - b parent class_ref 146309 // Sequence - end - - classrelation 160773 // - relation 156293 ---- - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 160773 // - b role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 160901 // - end - end - - class 128133 "Seq" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 128901 // clips () - relation 128517 o--> - stereotype "list" - a role_name "clips" multiplicity "*" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value}; -" - classrelation_ref 128901 // clips () - b parent class_ref 128517 // MObject - end - - classrelation 147333 // track () - relation 145157 ---> - a role_name "track" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 147333 // track () - b parent class_ref 128389 // Track - association_type class_ref 128645 // Placement - end - end - - class 128261 "Fixture" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 128517 // - relation 128261 ---|> - a public - cpp default "${type}" - classrelation_ref 128517 // - b parent class_ref 128133 // Seq - end - - classrelation 131717 // effectiveTimeline () - relation 131077 *--> - stereotype "list" - a role_name "effectiveTimeline" multiplicity "*" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - classrelation_ref 131717 // effectiveTimeline () - b parent class_ref 129797 // ExplicitPlacement - end - - operation 128645 "getPlaylistForRender" - public explicit_return_type "list" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - end - - operation 129157 "getAutomation" - public explicit_return_type "Auto [ProcessingLayer::MObject]*" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - end - - classrelation 147589 // track () - relation 145413 ---> - a role_name "track" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 147589 // track () - b parent class_ref 128389 // Track - association_type class_ref 128645 // Placement - end - - classrelation 163333 // - relation_ref 158213 // - end - end - - class 147333 "Segmentation" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 163205 // - relation 158213 ---- - stereotype "partitioning" - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 163205 // - b role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 163333 // - end - end - - class 135173 "Segment" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - attribute 129925 "start" - protected type class_ref 134917 // Time - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - end - - attribute 130053 "length" - protected type class_ref 134917 // Time - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "duration (span) of this timeline segment." - end - - classrelation 138885 // elements () - relation 137093 o--> - stereotype "list" - a role_name "elements" multiplicity "*" protected - comment "relevant MObjects comprising this segment. TODO: actually necessary??" - cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value}; -" - classrelation_ref 138885 // elements () - b parent class_ref 129797 // ExplicitPlacement - end - - classrelation 163589 // - relation 158469 ---> - stereotype "correspondance" - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 163589 // - b parent class_ref 131461 // RenderGraph - end - end - - class 128389 "Track" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - associated_diagram classdiagram_ref 128133 // Session structure - classrelation 147077 // - relation 144901 ---|> - a public - cpp default "${type}" - classrelation_ref 147077 // - b parent class_ref 129157 // Meta - end - - classrelation 147205 // subTracks () - relation 145029 *--> - stereotype "vector" - a role_name "subTracks" multiplicity "*" public - comment "Child tracks in a tree structure" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - classrelation_ref 147205 // subTracks () - b parent class_ref 128389 // Track - association_type class_ref 128645 // Placement - end - - classrelation 161413 // - relation 156805 -_-|> - a public - cpp default "${type}" - classrelation_ref 161413 // - b parent class_ref 128517 // MObject - end - end - - class 128517 "MObject" - abstract visibility public stereotype "interface" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "${comment}${@}${visibility}interface ${name}${extends} { -${members}} -" - php_decl "" - python_2_2 python_decl "" - idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { -${members}}; -" - explicit_switch_type "" - - attribute 128517 "length" - protected type class_ref 134917 // Time - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "TODO: how to represent time intervals?" - end - - classrelation 137093 // - relation 135557 ---|> - a public - cpp default "${type}" - classrelation_ref 137093 // - b parent class_ref 134021 // Buildable - end - end - - class 128645 "Placement" - abstract visibility public stereotype "interface" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "${comment}${@}${visibility}interface ${name}${extends} { -${members}} -" - php_decl "" - python_2_2 python_decl "" - idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { -${members}}; -" - explicit_switch_type "" - - comment "used to specify the position of a MObject in the EDL. This can be done in various ways (absolute, relative). -Placement at the same time acts as (refcounting) smart pointer for accessing the MObject." - operation 128005 "resolve" - public explicit_return_type "ExplicitPlacement [ProcessingLayer::MObject]&" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "create an actual (explicit) placement while trying to satisfy the network of adjacent objects and placements." - end - - classrelation 144901 // subject () - relation 142981 ---> - a role_name "subject" multiplicity "1" protected - comment "Placement acts as smart pointer" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 144901 // subject () - b multiplicity "1..*" parent class_ref 128517 // MObject - end - - operation 134277 "chain" - public explicit_return_type "" - nparams 1 - param in name "style" explicit_type "" - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}const ${t0}& ${p0}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}const ${t0}& ${p0}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - comment "create and add another Placement for this media object, thus increasingly constraining the (possible) position of this object." - end - - classrelation 145413 // chain () - relation 143237 ---> - a role_name "chain" multiplicity "1" protected - comment "Chain of additional Placements further constraining the position of this MObject" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 145413 // chain () - b parent class_ref 139909 // LocatingPin - end - end - - class 129797 "ExplicitPlacement" - abstract visibility public stereotype "interface" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "${comment}${@}${visibility}interface ${name}${extends} { -${members}} -" - php_decl "" - python_2_2 python_decl "" - idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { -${members}}; -" - explicit_switch_type "" - - classrelation 131589 // - relation 130949 ---|> - a public - cpp default "${type}" - classrelation_ref 131589 // - b parent class_ref 128645 // Placement - end - - attribute 128261 "time" - protected type class_ref 134917 // Time - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - end - - attribute 128389 "track" - protected explicit_type "Track [ProcessingLayer::MObject] *" - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - end - - classrelation 131845 // - relation 131205 ---> - a role_name "" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 131845 // - b parent class_ref 128389 // Track - association_type class_ref 128389 // Track - end - end - - class 128773 "AbstractMO" - abstract visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 129925 // - relation 129285 ---|> - a public - cpp default "${type}" - classrelation_ref 129925 // - b parent class_ref 128517 // MObject - end - end - - class 128901 "Clip" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 130053 // - relation 129413 ---|> - a public - cpp default "${type}" - classrelation_ref 130053 // - b parent class_ref 128773 // AbstractMO - end - - classrelation 142469 // source () - relation 140677 ---> - a role_name "source" multiplicity "1" protected - comment "the media source this clip referes to" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 142469 // source () - b multiplicity "*" parent class_ref 136709 // Media - end - - classrelation 161029 // - relation 156421 -_-|> - a public - cpp default "${type}" - classrelation_ref 161029 // - b parent class_ref 128517 // MObject - end - end - - class 138885 "SimpleClip" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Elementary clip consisting of only one media stream" - classrelation 143365 // - relation 141445 ---|> - a public - cpp default "${type}" - classrelation_ref 143365 // - b parent class_ref 128901 // Clip - end - end - - class 138629 "CompoundClip" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - associated_diagram classdiagram_ref 128133 // Session structure - comment "Clip MObject which is actually a compound of several elementary clips, -e.g. the several streams found within multichannels media." - classrelation 142597 // - relation 140805 ---|> - a public - cpp default "${type}" - classrelation_ref 142597 // - b parent class_ref 128901 // Clip - end - - classrelation 143493 // components () - relation 141573 o--> - a role_name "components" multiplicity "1..*" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 143493 // components () - b multiplicity "*" parent class_ref 128901 // Clip - end - end - - class 129029 "Effect" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 130181 // - relation 129541 ---|> - a public - cpp default "${type}" - classrelation_ref 130181 // - b parent class_ref 128773 // AbstractMO - end - - attribute 128901 "plugin" - protected explicit_type "string" - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "Identifier of the Plugin to be used" - end - - classrelation 161157 // - relation 156549 -_-|> - a public - cpp default "${type}" - classrelation_ref 161157 // - b parent class_ref 128517 // MObject - end - end - - class 129157 "Meta" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 130309 // - relation 129669 ---|> - a public - cpp default "${type}" - classrelation_ref 130309 // - b parent class_ref 128773 // AbstractMO - end - end - - class 129285 "FixedLocation" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 145797 // - relation 143621 ---|> - a public - cpp default "${type}" - classrelation_ref 145797 // - b parent class_ref 139909 // LocatingPin - end - end - - class 129413 "RelativeLocation" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 130565 // anchor () - relation 129925 ---> - a role_name "anchor" multiplicity "1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 130565 // anchor () - b multiplicity "1" parent class_ref 128517 // MObject - association_type class_ref 128517 // MObject - end - - attribute 128133 "relType" - protected type class_ref 133893 // RelType - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "the kind of relation denoted by this Placement" - end - - attribute 129029 "offset" - protected type class_ref 134917 // Time - init_value "0" - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "Offset the actual position by this (time) value relative to the anchor point. TODO: Representation?" - end - - class 133893 "RelType" - visibility public stereotype "enum" - cpp_decl "${comment}enum ${name} - { -${items} - }; -" - java_decl "${comment}${@}${visibility}${final}${abstract}enum ${name}${implements} { -${items}; -${members}} -" - php_decl "" - python_2_2 python_decl "" - idl_decl "${comment}enum ${name} { -${items}}; -" - explicit_switch_type "" - - comment "the possible kinds of RelativePlacements" - attribute 129157 "SAMETIME" - public explicit_type "" - cpp_decl " ${name}${value}, ${comment}" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "place subject at the sime time as the anchor" - end - - attribute 129285 "ATTACH" - public explicit_type "" - cpp_decl " ${name}${value}, ${comment}" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - comment "attach subject to anchor (e.g. an effect to a clip)" - end - end - - classrelation 145669 // - relation 143493 ---|> - a public - cpp default "${type}" - classrelation_ref 145669 // - b parent class_ref 139909 // LocatingPin - end - end - - class 129541 "Allocation" - abstract visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "a directive to place a MObject in a specific way" - attribute 128773 "repr" - protected explicit_type "string" - cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; -" - java_decl "" - php_decl "" - python_decl "" - idl_decl "" - get_oper operation_ref 131205 // get_repr - comment "human readable representation of the condition characterizing this allocaton, e.g. \"t >= 10\"" - end - - operation 131205 "get_repr" - const cpp_inline public explicit_return_type "string" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}const ${type} ${name} ${(}${)}${const}${volatile} ${throw};" - cpp_def "${comment}${inline}const ${type} ${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - return repr; -} - -" - cpp_name_spec "get${Name}" - final - java_name_spec "get${Name}" - - - - idl_name_spec "get_${name}" - get_of_attribute attribute_ref 128773 // repr - end - - classrelation 145925 // - relation 143749 ---|> - a public - cpp default "${type}" - classrelation_ref 145925 // - b parent class_ref 139909 // LocatingPin - end - end - - class 129669 "Label" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 130949 // - relation 130309 ---|> - a public - cpp default "${type}" - classrelation_ref 130949 // - b parent class_ref 129157 // Meta - end - - classrelation 161285 // - relation 156677 -_-|> - a public - cpp default "${type}" - classrelation_ref 161285 // - b parent class_ref 128517 // MObject - end - end - - class 129925 "Auto" - visibility package - nformals 1 - formal name "VAL" type "class" explicit_default_value "" - explicit_extends "" - nactuals 1 - actual class class_ref 134661 // ParamProvider - rank 0 explicit_value "VAL" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Automation data for some parameter (i.e. a time varying function)" - classrelation 131973 // - relation 131333 ---|> - a public - cpp default "${type}" - classrelation_ref 131973 // - b parent class_ref 129157 // Meta - end - - classrelation 138501 // - relation 136837 -_-|> - a public - cpp default "${type}" - classrelation_ref 138501 // - b parent class_ref 134661 // ParamProvider - end - - operation 131077 "getValue" - const public explicit_return_type "VAL" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - end - end - - class 130053 "Wish" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 132101 // - relation 131461 ---|> - a public - cpp default "${type}" - classrelation_ref 132101 // - b parent class_ref 129541 // Allocation - end - end - - class 130181 "Constraint" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 132357 // - relation 131717 ---|> - a public - cpp default "${type}" - classrelation_ref 132357 // - b parent class_ref 129541 // Allocation - end - end - - class 140421 "Plug" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - classrelation 147845 // - relation 145669 ---|> - a public - cpp default "${type}" - classrelation_ref 147845 // - b parent class_ref 130053 // Wish - end - - classrelation 147973 // outPort () - relation 145797 ---> - a role_name "outPort" protected - comment "the Port this MObject wants to be conected to" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 147973 // outPort () - b parent class_ref 138117 // Pipe - end - end - - class 134533 "Parameter" - visibility public - nformals 1 - formal name "VAL" type "class" explicit_default_value "" - explicit_extends "" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Descriptor and access object for a plugin parameter. Parameters may be provided with values from the session, and this values may be automated." - operation 130821 "getValue" - const public explicit_return_type "VAL" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - end - - classrelation 138245 // - relation 136581 -_-> - stereotype "implemented_by" - a package - cpp default "#include in source" - classrelation_ref 138245 // - b parent class_ref 134661 // ParamProvider - end - - classrelation 138629 // - relation_ref 136325 // - end - end - - class 134661 "ParamProvider" - abstract visibility public stereotype "interface" - nformals 1 - formal name "VAL" type "class" explicit_default_value "" - explicit_extends "" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "${comment}${@}${visibility}interface ${name}${extends} { -${members}} -" - php_decl "" - python_2_2 python_decl "" - idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { -${members}}; -" - explicit_switch_type "" - - comment "A facility to get the actual value of a plugin/effect parameter" - classrelation 137989 // param () - relation 136325 ---- - a role_name "param" multiplicity "1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 137989 // param () - b role_name "provider" multiplicity "1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 138629 // - end - - classrelation 138373 // ipo () - relation 136709 ---> - a role_name "ipo" multiplicity "0..1" protected - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 138373 // ipo () - b parent class_ref 134789 // Interpolator - end - - operation 130949 "getValue" - const public explicit_return_type "VAL" - nparams 0 - cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" - cpp_def "${comment}${inline}${type} -${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} -{ - ${body} -} - -" - - - - - end - end - - class 134789 "Interpolator" - visibility package - nformals 1 - formal name "VAL" type "class" explicit_default_value "" - explicit_extends "" - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "Provides the implementation for getting the acutal value of a time varying or automated effect/plugin parameter" - end - - class 139909 "LocatingPin" - visibility package - cpp_decl "${comment}${template}class ${name}${inherit} - { -${members} }; -${inlines} -" - java_decl "" - php_decl "" - python_2_2 python_decl "" - idl_decl "" - explicit_switch_type "" - - comment "An element with value semantics, which actually implements the placement of some MObject by positioning it in some way." - classrelation 146053 // next () - relation 143877 ---> - a role_name "next" protected - comment "next additional LocatingPin, if any" - cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; -" - classrelation_ref 146053 // next () - b parent class_ref 139909 // LocatingPin - end - end - end + package_ref 132357 // Placement package_ref 128901 // Builder diff --git a/uml/lumiera/128517 b/uml/lumiera/128517 index d88352c6d..057be77a3 100644 --- a/uml/lumiera/128517 +++ b/uml/lumiera/128517 @@ -1,6 +1,6 @@ format 58 "CommonLib" // CommonLib - revision 15 + revision 16 modified_by 5 "hiv" // class settings //class diagram settings @@ -352,6 +352,8 @@ ${items}}; package_ref 131077 // ConfigQuery + package_ref 132485 // Containers + classview 128773 "error" //class diagram settings draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default @@ -936,5 +938,20 @@ ${members}}; explicit_switch_type "" end + + class 153093 "shared_ptr" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end end end diff --git a/uml/lumiera/132229 b/uml/lumiera/132229 new file mode 100644 index 000000000..e3e0d4b38 --- /dev/null +++ b/uml/lumiera/132229 @@ -0,0 +1,1668 @@ +format 58 +"Session" // ProcessingLayer::MObject::Session + revision 1 + modified_by 5 "hiv" + // class settings + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //use case diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default class_drawing_mode default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //component diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //deployment diagram settings + package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + + classview 128005 "Session parts" + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //class settings + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + classdiagram 128133 "Session structure" + draw_all_relations no hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + size A4 + end + + class 139653 "Session" + abstract visibility public + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Primary Interface for all editing tasks. +The session contains defaults, all the assets being edited, and a set of EDL with the individual MObjects to be manipulated and rendered." + operation 133509 "currEDL" + public return_type class_ref 128133 // Seq + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "The EDL currently in focus. In most cases, Session and EDL are almost the same, just EDL emphasizes the collection aspect. But generally (for larger editing projects) one Session can contain several EDLs, which may even be nested. At any given time, only one of these EDLs has focus and recieves the editing commands." + end + + operation 133637 "getFixture" + public explicit_return_type "Fixture&" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "While the session can be comprised of several EDLs, +there is only one Fixture, which represents the actual +configuration of all Objects to be rendered" + end + + classrelation 144773 // current () + relation 142853 ---> + a role_name "current" multiplicity "1" class_relation public + comment "Standard access path to get at the current session via the Session Manager, which acts as a \"PImpl\" smart pointer" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}& ${name}${value}; +" + classrelation_ref 144773 // current () + b parent class_ref 139781 // SessManager + end + + classrelation 150917 // defaults () + relation 148101 ---> + a role_name "defaults" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 150917 // defaults () + b parent class_ref 141445 // DefaultsManager + end + end + + class 128005 "SessionImpl" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Implementation class for the Session interface" + classrelation 128005 // edls () + relation 128005 *--> + a role_name "edls" multiplicity "1..*" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value}; +" + classrelation_ref 128005 // edls () + b parent class_ref 128133 // Seq + end + + classrelation 128261 // theFixture () + relation 128133 ---> + a role_name "theFixture" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} * ${name}${value}; +" + classrelation_ref 128261 // theFixture () + b parent class_ref 128261 // Fixture + end + + classrelation 144645 // + relation 142725 -_-|> + stereotype "PImpl" + a public + cpp default "${type}" + classrelation_ref 144645 // + b parent class_ref 139653 // Session + end + + classrelation 147717 // pipes () + relation 145541 o--> + stereotype "vector" + a role_name "pipes" multiplicity "*" protected + comment "the global ports (busses) of the session" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 147717 // pipes () + b parent class_ref 138117 // Pipe + end + end + + class 139781 "SessManager" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + operation 133765 "clear" + public explicit_return_type "void" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "clear current session contents +without resetting overall session config. +Afterwards, the session will contain only one +empty EDL, while all Assets are retained. +" + end + + operation 133893 "reset" + public explicit_return_type "void" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "reset all session config and +start with a pristine default session." + end + + operation 134021 "load" + public explicit_return_type "void" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "replace the current session by a new +session loaded from serialized state." + end + + operation 134149 "save" + public explicit_return_type "void" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "create a complete, serialized representation +of the current session config and contents. +@todo how to serialize, prameters, return value?" + end + end + + class 145541 "Timeline" + abstract visibility public + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 159109 // + relation_ref 154885 // + end + + classrelation 159237 // + relation 155013 ---> + stereotype "own" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 159237 // + b parent class_ref 145925 // PlayControl + end + + classrelation 159621 // + relation 155269 ---> + a role_name "" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 159621 // + b parent class_ref 146309 // Sequence + end + + classrelation 160005 // globalBusses () + relation 155653 *--> + stereotype "list" + a role_name "globalBusses" multiplicity "*" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + classrelation_ref 160005 // globalBusses () + b multiplicity "1" parent class_ref 138117 // Pipe + end + end + + class 145797 "TimelineView" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 158853 // + relation 154757 -_-|> + a public + cpp default "${type}" + classrelation_ref 158853 // + b parent class_ref 145541 // Timeline + end + + classrelation 159749 // + relation 155397 ---> + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 159749 // + b parent class_ref 146309 // Sequence + end + + classrelation 160773 // + relation 156293 ---- + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 160773 // + b role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 160901 // + end + end + + class 128133 "Seq" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 128901 // clips () + relation 128517 o--> + stereotype "list" + a role_name "clips" multiplicity "*" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value}; +" + classrelation_ref 128901 // clips () + b parent class_ref 128517 // MObject + end + + classrelation 147333 // track () + relation 145157 ---> + a role_name "track" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 147333 // track () + b parent class_ref 128389 // Track + association_type class_ref 128645 // Placement + end + end + + class 128261 "Fixture" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 128517 // + relation 128261 ---|> + a public + cpp default "${type}" + classrelation_ref 128517 // + b parent class_ref 128133 // Seq + end + + classrelation 131717 // effectiveTimeline () + relation 131077 *--> + stereotype "list" + a role_name "effectiveTimeline" multiplicity "*" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + classrelation_ref 131717 // effectiveTimeline () + b parent class_ref 129797 // ExplicitPlacement + end + + operation 128645 "getPlaylistForRender" + public explicit_return_type "list" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + end + + operation 129157 "getAutomation" + public explicit_return_type "Auto [ProcessingLayer::MObject]*" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + end + + classrelation 147589 // track () + relation 145413 ---> + a role_name "track" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 147589 // track () + b parent class_ref 128389 // Track + association_type class_ref 128645 // Placement + end + + classrelation 163333 // + relation_ref 158213 // + end + end + + class 147333 "Segmentation" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 163205 // + relation 158213 ---- + stereotype "partitioning" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 163205 // + b role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 163333 // + end + end + + class 135173 "Segment" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + attribute 129925 "start" + protected type class_ref 134917 // Time + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + end + + attribute 130053 "length" + protected type class_ref 134917 // Time + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "duration (span) of this timeline segment." + end + + classrelation 138885 // elements () + relation 137093 o--> + stereotype "list" + a role_name "elements" multiplicity "*" protected + comment "relevant MObjects comprising this segment. TODO: actually necessary??" + cpp default " ${comment}${static}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value}; +" + classrelation_ref 138885 // elements () + b parent class_ref 129797 // ExplicitPlacement + end + + classrelation 163589 // + relation 158469 ---> + stereotype "correspondance" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 163589 // + b parent class_ref 131461 // RenderGraph + end + end + + class 128389 "Track" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + associated_diagram classdiagram_ref 128133 // Session structure + classrelation 147077 // + relation 144901 ---|> + a public + cpp default "${type}" + classrelation_ref 147077 // + b parent class_ref 129157 // Meta + end + + classrelation 147205 // subTracks () + relation 145029 *--> + stereotype "vector" + a role_name "subTracks" multiplicity "*" public + comment "Child tracks in a tree structure" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + classrelation_ref 147205 // subTracks () + b parent class_ref 128389 // Track + association_type class_ref 128645 // Placement + end + + classrelation 161413 // + relation 156805 -_-|> + a public + cpp default "${type}" + classrelation_ref 161413 // + b parent class_ref 128517 // MObject + end + end + + class 128517 "MObject" + abstract visibility public stereotype "interface" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "${comment}${@}${visibility}interface ${name}${extends} { +${members}} +" + php_decl "" + python_2_2 python_decl "" + idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { +${members}}; +" + explicit_switch_type "" + + attribute 128517 "length" + protected type class_ref 134917 // Time + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "TODO: how to represent time intervals?" + end + + classrelation 137093 // + relation 135557 ---|> + a public + cpp default "${type}" + classrelation_ref 137093 // + b parent class_ref 134021 // Buildable + end + end + + class 128645 "Placement" + abstract visibility public stereotype "interface" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "${comment}${@}${visibility}interface ${name}${extends} { +${members}} +" + php_decl "" + python_2_2 python_decl "" + idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { +${members}}; +" + explicit_switch_type "" + + comment "used to specify the position of a MObject in the EDL. This can be done in various ways (absolute, relative). +Placement at the same time acts as (refcounting) smart pointer for accessing the MObject." + operation 128005 "resolve" + public explicit_return_type "ExplicitPlacement [ProcessingLayer::MObject]&" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "create an actual (explicit) placement while trying to satisfy the network of adjacent objects and placements." + end + + classrelation 144901 // subject () + relation 142981 ---> + a role_name "subject" multiplicity "1" protected + comment "Placement acts as smart pointer" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 144901 // subject () + b multiplicity "1..*" parent class_ref 128517 // MObject + end + + operation 134277 "chain" + public explicit_return_type "" + nparams 1 + param in name "style" explicit_type "" + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}const ${t0}& ${p0}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}const ${t0}& ${p0}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + comment "create and add another Placement for this media object, thus increasingly constraining the (possible) position of this object." + end + + classrelation 145413 // chain () + relation 143237 ---> + a role_name "chain" multiplicity "1" protected + comment "Chain of additional Placements further constraining the position of this MObject" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 145413 // chain () + b parent class_ref 139909 // LocatingPin + end + + classrelation 176773 // + relation 166789 ---> + stereotype "has_a" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 176773 // + b parent class_ref 152581 // Id + end + + classrelation 178053 // + relation 168069 -_-> + stereotype "belongs_into" + a package + cpp default "#include in source" + classrelation_ref 178053 // + b parent class_ref 153349 // Scope + end + end + + class 129797 "ExplicitPlacement" + abstract visibility public stereotype "interface" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "${comment}${@}${visibility}interface ${name}${extends} { +${members}} +" + php_decl "" + python_2_2 python_decl "" + idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { +${members}}; +" + explicit_switch_type "" + + classrelation 131589 // + relation 130949 ---|> + a public + cpp default "${type}" + classrelation_ref 131589 // + b parent class_ref 128645 // Placement + end + + attribute 128261 "time" + protected type class_ref 134917 // Time + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + end + + attribute 128389 "track" + protected explicit_type "Track [ProcessingLayer::MObject] *" + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + end + + classrelation 131845 // + relation 131205 ---> + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 131845 // + b parent class_ref 128389 // Track + association_type class_ref 128389 // Track + end + end + + class 128773 "AbstractMO" + abstract visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 129925 // + relation 129285 ---|> + a public + cpp default "${type}" + classrelation_ref 129925 // + b parent class_ref 128517 // MObject + end + end + + class 128901 "Clip" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 130053 // + relation 129413 ---|> + a public + cpp default "${type}" + classrelation_ref 130053 // + b parent class_ref 128773 // AbstractMO + end + + classrelation 142469 // source () + relation 140677 ---> + a role_name "source" multiplicity "1" protected + comment "the media source this clip referes to" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 142469 // source () + b multiplicity "*" parent class_ref 136709 // Media + end + + classrelation 161029 // + relation 156421 -_-|> + a public + cpp default "${type}" + classrelation_ref 161029 // + b parent class_ref 128517 // MObject + end + end + + class 138885 "SimpleClip" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Elementary clip consisting of only one media stream" + classrelation 143365 // + relation 141445 ---|> + a public + cpp default "${type}" + classrelation_ref 143365 // + b parent class_ref 128901 // Clip + end + end + + class 138629 "CompoundClip" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + associated_diagram classdiagram_ref 128133 // Session structure + comment "Clip MObject which is actually a compound of several elementary clips, +e.g. the several streams found within multichannels media." + classrelation 142597 // + relation 140805 ---|> + a public + cpp default "${type}" + classrelation_ref 142597 // + b parent class_ref 128901 // Clip + end + + classrelation 143493 // components () + relation 141573 o--> + a role_name "components" multiplicity "1..*" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 143493 // components () + b multiplicity "*" parent class_ref 128901 // Clip + end + end + + class 129029 "Effect" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 130181 // + relation 129541 ---|> + a public + cpp default "${type}" + classrelation_ref 130181 // + b parent class_ref 128773 // AbstractMO + end + + attribute 128901 "plugin" + protected explicit_type "string" + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "Identifier of the Plugin to be used" + end + + classrelation 161157 // + relation 156549 -_-|> + a public + cpp default "${type}" + classrelation_ref 161157 // + b parent class_ref 128517 // MObject + end + end + + class 129157 "Meta" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 130309 // + relation 129669 ---|> + a public + cpp default "${type}" + classrelation_ref 130309 // + b parent class_ref 128773 // AbstractMO + end + end + + class 129285 "FixedLocation" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 145797 // + relation 143621 ---|> + a public + cpp default "${type}" + classrelation_ref 145797 // + b parent class_ref 139909 // LocatingPin + end + end + + class 129413 "RelativeLocation" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 130565 // anchor () + relation 129925 ---> + a role_name "anchor" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 130565 // anchor () + b multiplicity "1" parent class_ref 128517 // MObject + association_type class_ref 128517 // MObject + end + + attribute 128133 "relType" + protected type class_ref 133893 // RelType + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "the kind of relation denoted by this Placement" + end + + attribute 129029 "offset" + protected type class_ref 134917 // Time + init_value "0" + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "Offset the actual position by this (time) value relative to the anchor point. TODO: Representation?" + end + + class 133893 "RelType" + visibility public stereotype "enum" + cpp_decl "${comment}enum ${name} + { +${items} + }; +" + java_decl "${comment}${@}${visibility}${final}${abstract}enum ${name}${implements} { +${items}; +${members}} +" + php_decl "" + python_2_2 python_decl "" + idl_decl "${comment}enum ${name} { +${items}}; +" + explicit_switch_type "" + + comment "the possible kinds of RelativePlacements" + attribute 129157 "SAMETIME" + public explicit_type "" + cpp_decl " ${name}${value}, ${comment}" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "place subject at the sime time as the anchor" + end + + attribute 129285 "ATTACH" + public explicit_type "" + cpp_decl " ${name}${value}, ${comment}" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + comment "attach subject to anchor (e.g. an effect to a clip)" + end + end + + classrelation 145669 // + relation 143493 ---|> + a public + cpp default "${type}" + classrelation_ref 145669 // + b parent class_ref 139909 // LocatingPin + end + end + + class 129541 "Allocation" + abstract visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "a directive to place a MObject in a specific way" + attribute 128773 "repr" + protected explicit_type "string" + cpp_decl " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + java_decl "" + php_decl "" + python_decl "" + idl_decl "" + get_oper operation_ref 131205 // get_repr + comment "human readable representation of the condition characterizing this allocaton, e.g. \"t >= 10\"" + end + + operation 131205 "get_repr" + const cpp_inline public explicit_return_type "string" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}const ${type} ${name} ${(}${)}${const}${volatile} ${throw};" + cpp_def "${comment}${inline}const ${type} ${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + return repr; +} + +" + cpp_name_spec "get${Name}" + final + java_name_spec "get${Name}" + + + + idl_name_spec "get_${name}" + get_of_attribute attribute_ref 128773 // repr + end + + classrelation 145925 // + relation 143749 ---|> + a public + cpp default "${type}" + classrelation_ref 145925 // + b parent class_ref 139909 // LocatingPin + end + end + + class 129669 "Label" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 130949 // + relation 130309 ---|> + a public + cpp default "${type}" + classrelation_ref 130949 // + b parent class_ref 129157 // Meta + end + + classrelation 161285 // + relation 156677 -_-|> + a public + cpp default "${type}" + classrelation_ref 161285 // + b parent class_ref 128517 // MObject + end + end + + class 129925 "Auto" + visibility package + nformals 1 + formal name "VAL" type "class" explicit_default_value "" + explicit_extends "" + nactuals 1 + actual class class_ref 134661 // ParamProvider + rank 0 explicit_value "VAL" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Automation data for some parameter (i.e. a time varying function)" + classrelation 131973 // + relation 131333 ---|> + a public + cpp default "${type}" + classrelation_ref 131973 // + b parent class_ref 129157 // Meta + end + + classrelation 138501 // + relation 136837 -_-|> + a public + cpp default "${type}" + classrelation_ref 138501 // + b parent class_ref 134661 // ParamProvider + end + + operation 131077 "getValue" + const public explicit_return_type "VAL" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + end + end + + class 130053 "Wish" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 132101 // + relation 131461 ---|> + a public + cpp default "${type}" + classrelation_ref 132101 // + b parent class_ref 129541 // Allocation + end + end + + class 130181 "Constraint" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 132357 // + relation 131717 ---|> + a public + cpp default "${type}" + classrelation_ref 132357 // + b parent class_ref 129541 // Allocation + end + end + + class 140421 "Plug" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 147845 // + relation 145669 ---|> + a public + cpp default "${type}" + classrelation_ref 147845 // + b parent class_ref 130053 // Wish + end + + classrelation 147973 // outPort () + relation 145797 ---> + a role_name "outPort" protected + comment "the Port this MObject wants to be conected to" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 147973 // outPort () + b parent class_ref 138117 // Pipe + end + end + + class 134533 "Parameter" + visibility public + nformals 1 + formal name "VAL" type "class" explicit_default_value "" + explicit_extends "" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Descriptor and access object for a plugin parameter. Parameters may be provided with values from the session, and this values may be automated." + operation 130821 "getValue" + const public explicit_return_type "VAL" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + end + + classrelation 138245 // + relation 136581 -_-> + stereotype "implemented_by" + a package + cpp default "#include in source" + classrelation_ref 138245 // + b parent class_ref 134661 // ParamProvider + end + + classrelation 138629 // + relation_ref 136325 // + end + end + + class 134661 "ParamProvider" + abstract visibility public stereotype "interface" + nformals 1 + formal name "VAL" type "class" explicit_default_value "" + explicit_extends "" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "${comment}${@}${visibility}interface ${name}${extends} { +${members}} +" + php_decl "" + python_2_2 python_decl "" + idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { +${members}}; +" + explicit_switch_type "" + + comment "A facility to get the actual value of a plugin/effect parameter" + classrelation 137989 // param () + relation 136325 ---- + a role_name "param" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 137989 // param () + b role_name "provider" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 138629 // + end + + classrelation 138373 // ipo () + relation 136709 ---> + a role_name "ipo" multiplicity "0..1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 138373 // ipo () + b parent class_ref 134789 // Interpolator + end + + operation 130949 "getValue" + const public explicit_return_type "VAL" + nparams 0 + cpp_decl " ${comment}${friend}${static}${inline}${virtual}${type} ${name} ${(}${)}${const}${volatile} ${throw}${abstract};" + cpp_def "${comment}${inline}${type} +${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} +{ + ${body} +} + +" + + + + + end + end + + class 134789 "Interpolator" + visibility package + nformals 1 + formal name "VAL" type "class" explicit_default_value "" + explicit_extends "" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "Provides the implementation for getting the acutal value of a time varying or automated effect/plugin parameter" + end + + class 139909 "LocatingPin" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + comment "An element with value semantics, which actually implements the placement of some MObject by positioning it in some way." + classrelation 146053 // next () + relation 143877 ---> + a role_name "next" protected + comment "next additional LocatingPin, if any" + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 146053 // next () + b parent class_ref 139909 // LocatingPin + end + end + end + + classview 131973 "Object ref" + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //class settings + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + classdiagram 136581 "MObjectRef" + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + size A4 + end + + class 152453 "PlacementRef" + visibility package + nformals 1 + formal name "MO" type "class" explicit_default_value "" + explicit_extends "" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 176901 // id_ () + relation 166917 ---> + stereotype "holds" + a role_name "id_" multiplicity "1" private + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 176901 // id_ () + b multiplicity "*" parent class_ref 152581 // Id + end + + classrelation 177029 // + relation 167045 -_-> + stereotype "uses" + a package + cpp default "#include in source" + classrelation_ref 177029 // + b parent class_ref 152069 // PlacementIndex + end + end + + class 152581 "Id" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 176645 // + relation 166661 ---|> + a public + cpp default "${type}" + classrelation_ref 176645 // + b parent class_ref 152709 // LuidH + end + end + + class 152709 "LuidH" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end + + class 152837 "MObjectRef" + visibility package + nformals 1 + formal name "MO" type "class" explicit_default_value "" + explicit_extends "" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 177157 // + relation 167173 ---|> + a public + cpp default "${type}" + classrelation_ref 177157 // + b parent class_ref 152965 // Handle + end + + classrelation 177285 // pRef_ () + relation 167301 ---> + stereotype "holds" + a role_name "pRef_" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 177285 // pRef_ () + b multiplicity "*" parent class_ref 152453 // PlacementRef + end + + classrelation 177413 // + relation 167429 -_-> + stereotype "denotes" + a package + cpp default "#include in source" + classrelation_ref 177413 // + b parent class_ref 128517 // MObject + end + end + end + + classview 132101 "Datastructure" + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //class settings + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + classdiagram 136453 "Session backbone" + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + size A4 + end + + class 152069 "PlacementIndex" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 178437 // + relation 168453 -_-|> + a public + cpp default "${type}" + classrelation_ref 178437 // + b parent class_ref 153989 // QueryResolver + end + end + + class 152197 "Sequence" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end + + class 152325 "Binding" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end + end +end diff --git a/uml/lumiera/132357 b/uml/lumiera/132357 new file mode 100644 index 000000000..ef09856d3 --- /dev/null +++ b/uml/lumiera/132357 @@ -0,0 +1,209 @@ +format 58 +"Placement" // ProcessingLayer::MObject::Placement + revision 1 + modified_by 5 "hiv" + // class settings + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //use case diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default class_drawing_mode default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //component diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //deployment diagram settings + package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + + classview 131845 "Scopes" + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //class settings + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + classdiagram 136325 "Focus of Query" + draw_all_relations no hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + size A4 + end + + class 153349 "Scope" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 177541 // + relation 167557 ---> + stereotype "holds" + a role_name "" multiplicity "1" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 177541 // + b multiplicity "1" parent class_ref 152453 // PlacementRef + end + end + + class 153477 "ScopePath" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 177669 // path_ () + relation 167685 *--> + stereotype "vector" + a role_name "path_" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + classrelation_ref 177669 // path_ () + b parent class_ref 153349 // Scope + end + end + + class 153605 "QueryFocus" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 177797 // scopes () + relation 167813 ---> + stereotype "has_a" + a role_name "scopes" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 177797 // scopes () + b parent class_ref 153477 // ScopePath + end + end + + class 153733 "QueryFocusStack" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 177925 // + relation 167941 *--> + stereotype "vector" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type} ${name}${value}; +" + classrelation_ref 177925 // + b parent class_ref 153605 // QueryFocus + end + end + + class 153861 "ScopeLocator" + visibility package stereotype "singleton" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + classrelation 178181 // + relation 168197 ---> + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 178181 // + b parent class_ref 153733 // QueryFocusStack + end + + classrelation 178309 // + relation 168325 -_-> + stereotype "resolves" + a package + cpp default "#include in source" + classrelation_ref 178309 // + b parent class_ref 153349 // Scope + end + + classrelation 178565 // + relation 168581 ---> + stereotype "use" + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 178565 // + b parent class_ref 153989 // QueryResolver + end + end + + class 153989 "QueryResolver" + visibility package stereotype "interface" + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "${comment}${@}${visibility}interface ${name}${extends} { +${members}} +" + php_decl "${comment}${visibility}interface ${name} { +${members}} +" + python_2_2 python_decl "" + idl_decl "${comment}${abstract}${local}interface ${name}${inherit} { +${members}}; +" + explicit_switch_type "" + + end + end +end diff --git a/uml/lumiera/132485 b/uml/lumiera/132485 new file mode 100644 index 000000000..099d2b342 --- /dev/null +++ b/uml/lumiera/132485 @@ -0,0 +1,75 @@ +format 58 +"Containers" // CommonLib::Containers + revision 1 + modified_by 5 "hiv" + // class settings + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //use case diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default class_drawing_mode default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //component diagram settings + package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //deployment diagram settings + package_name_in_tab default show_context default write_horizontally default auto_label_position default draw_all_relations default shadow default + draw_component_as_icon default show_component_req_prov default show_component_rea default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + + classview 132229 "Custom holders" + //class diagram settings + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + //collaboration diagram settings + show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default show_stereotype_properties default + //object diagram settings + write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default show_stereotype_properties default + //sequence diagram settings + show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default show_stereotype_properties default + //state diagram settings + package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default + show_activities default region_horizontally default drawing_language default show_stereotype_properties default + //class settings + //activity diagram settings + package_name_in_tab default show_context default show_opaque_action_definition default auto_label_position default write_flow_label_horizontally default draw_all_relations default shadow default + show_infonote default drawing_language default show_stereotype_properties default + class 152965 "Handle" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end + + class 153221 "P" + visibility package + cpp_decl "${comment}${template}class ${name}${inherit} + { +${members} }; +${inlines} +" + java_decl "" + php_decl "" + python_2_2 python_decl "" + idl_decl "" + explicit_switch_type "" + + end + end +end diff --git a/uml/lumiera/136325.diagram b/uml/lumiera/136325.diagram new file mode 100644 index 000000000..5b265342a --- /dev/null +++ b/uml/lumiera/136325.diagram @@ -0,0 +1,100 @@ +format 58 + +classcanvas 128005 class_ref 128645 // Placement + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 197 345 2005 +end +classcanvas 128133 class_ref 152453 // PlacementRef + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 345 205 2005 +end +classcanvas 128261 class_ref 153349 // Scope + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 214 212 2000 +end +classcanvas 128517 class_ref 153477 // ScopePath + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 46 212 2000 +end +classcanvas 128773 class_ref 153605 // QueryFocus + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 42 140 2000 +end +classcanvas 129029 class_ref 153733 // QueryFocusStack + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 114 77 2000 +end +classcanvas 129413 class_ref 152069 // PlacementIndex + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 340 345 2004 +end +note 129669 "actually +implemented through" + xyzwh 250 303 2000 131 50 +classcanvas 129797 class_ref 153861 // ScopeLocator + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 196 17 2000 +end +classcanvas 130437 class_ref 153989 // QueryResolver + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 452 107 2000 +end +note 131333 "this connection is established by the current session" + xyzwh 361 39 2000 158 47 +relationcanvas 128389 relation_ref 167557 // + from ref 128261 z 1999 stereotype "<>" xyz 277 231 3000 to ref 128133 + no_role_a no_role_b + multiplicity_a_pos 328 237 3000 multiplicity_b_pos 268 237 3000 +end +relationcanvas 128645 relation_ref 167685 // + from ref 128517 z 1999 stereotype "<>" xyz 135 231 3000 to ref 128261 + role_a_pos 176 214 3000 no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 128901 relation_ref 167813 // + from ref 128773 z 1999 stereotype "<>" xyz 49 181 3000 to ref 128517 + role_a_pos 86 195 3000 no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 129157 relation_ref 167941 // + geometry VHr + from ref 129029 z 1999 stereotype "<>" xyz 51 80 3000 to point 76 94 + line 129925 z 1999 to ref 128773 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 129285 relation_ref 168069 // + from ref 128005 z 1999 stereotype "<>" xyz 193 286 3000 to ref 128261 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 129541 relation_ref 167045 // + from ref 128133 z 1999 stereotype "<>" xyz 361 289 3000 to ref 129413 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 130053 relation_ref 168197 // + geometry VHr + from ref 129797 z 1999 to point 162 43 + line 130181 z 1999 to ref 129029 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 130309 relation_ref 168325 // + from ref 129797 z 1999 stereotype "<>" xyz 237 141 3000 to ref 128261 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 130949 relation_ref 168453 // + from ref 129413 z 1999 to point 493 261 + line 131077 z 1999 to ref 130437 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 131205 relation_ref 168581 // + from ref 129797 z 1999 stereotype "<>" xyz 339 91 3000 to ref 130437 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +preferred_whz 582 515 1 +end diff --git a/uml/lumiera/136453.diagram b/uml/lumiera/136453.diagram new file mode 100644 index 000000000..a1452d45b --- /dev/null +++ b/uml/lumiera/136453.diagram @@ -0,0 +1,19 @@ +format 58 + +classcanvas 128005 class_ref 152069 // PlacementIndex + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 484 147 2000 +end +classcanvas 128261 class_ref 145541 // Timeline + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 84 95 2000 +end +classcanvas 129029 class_ref 152197 // Sequence + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 161 252 2000 +end +classcanvas 129157 class_ref 152325 // Binding + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 124 175 2000 +end +end diff --git a/uml/lumiera/136581.diagram b/uml/lumiera/136581.diagram new file mode 100644 index 000000000..4fb73ba2c --- /dev/null +++ b/uml/lumiera/136581.diagram @@ -0,0 +1,76 @@ +format 58 + +classcanvas 128005 class_ref 152069 // PlacementIndex + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 573 402 2000 +end +classcanvas 128133 class_ref 152453 // PlacementRef + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 382 396 2000 +end +classcanvas 128389 class_ref 128645 // Placement + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 286 209 2000 +end +classcanvas 128517 class_ref 152581 // Id + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 464 231 2000 +end +classcanvas 128645 class_ref 152709 // LuidH + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 464 169 2000 +end +classcanvas 129413 class_ref 128517 // MObject + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 119 73 3005 +end +classcanvas 129669 class_ref 152837 // MObjectRef + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 195 395 2000 +end +classcanvas 129797 class_ref 152965 // Handle + draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_members_multiplicity default show_members_initialization default member_max_width 0 show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default show_stereotype_properties default + xyz 205 327 2000 +end +relationcanvas 128773 relation_ref 166661 // + from ref 128517 z 1999 to ref 128645 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 128901 relation_ref 166789 // + from ref 128389 z 1999 stereotype "<>" xyz 386 250 3000 to ref 128517 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 129157 relation_ref 166917 // + from ref 128133 z 1999 stereotype "<>" xyz 430 332 3000 to ref 128517 + role_a_pos 486 275 3000 no_role_b + multiplicity_a_pos 460 275 3000 multiplicity_b_pos 419 378 3000 +end +relationcanvas 129285 relation_ref 167045 // + from ref 128133 z 1999 stereotype "<>" xyz 493 420 3000 to ref 128005 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 129541 relation_ref 142981 // + from ref 128389 z 1999 to ref 129413 + role_a_pos 205 129 3000 no_role_b + multiplicity_a_pos 205 152 3000 multiplicity_b_pos 259 231 3000 +end +relationcanvas 129925 relation_ref 167173 // + from ref 129669 z 1999 to ref 129797 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 130309 relation_ref 167301 // + from ref 129669 z 1999 stereotype "<>" xyz 298 420 3000 to ref 128133 + role_a_pos 343 404 3000 no_role_b + multiplicity_a_pos 365 427 3000 multiplicity_b_pos 273 425 3000 +end +relationcanvas 130437 relation_ref 167429 // + from ref 129669 z 1999 stereotype "<>" xyz 89 273 3000 to point 154 346 + line 130565 z 1999 to ref 129413 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +end diff --git a/uml/lumiera/5.session b/uml/lumiera/5.session index 9d1a80e06..02e012c28 100644 --- a/uml/lumiera/5.session +++ b/uml/lumiera/5.session @@ -1,9 +1,11 @@ window_sizes 1302 1004 270 1022 856 71 diagrams - active classdiagram_ref 134021 // Command structure + classdiagram_ref 134021 // Command structure 575 622 100 4 0 0 - statediagram_ref 135173 // Command lifecycle - 349 682 100 4 0 0 + active classdiagram_ref 136325 // Focus of Query + 582 515 100 4 0 0 + classdiagram_ref 136581 // MObjectRef + 651 533 100 4 0 38 end show_stereotypes selected @@ -15,13 +17,17 @@ open package_ref 128133 // Asset classview_ref 128389 // Controller Workings - class_ref 148997 // CmdClosure - class_ref 150789 // Closure - pseudostate_ref 128133 // choice + classview_ref 128005 // Session parts + classview_ref 131973 // Object ref + class_ref 152069 // PlacementIndex + classview_ref 131845 // Scopes - package_ref 128261 // MObject + package_ref 128901 // Builder + usecaseview_ref 128261 // config examples classview_ref 128133 // Engine Workings classview_ref 129541 // InterfaceSystem classview_ref 129285 // StreamType + classview_ref 132229 // Custom holders + classview_ref 128266 // SmartPointers end end diff --git a/uml/lumiera/lumiera.prj b/uml/lumiera/lumiera.prj index 66d76596f..98d69abad 100644 --- a/uml/lumiera/lumiera.prj +++ b/uml/lumiera/lumiera.prj @@ -1,6 +1,6 @@ format 58 "lumiera" - revision 53 + revision 54 modified_by 5 "hiv" cpp_root_dir "../../src/" diff --git a/wiki/renderengine.html b/wiki/renderengine.html index 67ff846c8..6663337cb 100644 --- a/wiki/renderengine.html +++ b/wiki/renderengine.html @@ -2092,7 +2092,7 @@ The general idea is, that each facade interface actually provides access to a sp &rarr; [[overview of the MObject hierarchy|MObjects]]
                                    -
                                    +
                                    ''The Problem of referring to an [[MObject]]'' stems from the object //as a concept// encompassing a wider scope then just the current implementation instance. If the object was just a runtime entity in memory, we could use a simple (language) reference or pointer. Actually, this isn't sufficient, as the object reference will pass LayerSeparationInterfaces, will be handed over to code not written in the same implementation language, will be included in an ''UNDO'' record for the UndoManager, and thus will need to be serialized and stored permanently within the SessionStorage.
                                     Moreover [[MObject instances|MObject]] have a 2-level structure: the core object holds just the properties in a strict sense, i.e. the properties which the object //owns.// Any properties due to putting the object into a specific context, i.e. all relation properties are represented as [[Placement]] of the object. Thus, when viewed from the client side, a reference to a specific ~MObject //instance,// actually denotes a //specific//&nbsp; Placement of this object into the Session.
                                     
                                    @@ -2116,6 +2116,7 @@ Obviously, the second approach has quite some appeal &mdash; but, in order t
                                     
                                     !Implementation concept
                                     Presumably, none of the both models is usable as-is; rather we try to reconstruct the viable properties of both, starting out with the more elegant second model. Thus, basically the ''reference is a smart-ptr'' referring to the core object. Additionally, it incorporates a ''systematic ID denoting the location of the placement''. This ID without the smart-ptr part is used for the C-implementation, making the full handle implementation a shortcut for an access sequence, which first querries the placement from the Session, followed by dereferencing the placement to get at the core object. Thus, the implementation builds upon another abstraction, the &rarr; PlacementRef, which in turn assumes for an index within the implementation of the [[session datastructure|SessionDataMem]] to track and retrieve the actual Placement.
                                    +[img[Structure of MObjectRef and PlacementRef|uml/fig136581.png]]
                                     
                                     
                                     !using ~MObject references
                                    @@ -3381,7 +3382,7 @@ Viewed as a micro program, the processing patterns are ''weak typed'' &mdash
                                     
                                    a given Render Engine configuration is a list of Processors. Each Processor in turn contains a Graph of ProcNode.s to do the acutal data processing. In order to cary out any calculations, the Processor needs to be called with a StateProxy containing the state information for this RenderProcess
                                     
                                    -
                                    +
                                    When querying contents of the session or sub-containers within the session, the QueryFocus follows the current point-of-query. As such queries can be issued to explore the content of container-like objects holding other MObjects, the focus is always attached to a container, which also acts as [[scope|PlacementScope]] for the contained objects. QueryFocus is an implicit state (the current point of interrest). This sate especially remembers the path down from the root of the HighLevelModel, which was used to access the current scope. Because this path constitutes a hierarchy of scopes, it can be relevant for querying and resolving placement properties. (&rarr; SessionStructureQuery)
                                     
                                     !provided operations
                                    @@ -3390,6 +3391,7 @@ Viewed as a micro program, the processing patterns are ''weak typed'' &mdash
                                     * return (pop) to the previous focus
                                     * get the current scope, which is implemented as Placement
                                     * get the current ScopePath from root (session globals) down to the current scope
                                    +[>img[Scope Locating|uml/fig136325.png]]
                                     
                                     !implementation notes
                                     we provide a static access API, meaning that there is a singleton behind the scenes, which manages the mentioned scope stack. Moreover, there is an link to the current session. This link works by the current session grabbing the query focus and attaching to it. This attachment is shallow, i.e. the QueryFocus doesn't have knowledge about the session, which allows the focus to be unit tested.