diff --git a/doc/devel/uml/class152069.html b/doc/devel/uml/class152069.html index 5b8f8eee2..899872f11 100644 --- a/doc/devel/uml/class152069.html +++ b/doc/devel/uml/class152069.html @@ -18,5 +18,6 @@

Declaration :

+

All public operations : issue

diff --git a/doc/devel/uml/class153989.html b/doc/devel/uml/class153989.html index 2330627fd..f41ba6162 100644 --- a/doc/devel/uml/class153989.html +++ b/doc/devel/uml/class153989.html @@ -16,7 +16,13 @@ -

Declaration :

Directly inherited by : PlacementIndex

+

Declaration :

Directly inherited by : PlacementIndex ResolvingFacility

Stereotype: interface

+
+ +
Operation issue

Declaration :

+ +
Relation <unidirectional association>

Declaration :

+

All public operations : issue

diff --git a/doc/devel/uml/class155141.html b/doc/devel/uml/class155141.html new file mode 100644 index 000000000..21e3e2ab4 --- /dev/null +++ b/doc/devel/uml/class155141.html @@ -0,0 +1,25 @@ + + + + + + +Class Query + + + + + +
Class Query
+

+ + + + +

Declaration :

+
Class Cursor
+ +
Relation <unidirectional association>

Declaration :

Stereotype: type-def

+
+ + diff --git a/doc/devel/uml/class155269.html b/doc/devel/uml/class155269.html new file mode 100644 index 000000000..0465cbbe2 --- /dev/null +++ b/doc/devel/uml/class155269.html @@ -0,0 +1,23 @@ + + + + + + +Class Cursor + + + + + +
Class Cursor
+

+ + + + +

Declaration :

nested in Query

+
+
+ + diff --git a/doc/devel/uml/class155397.html b/doc/devel/uml/class155397.html new file mode 100644 index 000000000..79a851cef --- /dev/null +++ b/doc/devel/uml/class155397.html @@ -0,0 +1,24 @@ + + + + + + +Class IterAdapter + + + + + +
Class IterAdapter
+

+ + + + +

Declaration :

+ +
Relation source_ (<unidirectional association>)

Declaration :

+
Relation pos_ (<unidirectional association>)

Declaration :

+ + diff --git a/doc/devel/uml/class155525.html b/doc/devel/uml/class155525.html new file mode 100644 index 000000000..9549695c5 --- /dev/null +++ b/doc/devel/uml/class155525.html @@ -0,0 +1,25 @@ + + + + + + +Class ResolvingFacility + + + + + +
Class ResolvingFacility
+

+ + + + +

Declaration :

+ +
Relation <unidirectional association>

Declaration :

Stereotype: produce

+
+

All public operations : issue

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

+ + + + +

Declaration :

Directly inherited by : Query

+

Stereotype: interface

+
+
Class Result
+ +
Relation <unidirectional association>

Declaration :

+ + diff --git a/doc/devel/uml/class156933.html b/doc/devel/uml/class156933.html new file mode 100644 index 000000000..124edc599 --- /dev/null +++ b/doc/devel/uml/class156933.html @@ -0,0 +1,22 @@ + + + + + + +Class Result + + + + + +
Class Result
+

+ + + + +

Declaration :

Directly inherited by : Cursor

+

nested in Goal

+ + diff --git a/doc/devel/uml/class158085.html b/doc/devel/uml/class158085.html new file mode 100644 index 000000000..3c9c4d92a --- /dev/null +++ b/doc/devel/uml/class158085.html @@ -0,0 +1,23 @@ + + + + + + +Class ResultSet + + + + + +
Class ResultSet
+

+ + + + +

Declaration :

+
+

All public operations : isValid , nextResult

+ + diff --git a/doc/devel/uml/class159237.html b/doc/devel/uml/class159237.html new file mode 100644 index 000000000..b390ac9d6 --- /dev/null +++ b/doc/devel/uml/class159237.html @@ -0,0 +1,28 @@ + + + + + + +Class Resolution + + + + + +
Class Resolution
+

+ + + + +

Declaration :

Directly inherited by : ResultSet

+

nested in QueryResolver

+
+ +
Operation isValid

Declaration :

+
Operation nextResult

Declaration :

+
Relation <unidirectional association>

Declaration :

+

All public operations : isValid , nextResult

