ScummVM API documentation
MTropolis::Project Class Reference
Inheritance diagram for MTropolis::Project:
MTropolis::Structural MTropolis::RuntimeObject MTropolis::IModifierContainer MTropolis::IMessageConsumer MTropolis::Debuggable MTropolis::IInterfaceBase MTropolis::IInterfaceBase MTropolis::IDebuggable MTropolis::IInterfaceBase

Public Member Functions

 Project (Runtime *runtime)
 
VThreadState asyncConsumeCommand (Runtime *runtime, const Common::SharedPtr< MessageProperties > &msg) override
 
MiniscriptInstructionOutcome writeRefAttribute (MiniscriptThread *thread, DynamicValueWriteProxy &result, const Common::String &attrib) override
 
void loadFromDescription (const ProjectDescription &desc, const Hacks &hacks)
 
void loadSceneFromStream (const Common::SharedPtr< Structural > &structural, uint32 streamID, const Hacks &hacks)
 
Common::SharedPtr< Modifier > resolveAlias (uint32 aliasID) const
 
Common::SharedPtr< Modifier > findGlobalVarWithName (const Common::String &name) const
 
void materializeGlobalVariables (Runtime *runtime, ObjectLinkingScope *scope)
 
const ProjectPresentationSettings & getPresentationSettings () const
 
bool isProject () const override
 
Common::String getAssetNameByID (uint32 assetID) const
 
Common::WeakPtr< Asset > getAssetByID (uint32 assetID) const
 
bool getAssetIDByName (const Common::String &assetName, uint32 &outAssetID) const
 
void forceLoadAsset (uint32 assetID, Common::Array< Common::SharedPtr< Asset > > &outHoldAssets)
 
size_t getSegmentForStreamIndex (size_t streamIndex) const
 
void openSegmentStream (int segmentIndex)
 
void closeSegmentStream (int segmentIndex)
 
Common::SeekableReadStream * getStreamForSegment (int segmentIndex)
 
const Common::String * findNameOfLabel (const Label &label) const
 
void onPostRender ()
 
void onKeyboardEvent (Runtime *runtime, const KeyboardInputEvent &keyEvt)
 
Common::SharedPtr< SegmentUnloadSignaller > notifyOnSegmentUnload (int segmentIndex, ISegmentUnloadSignalReceiver *receiver)
 
Common::SharedPtr< KeyboardEventSignaller > notifyOnKeyboardEvent (IKeyboardEventReceiver *receiver)
 
Common::SharedPtr< PlayMediaSignaller > notifyOnPlayMedia (IPlayMediaSignalReceiver *receiver)
 
const char * findAuthorMessageName (uint32 id) const
 
const Common::SharedPtr< CursorGraphicCollection > & getCursorGraphics () const
 
const SubtitleTables & getSubtitles () const
 
RuntimeVersion getRuntimeVersion () const
 
ProjectPlatform getPlatform () const
 
void visitInternalReferences (IStructuralReferenceVisitor *visitor) override
 
Common::SharedPtr< Structural > shallowClone () const override
 
- Public Member Functions inherited from MTropolis::Structural
 Structural (Runtime *runtime)
 
bool isStructural () const override
 
SceneLoadState getSceneLoadState () const
 
void setSceneLoadState (SceneLoadState sceneLoadState)
 
bool readAttribute (MiniscriptThread *thread, DynamicValue &result, const Common::String &attrib) override
 
bool readAttributeIndexed (MiniscriptThread *thread, DynamicValue &result, const Common::String &attrib, const DynamicValue &index) override
 
MiniscriptInstructionOutcome writeRefAttribute (MiniscriptThread *thread, DynamicValueWriteProxy &result, const Common::String &attrib) override
 
const Common::Array< Common::SharedPtr< Structural > > & getChildren () const
 
void addChild (const Common::SharedPtr< Structural > &child)
 
void removeAllChildren ()
 
void removeAllModifiers ()
 
void removeChild (Structural *child)
 
void removeAllAssets ()
 
void holdAssets (const Common::Array< Common::SharedPtr< Asset > > &assets)
 
Structural * getParent () const
 
Structural * findNextSibling () const
 
Structural * findPrevSibling () const
 
void setParent (Structural *parent)
 
VisualElement * findScene ()
 
const Common::String & getName () const
 
const Common::Array< Common::SharedPtr< Modifier > > & getModifiers () const override
 
void appendModifier (const Common::SharedPtr< Modifier > &modifier) override
 
void removeModifier (const Modifier *modifier) override
 
bool respondsToEvent (const Event &evt) const override
 
VThreadState consumeMessage (Runtime *runtime, const Common::SharedPtr< MessageProperties > &msg) override
 
void materializeSelfAndDescendents (Runtime *runtime, ObjectLinkingScope *outerScope)
 
void materializeDescendents (Runtime *runtime, ObjectLinkingScope *outerScope)
 
virtual VThreadState asyncConsumeCommand (Runtime *runtime, const Common::SharedPtr< MessageProperties > &msg)
 
virtual void activate ()
 
virtual void deactivate ()
 
void recursiveCollectObjectsMatchingCriteria (Common::Array< Common::WeakPtr< RuntimeObject > > &results, bool(*evalFunc)(void *userData, RuntimeObject *object), void *userData, bool onlyEnabled)
 
void setHooks (const Common::SharedPtr< StructuralHooks > &hooks)
 
const Common::SharedPtr< StructuralHooks > & getHooks () const
 
virtual Common::SharedPtr< Structural > shallowClone () const =0
 
