Murl::Graph::IDeserializeAttributeTracker Interface Referenceabstract

The tracker used for deserializing nodes and their attributes. More...

#include "murl_graph_i_deserialize_attribute_tracker.h"

Inherited by Murl::Graph::DeserializeAttributeTracker.

Public Member Functions

virtual const IFactoryGetGraphFactory () const =0
 Get the engine's graph factory. More...
 
virtual const Resource::IGraphNodeGetResourceGraphNode () const =0
 Get the resource graph node containing the attributes to deserialize. More...
 
virtual const IAttributesGetAttributes () const =0
 Get a reference to the container holding the attributes to deserialize. More...
 
virtual const IAttributesGetParameters () const =0
 Get a pointer to the container holding optional parameters to use. More...
 
virtual UInt32 GetAttributeIndex () const =0
 Get the index of the attribute currently being deserialized. More...
 
virtual UInt32 GetAttributeLevel () const =0
 Get the scope level of the attribute currently being deserialized. More...
 
virtual void SetNodeExcluded (Bool excluded)=0
 Exclude/include the node (and its children) currently being deserialized. More...
 
virtual void SetChildrenExcluded (Bool excluded)=0
 Exclude/include the children of the node currently being deserialized. More...
 
virtual Bool MustExcludeNode () const =0
 Check if the current node (and its sub-graph) must be excluded from creation. More...
 
virtual Bool MustExcludeChildren () const =0
 Check if the current node's children must be excluded from creation. More...
 
virtual void IncreaseCurrentLevel ()=0
 Increase the current scope level by one.
 
virtual void DecreaseCurrentLevel ()=0
 Decrease the current scope level by one.
 
virtual UInt32 GetCurrentLevel () const =0
 Get the current scope level. More...
 
virtual Bool MakeResourceIdAbsolute (String &resourceId) const =0
 Convert a given resource ID to an absolute path. More...
 
virtual Bool HasAttributeValue () const =0
 Check if the current attribute has an actual value. More...
 
virtual Bool IsAnyAttributeValueMatchingAppUserConfiguration (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current user configuration. More...
 
virtual Bool IsAnyAttributeValueMatchingAppLanguage (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current language. More...
 
virtual Bool IsAnyAttributeValueMatchingPlatformTargetClass (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current target class. More...
 
virtual Bool IsAnyAttributeValueMatchingPlatformTargetDevice (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current target device. More...
 
virtual Bool IsAnyAttributeValueMatchingPlatformTargetHost (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current target host. More...
 
virtual Bool IsAnyAttributeValueMatchingPlatformOperatingSystem (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current operating system. More...
 
virtual Bool IsAnyAttributeValueMatchingPlatformGpu (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current GPU. More...
 
virtual Bool IsAnyAttributeValueMatchingEngineVideoApi (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current video API. More...
 
virtual Bool IsAnyAttributeValueMatchingEngineAudioApi (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current audio API. More...
 
virtual Bool IsAnyAttributeValueMatchingEnginePrescaleFactor (Bool evaluateParams=true) const =0
 Check if any of the node's condition attributes matches the current prescale factor. More...
 
virtual Bool AreAllAttributeValuesMatchingEngineFeatures (Bool evaluateParams=true) const =0
 Check if all of the node's condition attributes match the current engine feature set. More...
 
virtual Bool GetAttributeValue (String &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as a String. More...
 
virtual Bool GetAttributeValue (Bool &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as a Bool value. More...
 
virtual Bool GetAttributeValue (UInt32 &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as an UInt32 value. More...
 
virtual Bool GetAttributeValue (SInt32 &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as an SInt32 value. More...
 
virtual Bool GetAttributeValue (Double &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as a Double value. More...
 
virtual Bool GetAttributeValue (Float &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as a Float value. More...
 
virtual Bool GetAttributeValue (Color &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value as a Color value. More...
 
virtual Bool GetAttributeAngleValue (Double &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value interpreted as an angle value. More...
 
virtual Bool GetAttributeAngleValue (Float &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value interpreted as an angle value. More...
 
virtual Bool GetAttributeColorValue (Float &value, Bool evaluateParams=true) const =0
 Retrieve the current attribute value interpreted as an color value. More...
 
virtual Bool GetAttributeValues (StringArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a String array. More...
 
virtual Bool GetAttributeValues (BoolArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a Bool array. More...
 
virtual Bool GetAttributeValues (UInt32Array &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to an UInt32 array. More...
 
virtual Bool GetAttributeValues (SInt32Array &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to an SInt32 array. More...
 
virtual Bool GetAttributeValues (DoubleArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a Double array. More...
 
virtual Bool GetAttributeValues (FloatArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a Float array. More...
 
virtual Bool GetAttributeAngleValues (DoubleArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a Double array, interpreted as angle values. More...
 
virtual Bool GetAttributeAngleValues (FloatArray &values, Bool clear=true, Bool evaluateParams=true) const =0
 Split the current attribute value to a Float array, interpreted as angle values. More...
 
virtual Bool GetAttributeValues (String *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a String buffer. More...
 
virtual Bool GetAttributeValues (Bool *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a Bool buffer. More...
 
virtual Bool GetAttributeValues (UInt32 *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to an UInt32 buffer. More...
 
virtual Bool GetAttributeValues (SInt32 *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to an SInt32 buffer. More...
 
virtual Bool GetAttributeValues (Double *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a Double buffer. More...
 
virtual Bool GetAttributeValues (Float *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a Float buffer. More...
 
virtual Bool GetAttributeAngleValues (Double *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a Double buffer, interpreted as angle values. More...
 
virtual Bool GetAttributeAngleValues (Float *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const =0
 Split the current attribute value to a Float buffer, interpreted as angle values. More...
 
virtual Bool GetAttributeFlagToSet (UInt32 mask, UInt32 &value, Bool evaluateParams=true) const =0
 Set a bit mask if the current attribute value evaluates to boolean true. More...
 
virtual Bool GetAttributeFlagToClear (UInt32 mask, UInt32 &value, Bool evaluateParams=true) const =0
 Clear a bit mask if the current attribute value evaluates to boolean true. More...
 
virtual Bool GetAttributeBitsToSet (UInt32 &value, Bool evaluateParams=true) const =0
 Retrieve the actual bit numbers to set from the given attribute value. More...
 
template<class EnumType >
Bool GetAttributeEnumValue (const Enum< EnumType > &e, EnumType &value, Bool evaluateParams=true) const
 Retrieve the current attribute containing an enumeration string identifier. More...
 
template<class EnumType >
Bool GetAttributeEnumValues (const Enum< EnumType > &e, Array< EnumType > &values, Bool evaluateParams=true) const
 Retrieve the current attribute containing a list of comma-separated enumeration string identifiers. More...
 
template<class EnumType >
Bool GetAttributeEnumValues (const Enum< EnumType > &e, EnumType *values, UInt32 maxValues, UInt32 *numValues=nullptr, Bool evaluateParams=true) const
 Retrieve the current attribute containing a list of comma-separated enumeration string identifiers. More...
 
template<class EnumType >
Bool GetAttributeEnumBitsToSet (const Enum< EnumType > &e, UInt32 &value, Bool evaluateParams=true) const
 Retrieve the actual bit numbers to set from the given attribute value via enumeration string identifiers. More...
 
virtual UInt32 GetBaseAttribute (const AttributeInfo *info) const =0
 Get the actual ID of the current base attribute being deserialized. More...
 
virtual UInt32 GetParentAttribute (const AttributeInfo *info) const =0
 Get the actual ID of the current parent attribute being deserialized. More...
 
virtual UInt32 GetGrandParentAttribute (const AttributeInfo *info) const =0
 Get the actual ID of the current grand parent attribute being deserialized. More...
 
virtual String GetBaseAttributeName () const =0
 Get the name of the current base attribute. More...
 
virtual String GetParentAttributeName () const =0
 Get the name of the current parent attribute. More...
 
virtual String GetGrandParentAttributeName () const =0
 Get the name of the current grand parent attribute. More...
 
virtual ResultGetResult () const =0
 Get the result object. More...
 

Detailed Description

The tracker used for deserializing nodes and their attributes.

This interface represents a graph state tracker used in calls to the Graph::INode::DeserializeNode and Graph::INode::DeserializeAttribute methods, as well as the respective methods in Graph::IController, Graph::IGenericNodeTarget and Graph::IGenericResourceTarget.

Member Function Documentation

◆ GetGraphFactory()

virtual const IFactory* Murl::Graph::IDeserializeAttributeTracker::GetGraphFactory ( ) const
pure virtual

Get the engine's graph factory.

Returns
The graph factory.

◆ GetResourceGraphNode()

virtual const Resource::IGraphNode* Murl::Graph::IDeserializeAttributeTracker::GetResourceGraphNode ( ) const
pure virtual

Get the resource graph node containing the attributes to deserialize.

Returns
The resource graph node.

◆ GetAttributes()

virtual const IAttributes& Murl::Graph::IDeserializeAttributeTracker::GetAttributes ( ) const
pure virtual

Get a reference to the container holding the attributes to deserialize.

Returns
The attribute container.

Referenced by GetAttributeEnumBitsToSet(), GetAttributeEnumValue(), and GetAttributeEnumValues().

◆ GetParameters()

virtual const IAttributes* Murl::Graph::IDeserializeAttributeTracker::GetParameters ( ) const
pure virtual

Get a pointer to the container holding optional parameters to use.

Returns
The parameter container, or null if not used.

Referenced by GetAttributeEnumBitsToSet(), GetAttributeEnumValue(), and GetAttributeEnumValues().

◆ GetAttributeIndex()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetAttributeIndex ( ) const
pure virtual

Get the index of the attribute currently being deserialized.

Returns
The zero-based index into the attribute container from GetAttributes().

Referenced by GetAttributeEnumBitsToSet(), GetAttributeEnumValue(), and GetAttributeEnumValues().

◆ GetAttributeLevel()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetAttributeLevel ( ) const
pure virtual

Get the scope level of the attribute currently being deserialized.

Returns
The scope level.

◆ SetNodeExcluded()

virtual void Murl::Graph::IDeserializeAttributeTracker::SetNodeExcluded ( Bool  excluded)
pure virtual

Exclude/include the node (and its children) currently being deserialized.

Parameters
excludedIf true, the sub-graph made up from this node and its children is excluded from creation.

◆ SetChildrenExcluded()

virtual void Murl::Graph::IDeserializeAttributeTracker::SetChildrenExcluded ( Bool  excluded)
pure virtual

Exclude/include the children of the node currently being deserialized.

Parameters
excludedIf true, the node's children are excluded from creation.

◆ MustExcludeNode()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::MustExcludeNode ( ) const
pure virtual

Check if the current node (and its sub-graph) must be excluded from creation.

Returns
true if excluded.

◆ MustExcludeChildren()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::MustExcludeChildren ( ) const
pure virtual

Check if the current node's children must be excluded from creation.

Returns
true if excluded.

◆ GetCurrentLevel()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetCurrentLevel ( ) const
pure virtual

Get the current scope level.

Returns
The current scope level.

◆ MakeResourceIdAbsolute()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::MakeResourceIdAbsolute ( String resourceId) const
pure virtual

Convert a given resource ID to an absolute path.

If the given resource ID already represents an absolute path, this method simply returns true. This is the case when the ID is either in the form "<PackageID>[/<SubPackageID>...]:<ResourceID>", or "/<PackageID>[/<SubPackageID>...]/<ResourceID>". Otherwise, the path is considered relative, and the current resource graph node is used to get the absolute path to the graph resource from which deserialization was started. If this cannot be done, false is returned.

Parameters
resourceIdA reference to the resource ID to convert.
Returns
true if successful.

Referenced by Murl::Graph::ResourceTarget< ObjectType, MIN_NUMBER_OF_RESOURCES >::DeserializeResourceId(), Murl::Graph::ResourceArrayTarget< ObjectType, MIN_NUMBER_OF_RESOURCES, MAX_NUMBER_OF_RESOURCES, RESERVED_NUMBER_OF_RESOURCES >::DeserializeResourceId(), and Murl::Graph::ResourceArrayTarget< ObjectType, MIN_NUMBER_OF_RESOURCES, MAX_NUMBER_OF_RESOURCES, RESERVED_NUMBER_OF_RESOURCES >::DeserializeResourceIds().

◆ HasAttributeValue()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::HasAttributeValue ( ) const
pure virtual

Check if the current attribute has an actual value.

Returns
true if a value is given for the current attribute.

◆ IsAnyAttributeValueMatchingAppUserConfiguration()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingAppUserConfiguration ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current user configuration.

See IAppConfiguration::IsUserConfigurationMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the user configuration.

◆ IsAnyAttributeValueMatchingAppLanguage()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingAppLanguage ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current language.

See IAppConfiguration::IsLanguageMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the language.

◆ IsAnyAttributeValueMatchingPlatformTargetClass()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingPlatformTargetClass ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current target class.

See IPlatformConfiguration::IsTargetClassMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the target class.

◆ IsAnyAttributeValueMatchingPlatformTargetDevice()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingPlatformTargetDevice ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current target device.

See IPlatformConfiguration::IsTargetDeviceMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the target device.

◆ IsAnyAttributeValueMatchingPlatformTargetHost()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingPlatformTargetHost ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current target host.

See IPlatformConfiguration::IsTargetHostMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the target device.

◆ IsAnyAttributeValueMatchingPlatformOperatingSystem()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingPlatformOperatingSystem ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current operating system.

See IPlatformConfiguration::IsOperatingSystemMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the operating system.

◆ IsAnyAttributeValueMatchingPlatformGpu()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingPlatformGpu ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current GPU.

See IPlatformConfiguration::IsGpuMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the GPU.

◆ IsAnyAttributeValueMatchingEngineVideoApi()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingEngineVideoApi ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current video API.

See IEngineConfiguration::IsVideoApiMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the video API.

◆ IsAnyAttributeValueMatchingEngineAudioApi()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingEngineAudioApi ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current audio API.

See IEngineConfiguration::IsAudioApiMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the audio API.

◆ IsAnyAttributeValueMatchingEnginePrescaleFactor()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::IsAnyAttributeValueMatchingEnginePrescaleFactor ( Bool  evaluateParams = true) const
pure virtual

Check if any of the node's condition attributes matches the current prescale factor.

See IEngineConfiguration::IsTexturePrescaleDivisorMatching().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if at least of the condition attributes matches the prescale factor.

◆ AreAllAttributeValuesMatchingEngineFeatures()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::AreAllAttributeValuesMatchingEngineFeatures ( Bool  evaluateParams = true) const
pure virtual

Check if all of the node's condition attributes match the current engine feature set.

See IEngineConfiguration::GetFeatures().

Parameters
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if all of the condition attributes match the engine feature set.

◆ GetAttributeValue() [1/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( String value,
Bool  evaluateParams = true 
) const
pure virtual

◆ GetAttributeValue() [2/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( Bool value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as a Bool value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValue() [3/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( UInt32 value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as an UInt32 value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValue() [4/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( SInt32 value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as an SInt32 value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValue() [5/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( Double value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as a Double value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValue() [6/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( Float value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as a Float value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValue() [7/7]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValue ( Color value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value as a Color value.

Parameters
valueA reference to a variable receiving the attribute value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValue() [1/2]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValue ( Double value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value interpreted as an angle value.

The attribute value must contain either the "deg" or "d" postfix for an angle value in degrees, or the "rad" or "r" postfix for an angle value in radians.

Parameters
valueA reference to a variable to receive the angle value in radians.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValue() [2/2]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValue ( Float value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value interpreted as an angle value.

The attribute value must contain either the "deg" or "d" postfix for an angle value in degrees, or the "rad" or "r" postfix for an angle value in radians.

Parameters
valueA reference to a variable to receive the angle value in radians.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeColorValue()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeColorValue ( Float value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the current attribute value interpreted as an color value.

Parameters
valueA reference to a variable to receive the color value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [1/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( StringArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a String array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

Referenced by Murl::Graph::NodeArrayTarget< ObjectType, MIN_NUMBER_OF_NODES, MAX_NUMBER_OF_NODES, RESERVED_NUMBER_OF_NODES >::DeserializeNodeIds(), and Murl::Graph::ResourceArrayTarget< ObjectType, MIN_NUMBER_OF_RESOURCES, MAX_NUMBER_OF_RESOURCES, RESERVED_NUMBER_OF_RESOURCES >::DeserializeResourceIds().

◆ GetAttributeValues() [2/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( BoolArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Bool array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [3/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( UInt32Array values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to an UInt32 array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [4/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( SInt32Array values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to an SInt32 array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [5/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( DoubleArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Double array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [6/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( FloatArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Float array.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValues() [1/4]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValues ( DoubleArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Double array, interpreted as angle values.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValues() [2/4]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValues ( FloatArray values,
Bool  clear = true,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Float array, interpreted as angle values.

Parameters
valuesA reference to an array receiving the output values.
clearIf true, the given array is cleared prior to conversion.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [7/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( String values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a String buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [8/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( Bool values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Bool buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [9/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( UInt32 values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to an UInt32 buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [10/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( SInt32 values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to an SInt32 buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [11/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( Double values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Double buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeValues() [12/12]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeValues ( Float values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Float buffer.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValues() [3/4]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValues ( Double values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Double buffer, interpreted as angle values.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeAngleValues() [4/4]

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeAngleValues ( Float values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
pure virtual

Split the current attribute value to a Float buffer, interpreted as angle values.

Parameters
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeFlagToSet()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeFlagToSet ( UInt32  mask,
UInt32 value,
Bool  evaluateParams = true 
) const
pure virtual

Set a bit mask if the current attribute value evaluates to boolean true.

Parameters
maskThe bit mask to set if true.
valueA reference to a variable where the bits are set.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeFlagToClear()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeFlagToClear ( UInt32  mask,
UInt32 value,
Bool  evaluateParams = true 
) const
pure virtual

Clear a bit mask if the current attribute value evaluates to boolean true.

Parameters
maskThe bit mask to clear if true.
valueA reference to a variable where the bits are cleared.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeBitsToSet()

virtual Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeBitsToSet ( UInt32 value,
Bool  evaluateParams = true 
) const
pure virtual

Retrieve the actual bit numbers to set from the given attribute value.

The attribute value must contain a comma-separated list of bit numbers (0-31) to set in the given output value.

Parameters
valueA reference to a variable where the bits are set.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

◆ GetAttributeEnumValue()

template<class EnumType >
Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeEnumValue ( const Enum< EnumType > &  e,
EnumType &  value,
Bool  evaluateParams = true 
) const
inline

Retrieve the current attribute containing an enumeration string identifier.

Parameters
eThe enumeration containing valid values.
valueA reference to an enum variable to receive the converted value.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

References GetAttributeIndex(), GetAttributes(), Murl::IAttributes::GetEnumValueByIndex(), GetParameters(), and GetResult().

◆ GetAttributeEnumValues() [1/2]

template<class EnumType >
Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeEnumValues ( const Enum< EnumType > &  e,
Array< EnumType > &  values,
Bool  evaluateParams = true 
) const
inline

Retrieve the current attribute containing a list of comma-separated enumeration string identifiers.

Parameters
eThe enumeration containing valid values.
valuesA reference to an array of enum variables to receive the converted values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

References GetAttributeIndex(), GetAttributes(), Murl::IAttributes::GetEnumValuesByIndex(), GetParameters(), and GetResult().

◆ GetAttributeEnumValues() [2/2]

template<class EnumType >
Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeEnumValues ( const Enum< EnumType > &  e,
EnumType *  values,
UInt32  maxValues,
UInt32 numValues = nullptr,
Bool  evaluateParams = true 
) const
inline

Retrieve the current attribute containing a list of comma-separated enumeration string identifiers.

Parameters
eThe enumeration containing valid values.
valuesA pointer to a raw memory buffer receiving the output values.
maxValuesThe capacity of the given buffer.
numValuesAn optional pointer to a variable receiving the actual number of values.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

References GetAttributeIndex(), GetAttributes(), Murl::IAttributes::GetEnumValuesByIndex(), GetParameters(), and GetResult().

◆ GetAttributeEnumBitsToSet()

template<class EnumType >
Bool Murl::Graph::IDeserializeAttributeTracker::GetAttributeEnumBitsToSet ( const Enum< EnumType > &  e,
UInt32 value,
Bool  evaluateParams = true 
) const
inline

Retrieve the actual bit numbers to set from the given attribute value via enumeration string identifiers.

The attribute value must contain a comma-separated list of enumeration string identifiers that represent individual bits to set in the given output value.

Parameters
eThe enumeration containing valid values.
valueA reference to a variable where the bits are set.
evaluateParamsif true, the attribute values are evaluated using the present parameters.
Returns
true if the value is valid.

References GetAttributeIndex(), GetAttributes(), Murl::IAttributes::GetEnumBitsToSetByIndex(), GetParameters(), and GetResult().

◆ GetBaseAttribute()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetBaseAttribute ( const AttributeInfo info) const
pure virtual

Get the actual ID of the current base attribute being deserialized.

Parameters
infoThe AttributeInfo structure of the current class, obtained from GetAttributeInfo().
Returns
The base ID.

◆ GetParentAttribute()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetParentAttribute ( const AttributeInfo info) const
pure virtual

Get the actual ID of the current parent attribute being deserialized.

Parameters
infoThe AttributeInfo structure of the current class, obtained from GetAttributeInfo().
Returns
The parent ID.

◆ GetGrandParentAttribute()

virtual UInt32 Murl::Graph::IDeserializeAttributeTracker::GetGrandParentAttribute ( const AttributeInfo info) const
pure virtual

Get the actual ID of the current grand parent attribute being deserialized.

Parameters
infoThe AttributeInfo structure of the current class, obtained from GetAttributeInfo().
Returns
The grand parent ID.

◆ GetBaseAttributeName()

virtual String Murl::Graph::IDeserializeAttributeTracker::GetBaseAttributeName ( ) const
pure virtual

◆ GetParentAttributeName()

virtual String Murl::Graph::IDeserializeAttributeTracker::GetParentAttributeName ( ) const
pure virtual

Get the name of the current parent attribute.

Returns
The parent attribute name.

◆ GetGrandParentAttributeName()

virtual String Murl::Graph::IDeserializeAttributeTracker::GetGrandParentAttributeName ( ) const
pure virtual

Get the name of the current grand parent attribute.

Returns
The parent attribute name.

◆ GetResult()

virtual Result& Murl::Graph::IDeserializeAttributeTracker::GetResult ( ) const
pure virtual

Get the result object.

Returns
The result object.

Referenced by GetAttributeEnumBitsToSet(), GetAttributeEnumValue(), and GetAttributeEnumValues().


The documentation for this interface was generated from the following file:
  • murl_graph_i_deserialize_attribute_tracker.h


Copyright © 2011-2024 Spraylight GmbH.