+ + diff --git a/doc/devel/uml/classdiagrams.html b/doc/devel/uml/classdiagrams.html index 522259723..73a9e7f73 100644 --- a/doc/devel/uml/classdiagrams.html +++ b/doc/devel/uml/classdiagrams.html @@ -31,6 +31,7 @@ Media-Asset Relations MObjectRef Proc-Asset Relations +Query Interface Render Entities Render Mechanics Rules access diff --git a/doc/devel/uml/classes.html b/doc/devel/uml/classes.html index a6a2fe704..7254ced2b 100644 --- a/doc/devel/uml/classes.html +++ b/doc/devel/uml/classes.html @@ -53,6 +53,7 @@ ConManagerConnection Manager, used to build the connections between render engine nodes, if these nodes need to cooperate besides the normal "data pull" operation. Esp., the Connection Manager knows how to wire up the effect's parameters with the corresponding ParamProviders (autmation) in the Session Constraint ControllerFacadeboundaryProvides unified access to the Proc-Subsystem Controller. Especially, this Facade class provides the functions to get a render engine to carry out actual renderings. +Cursor Datasetmeta asset describing a collection of control data DBImplementation of the registry holding all Asset instances known to the Asset Manager subsystem. As of 8/2007 implemented by a hashtable. DefaultsManager @@ -84,6 +85,7 @@ FrameDescriptorinterfaceA FrameDescriptor implements the higher level interfaces for frames. Further refinements are made by subclassing and policy classes FrameReference GLBuf +Goalinterface Handle HandlingPatterninterface Id @@ -92,6 +94,7 @@ InterpolatorProvides the implementation for getting the acutal value of a time varying or automated effect/plugin parameter Invalid Invocation +IterAdapter Label Link LocatingPinAn element with value semantics, which actually implements the placement of some MObject by positioning it in some way. @@ -139,6 +142,7 @@ Prototype Proxy PullInput +Query QueryCache QueryFocus QueryFocusStack @@ -153,7 +157,11 @@ RenderGraph RenderStateEncapsulates the logic used to get a "current render process" in accordance to the currentyl applicable controller settings. The provided StateProxy serves to hold any mutalbe state used in the render process, so the rest of the render engine can be stateless. RenderTask +Resolution ResolverBase +ResolvingFacility +Result +ResultSet Scheduler Scope ScopeLocatorsingleton diff --git a/doc/devel/uml/classes_list.html b/doc/devel/uml/classes_list.html index 2378c288f..ab8b6e948 100644 --- a/doc/devel/uml/classes_list.html +++ b/doc/devel/uml/classes_list.html @@ -54,6 +54,7 @@ ConManager
Constraint
ControllerFacade
+Cursor
Dataset
DB
DefaultsManager
@@ -85,6 +86,7 @@ FrameDescriptor
FrameReference
GLBuf
+Goal
Handle
HandlingPattern
Id
@@ -93,6 +95,7 @@ Interpolator
Invalid
Invocation
+IterAdapter
Label
Link
LocatingPin
@@ -140,6 +143,7 @@ Prototype
Proxy
PullInput
+Query
QueryCache
QueryFocus
QueryFocusStack
@@ -154,7 +158,11 @@ RenderGraph
RenderState
RenderTask
+Resolution
ResolverBase
+ResolvingFacility
+Result
+ResultSet
Scheduler
Scope
ScopeLocator
diff --git a/doc/devel/uml/fig137733.png b/doc/devel/uml/fig137733.png index 61b258961..df4eb2a81 100644 Binary files a/doc/devel/uml/fig137733.png and b/doc/devel/uml/fig137733.png differ diff --git a/doc/devel/uml/index.html b/doc/devel/uml/index.html index 89c2dc30a..a7d15c3ef 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 : 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, allocation, vframe, toolfactory, hub, buildable, abstractmo, exitnode, pathmanager, track, meta, fixedlocation, relativelocation, controllerfacade, rendergraph, pluginadapter

+

executable associated with : 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, effect, buildertool, segmentationtool, link, parameter, renderengine, glbuf, procnode, stateproxy, edl, fixture, glpipe, main, conmanager, clip, vrender, placement, sessionimpl, builderfacade

Artifact main

Stereotype: source

@@ -1026,7 +1026,6 @@ undo
-
@@ -1516,6 +1515,15 @@ undo
+ +

+

Query Interface



+
+
Class Goal
+
Class Query
+
+
+
Class ResultSet

5.3.3 Use Case View query use

diff --git a/doc/devel/uml/index_60.html b/doc/devel/uml/index_60.html index d00995e12..5fa958d5f 100644 --- a/doc/devel/uml/index_60.html +++ b/doc/devel/uml/index_60.html @@ -30,8 +30,8 @@ <flow>transition <flow>transition <flow>transition -<flow>transition <flow>transition +<flow>transition <flow>transition <flow>transition <flow>transition @@ -47,18 +47,18 @@ <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 25d659f38..4afe9874b 100644 --- a/doc/devel/uml/index_65.html +++ b/doc/devel/uml/index_65.html @@ -57,12 +57,12 @@ Assetsclass view ATTACHattributeattach subject to anchor (e.g. an effect to a clip) au1class instance -aud_aclass instance 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 36ad84a5e..bb6bceff8 100644 --- a/doc/devel/uml/index_66.html +++ b/doc/devel/uml/index_66.html @@ -38,8 +38,8 @@ buildableartifactmarker interface denoting any MObject able to be treated by Tools buildEngineoperationMain Operation of the Builder: create a render engine for a given part of the timeline Buildercomponent -builderpackagesourcecode package

The Builder creating the Render Engine,
located within the MObject Subsystem Builderpackage +builderpackagesourcecode package

The Builder creating the Render Engine,
located within the MObject Subsystem Builder Entitiesclass diagram Builder Tool (Visitor)class diagram Builder Workingsclass view diff --git a/doc/devel/uml/index_67.html b/doc/devel/uml/index_67.html index 693346ea5..573a61e0e 100644 --- a/doc/devel/uml/index_67.html +++ b/doc/devel/uml/index_67.html @@ -29,39 +29,39 @@ Categoryclasstree like classification of Assets categoryartifacttree like classification of Assets causeattributea copy of the first exception encountered in this exception chain -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. +chainrelationChain of additional Placements further constraining the position of this MObject 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 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. @@ -125,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 +Cursorclass Custom holdersclass view diff --git a/doc/devel/uml/index_68.html b/doc/devel/uml/index_68.html index 9866cde59..0af5dabf9 100644 --- a/doc/devel/uml/index_68.html +++ b/doc/devel/uml/index_68.html @@ -33,8 +33,8 @@ designpackage designpackageAll things concering the big picture.
Not a real code package, rather a container for design drafts, specifications, decisions. detect Channelsuse case -determine Render Paramsopaque activity action determine Render Paramsexpansion region +determine Render Paramsopaque activity action devnullclass instance Dispatchercomponent dispatchOpoperation diff --git a/doc/devel/uml/index_69.html b/doc/devel/uml/index_69.html index 0c6f365e7..3c4e4f7af 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 -effectartifactEffect or media processing component effectartifactEDL representation of a pluggable and automatable effect. +effectartifactEffect or media processing component Effectclass effective timeline (Fixture)node effectiveTimelinerelation diff --git a/doc/devel/uml/index_71.html b/doc/devel/uml/index_71.html index 8e5db9b8f..93915463a 100644 --- a/doc/devel/uml/index_71.html +++ b/doc/devel/uml/index_71.html @@ -50,6 +50,7 @@ globalBussesrelation glpipeartifactspecialized connection element for handling OpenGL implementation details glrenderartifactRepresentation of a OpenGL accellerated Video render process +Goalclass graphnode groupsattributeadditional classification, selections or departments this asset belongs to. Groups are optional, non-exclusive and may be overlapping. guipackagesourcecode package

User Interface classes go here diff --git a/doc/devel/uml/index_73.html b/doc/devel/uml/index_73.html index 6fa319735..bc3749d4b 100644 --- a/doc/devel/uml/index_73.html +++ b/doc/devel/uml/index_73.html @@ -25,9 +25,9 @@ ImplFacadeclass In Memory Databaseclass diagram inFixtureactivity action pin -inputclass instance -inputclass instance inputclass instance +inputclass instance +inputclass instance instanceoperation InstanceHandleclass instructionsrelation @@ -42,6 +42,9 @@ iporelation isActiveoperationweather this asset is swithced on and consequently included in the fixture and participates in rendering isCalculatedoperation +issueoperation +isValidoperation +IterAdapterclass diff --git a/doc/devel/uml/index_77.html b/doc/devel/uml/index_77.html index 908bede9a..c54b8ea8c 100644 --- a/doc/devel/uml/index_77.html +++ b/doc/devel/uml/index_77.html @@ -34,8 +34,8 @@ MediaKindclass merge activity nodemerge activity node Metaclasskey abstraction: metadata and organisational asset -metaartifactabstract base class of all MObjects representing meta data or processing instructions metaartifactkey abstraction: metadata and organisational asset +metaartifactabstract base class of all MObjects representing meta data or processing instructions Metaclass mobjectartifactKey Abstraction: A Media Object in the Session mobjectpackagesourcecode package

MObject Subsystem
including the Session (EDL), Builder and Processing Controller diff --git a/doc/devel/uml/index_78.html b/doc/devel/uml/index_78.html index 2671839d3..dd4d80ba8 100644 --- a/doc/devel/uml/index_78.html +++ b/doc/devel/uml/index_78.html @@ -21,6 +21,7 @@ nameattribute need sub objectuse case nextrelationnext additional LocatingPin, if any +nextResultoperation node1class instance node2class instance node3class instance diff --git a/doc/devel/uml/index_80.html b/doc/devel/uml/index_80.html index 738c03906..1c5804224 100644 --- a/doc/devel/uml/index_80.html +++ b/doc/devel/uml/index_80.html @@ -49,6 +49,7 @@ pluginadapterartifactAdapter for integrating various Effect processors in the render pipeline pnodenode pointattributeidentifying the point where the nodes should be attached +pos_relation Posix Threads Abstractionclass viewC++ wrapers for pthreads predecessorsrelation predicate implclass instance diff --git a/doc/devel/uml/index_81.html b/doc/devel/uml/index_81.html index 7668e971e..eb42837b2 100644 --- a/doc/devel/uml/index_81.html +++ b/doc/devel/uml/index_81.html @@ -18,6 +18,8 @@ + + diff --git a/doc/devel/uml/index_82.html b/doc/devel/uml/index_82.html index 3f9b13363..827043e15 100644 --- a/doc/devel/uml/index_82.html +++ b/doc/devel/uml/index_82.html @@ -45,11 +45,15 @@ + + + + diff --git a/doc/devel/uml/index_83.html b/doc/devel/uml/index_83.html index 93f76635f..f519ce594 100644 --- a/doc/devel/uml/index_83.html +++ b/doc/devel/uml/index_83.html @@ -66,21 +66,22 @@ + - - - - - - + + + + + + diff --git a/doc/devel/uml/index_84.html b/doc/devel/uml/index_84.html index 33624b8dd..5ca78a2ce 100644 --- a/doc/devel/uml/index_84.html +++ b/doc/devel/uml/index_84.html @@ -44,13 +44,13 @@ - + - - - + + +
NameKindDescription
queryclass view
Queryclass
Query Interfaceclass diagram
Query System overviewcomponent view
query useuse case view
QueryCacheclass
RenderTaskclass
reprattributehuman readable representation of the condition characterizing this allocaton, e.g. "t >= 10"
resetoperationreset all session config and
start with a pristine default session.
Resolutionclass
resolveoperationcreate an actual (explicit) placement while trying to satisfy the network of adjacent objects and placements.
resolveoperation
resolveoperation
Resolvercomponent
ResolverBaseclass
ResolvingFacilityclass
Resultclass
ResultSetclass
retrieveoperation
rootCauseoperationIf this exception was caused by a chain of further exceptions,
return the first one registered in this throw sequence.
This works only, if every exceptions thrown as a consequence
of another exception is propperly constructed by passing
the original exception to the constructor
Rule Basecomponent
SourceclassSource Node: represents a media source to pull data from.
sourceartifactRepresentation of a Media source
Source Overviewdeployment diagram
source_relation
startattributebegin of the timerange covered by this processor
startattribute
Stateclass
Statenode
Stateclass
staterelation
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
state actionstate action
state actionstate action
state actionstate action
state actionstate action
StateAdapterclass
StateAdapter compositionclass diagram
StateProxyclass
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 3c3999692..ada782f0a 100644 --- a/doc/devel/uml/index_86.html +++ b/doc/devel/uml/index_86.html @@ -21,21 +21,21 @@ VFrameclass 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 +videoclass instance videoclass instance videoclass instance -videoclass instance videoclass instance -video1class instance -video1class instance -video1class instance -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/public_operations.html b/doc/devel/uml/public_operations.html index 4e6395642..02e32e775 100644 --- a/doc/devel/uml/public_operations.html +++ b/doc/devel/uml/public_operations.html @@ -54,9 +54,12 @@ howtoProcMedia@return descriptor how to build a render pipeline corresponding to this media isActiveAssetweather this asset is swithced on and consequently included in the fixture and participates in rendering isCalculatedState +issueQueryResolver +isValidResolution knownAssetManager@return true if the given id is registered in the internal asset DB loadSessManagerreplace the current session by a new
session loaded from serialized state. makeTypeHandler +nextResultResolution playRenderEngineTODO: will probably be handled differently (see Cehteh) processProcNode pullProcNode @@ -71,13 +74,13 @@ saveSessManagercreate a complete, serialized representation
of the current session config and contents.
@todo how to serialize, prameters, return value? treatApplicable treatBuilderToolThis operation is to be overloaded for the specific MObject subclasses to be treated. +treatNodeCreatorTool treatNodeCreatorTool treatNodeCreatorTool -treatNodeCreatorTool treatNodeCreatorTool treatSegmentationTool -treatSegmentationTool treatSegmentationTool +treatSegmentationTool useFileFileProviderAnnounces that the application intends to use this file with mode (READ|WRITE|READWRITE) useTemporaryStorageFileProviderProvides a pool for interminate frames whatError diff --git a/uml/lumiera/131077 b/uml/lumiera/131077 index e6458174f..a6ef47693 100644 --- a/uml/lumiera/131077 +++ b/uml/lumiera/131077 @@ -1,6 +1,6 @@ format 58 "ConfigQuery" // CommonLib::ConfigQuery - revision 17 + revision 18 modified_by 5 "hiv" // class settings //class diagram settings @@ -548,6 +548,15 @@ ${class}::${name} ${(}${)}${const}${volatile} ${throw}${staticnl} b parent class_ref 156933 // Result end end + + classrelation 191621 // + relation 181253 ---> + a role_name "" protected + cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value}; +" + classrelation_ref 191621 // + b parent class_ref 159237 // Resolution + end end class 156805 "Goal" @@ -594,6 +603,14 @@ ${inlines} classrelation_ref 182533 // b parent class_ref 156933 // Result end + + classrelation 191749 // + relation 181381 -_-> + a default + cpp default "#include in source" + classrelation_ref 191749 // + b parent class_ref 153989 // QueryResolver + end end class 155141 "Query" diff --git a/uml/lumiera/137733.diagram b/uml/lumiera/137733.diagram index 918a3b519..38b1472ea 100644 --- a/uml/lumiera/137733.diagram +++ b/uml/lumiera/137733.diagram @@ -46,6 +46,8 @@ classcanvas 137221 class_ref 155525 // ResolvingFacility 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 492 327 1994 end +textcanvas 139269 "invoke for resolution" + xyzwh 289 91 2004 100 15 line 128389 ---+ from ref 131077 z 1999 to ref 129797 line 131845 ---+ @@ -81,8 +83,6 @@ relationcanvas 134021 relation_ref 175749 // no_role_a no_role_b no_multiplicity_a no_multiplicity_b end -line 135813 ---+ - from ref 135685 z 1999 to ref 128005 relationcanvas 135941 relation_ref 178309 // from ref 133509 z 1999 to ref 135685 no_role_a no_role_b @@ -124,5 +124,17 @@ relationcanvas 138757 relation_ref 180101 // no_role_a no_role_b no_multiplicity_a no_multiplicity_b end +relationcanvas 138885 relation_ref 181253 // + from ref 128005 z 1999 to ref 135685 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end +relationcanvas 139013 relation_ref 181381 // + decenter_end 805 + from ref 129797 z 1999 to point 227 100 + line 139141 z 1999 to ref 128005 + no_role_a no_role_b + no_multiplicity_a no_multiplicity_b +end preferred_whz 612 547 1 end diff --git a/uml/lumiera/5.session b/uml/lumiera/5.session index 2667b5cd6..fab2f0520 100644 --- a/uml/lumiera/5.session +++ b/uml/lumiera/5.session @@ -1,7 +1,5 @@ window_sizes 1302 1004 270 1022 856 71 diagrams - classdiagram_ref 134021 // Command structure - 575 622 100 4 0 0 classdiagram_ref 136325 // Focus of Query 582 515 100 4 0 0 active classdiagram_ref 137733 // Query Interface diff --git a/uml/lumiera/lumiera.prj b/uml/lumiera/lumiera.prj index 99a17c9aa..d39e4f756 100644 --- a/uml/lumiera/lumiera.prj +++ b/uml/lumiera/lumiera.prj @@ -1,6 +1,6 @@ format 58 "lumiera" - revision 57 + revision 58 modified_by 5 "hiv" cpp_root_dir "../../src/" diff --git a/wiki/renderengine.html b/wiki/renderengine.html index 4b3fbe2ac..df0a49d38 100644 --- a/wiki/renderengine.html +++ b/wiki/renderengine.html @@ -3476,7 +3476,7 @@ Then, running the goal {{{:-resolve(T, stream(T,mpeg)).}}} would search a Track In the design of the Lumiera Proc Layer done thus far, we provide //no possibility to introduce a new object kind// into the system via plugin interface. The system uses a fixed collection of classes intended to cover all needs (Clip, Effect, Track, Pipe, Label, Automation, ~Macro-Clips). Thus, plugins will only be able to provide new parametrisations of existing classes. This should not be any real limitation, because the whole system is designed to achieve most of its functionality by freely combining rather basic object kinds. As a plus, it plays nicely with any plain-C based plugin interface. For example, we will have C++ adapter classes for the most common sorts of effect plugin (pull system and synchronous frame-by-frame push with buffering) with a thin C adaptation layer for the specific external plugin systems used. Everything beyond this point can be considered "condiguration data" (including the actual plugin implementation to be loaded) -
+
Within the Lumiera Proc-Layer, there is a general preference for issuing [[queries|Query]] over hard wired configuration (or even mere table based configuration). This leads to the demand of exposing a //possibility to issue queries// &mdash; without actually disclosing much details of the facility implementing this service. For example, for shaping the general session interface (in 10/09), we need a means of exposing a hook to discover HighLevelModel contents, without disclosing how the model is actually organised internally (namely by using an PlacementIndex).
 
 !Analysis of the problem
@@ -3487,12 +3487,15 @@ The situation can be decomposed as follows.[>img[QueryResolver|uml/fig137733.
 
 
 !!!Difficulties
-*it's not clear which usage pattern I'm after
-*# client creates a specific {{{Query<TY>}}} to be resolved by an concealed entity
-*# client creates just a goal, which is then translated into a specific query mechanism behind the invocation interface
+*the usage pattern is not clear &mdash; mostly it's just //planned//
+*# client might create a specific {{{Query<TY>}}} and demand resolution
+*# client might create just a goal, which is then translated into a specific query mechanism behind the invocation interface
 *# client issues a query and expect it just to be handled by //some//&nbsp; suitable resolver
 * thus it's difficult to determine, //what// part of the issued query needs automatic management. More specifically, is it possible for the client to dispose the query after issuing it, but keeping and exploring the iterator obtained as result of the query?
-* and then there is the notorious problem of re-gaining the specifically typed context //behind//&nbsp; the invocation interface. Especially, the facility processing the query needs to know both the expected result type and details about the concrete query and its parametrisation. &rarr; TypedQueryProblem
+* and then there is the notorious problem of re-gaining the specifically typed context //behind//&nbsp; the invocation interface. Especially, the facility processing the query needs to know both the expected result type and details about the concrete query and its parametrisation. <br/>&rarr; TypedQueryProblem
+
+!!!Entities and Operations
+The //client// &nbsp;(code using query-resolver.hpp) either wants a ''goal'' or ''query'' to be resolved; the former is just implicitly typed and usually given in predicate logic from, while the latter may be a specialised subclass templated to yield objects of a specific type as results. A ''query resolver'' is an (abstracted) entity capable of //resolving//&nbsp; such a goal. Actually, behind the scenes there is somehow a registration of the concrete resolving facilities, which are asumed to decide about their ability of handling a given goal. Issuing a goal or query yields a ''resolution'' &mdash; practically speaking, a set of indivitual solutions. These individual solution ''results'' can be explored by ''iteration'', thereby moving an embedded ''cursor'' through the ''result set''. Any result can be retrieved at most once &mdash; after that, the resolution is ''exhausted'' and will be released automatically when the expolration iterator goes out of scope.
 
 !!!Decisions
 * while, in the use case currently at hand, the query instance is created by the client on the stack, the possibility of managing the queries internally is deliberately kept open. Because otherwise, we had to commit to a specific way of obtaining results, for example by assuming always to use an embedded STL iterator.