virtual void visitInternalReferences (IStructuralReferenceVisitor *visitor)
 
- Public Member Functions inherited from MTropolis::RuntimeObject
uint32 getStaticGUID () const
 
uint32 getRuntimeGUID () const
 
void setRuntimeGUID (uint32 runtimeGUID)
 
void setSelfReference (const Common::WeakPtr< RuntimeObject > &selfReference)
 
const Common::WeakPtr< RuntimeObject > & getSelfReference () const
 
virtual bool isStructural () const
 
virtual bool isProject () const
 
virtual bool isSection () const
 
virtual bool isSubsection () const
 
virtual bool isModifier () const
 
virtual bool isElement () const
 
virtual bool readAttribute (MiniscriptThread *thread, DynamicValue &result, const Common::String &attrib)
 
virtual bool readAttributeIndexed (MiniscriptThread *thread, DynamicValue &result, const Common::String &attrib, const DynamicValue &index)
 
virtual MiniscriptInstructionOutcome writeRefAttribute (MiniscriptThread *thread, DynamicValueWriteProxy &result, const Common::String &attrib)
 
virtual MiniscriptInstructionOutcome writeRefAttributeIndexed (MiniscriptThread *thread, DynamicValueWriteProxy &result, const Common::String &attrib, const DynamicValue &index)
 
virtual const Common::Array< Common::SharedPtr< Modifier > > & getModifiers () const =0
 
virtual void appendModifier (const Common::SharedPtr< Modifier > &modifier)=0
 
virtual void removeModifier (const Modifier *modifier)=0
 
virtual bool respondsToEvent (const Event &evt) const =0
 
virtual VThreadState consumeMessage (Runtime *runtime, const Common::SharedPtr< MessageProperties > &msg)=0
 
- Public Member Functions inherited from MTropolis::Debuggable
 Debuggable (const Debuggable &other)
 
 Debuggable (Debuggable &&other)
 
- Public Member Functions inherited from MTropolis::IDebuggable
virtual SupportStatus debugGetSupportStatus () const =0
 
virtual const char * debugGetTypeName () const =0
 
virtual const Common::String & debugGetName () const =0
 
virtual const Common::SharedPtr< DebugInspector > & debugGetInspector ()=0
 
virtual void debugInspect (IDebugInspectionReport *report) const =0
 

Additional Inherited Members

- Public Types inherited from MTropolis::Structural
enum class  SceneLoadState { kNotAScene , kSceneNotLoaded , kSceneLoaded }
 
- Protected Member Functions inherited from MTropolis::Structural
 Structural (const Structural &other)
 
virtual ObjectLinkingScope * getPersistentStructuralScope ()
 
virtual ObjectLinkingScope * getPersistentModifierScope ()
 
MiniscriptInstructionOutcome scriptSetPaused (MiniscriptThread *thread, const DynamicValue &value)
 
MiniscriptInstructionOutcome scriptSetLoop (MiniscriptThread *thread, const DynamicValue &value)
 
MiniscriptInstructionOutcome scriptSetDebug (MiniscriptThread *thread, const DynamicValue &value)
 
MiniscriptInstructionOutcome scriptSetUnload (MiniscriptThread *thread, const DynamicValue &value)
 
virtual void linkInternalReferences (ObjectLinkingScope *outerScope)
 
virtual void onPauseStateChanged ()
 
Runtime * getRuntime () const
 
- Protected Member Functions inherited from MTropolis::RuntimeObject
MiniscriptInstructionOutcome scriptSetClone (MiniscriptThread *thread, const DynamicValue &value)
 
MiniscriptInstructionOutcome scriptSetKill (MiniscriptThread *thread, const DynamicValue &value)
 
MiniscriptInstructionOutcome scriptSetParent (MiniscriptThread *thread, const DynamicValue &value)
 
- Protected Attributes inherited from MTropolis::Structural
Structural * _parent
 
Common::Array< Common::SharedPtr< Structural > > _children
 
Common::Array< Common::SharedPtr< Modifier > > _modifiers
 
Common::String _name
 
Common::Array< Common::SharedPtr< Asset > > _assets
 
bool _paused
 
bool _loop
 
int32 _flushPriority
 
SceneLoadState _sceneLoadState
 
Common::SharedPtr< StructuralHooks > _hooks
 
- Protected Attributes inherited from MTropolis::RuntimeObject
uint32 _guid
 
uint32 _runtimeGUID
 
Common::WeakPtr< RuntimeObject > _selfReference
 

Member Function Documentation

◆ asyncConsumeCommand()

VThreadState MTropolis::Project::asyncConsumeCommand ( Runtime *  runtime,
const Common::SharedPtr< MessageProperties > &  msg 
)
overridevirtual

Reimplemented from MTropolis::Structural.

◆ writeRefAttribute()

MiniscriptInstructionOutcome MTropolis::Project::writeRefAttribute ( MiniscriptThread *  thread,
DynamicValueWriteProxy &  result,
const Common::String &  attrib 
)
overridevirtual

Reimplemented from MTropolis::Structural.

◆ isProject()

bool MTropolis::Project::isProject ( ) const
overridevirtual

Reimplemented from MTropolis::RuntimeObject.

◆ visitInternalReferences()

void MTropolis::Project::visitInternalReferences ( IStructuralReferenceVisitor *  visitor)
overridevirtual

Reimplemented from MTropolis::Structural.

◆ shallowClone()

Common::SharedPtr< Structural > MTropolis::Project::shallowClone ( ) const
overridevirtual

Implements MTropolis::Structural.


The documentation for this class was generated from the following file: