modeloperand module

Module moduleoperand aims to define SBSObjects that are relative to a model operand, Each class handle an operand type

class modelgraph.modeloperand.ModelBaseOperand(**kwargs)

Bases: ModuleOperand

ModelBaseOperand is the base class for operand, each typed operand inherited of ModelBaseOperand

Members:
  • mName (str): operand’s name.

  • mType (str): operand’s type.

  • mValue (str): operand’s value.

  • mDefaultValue (str): operand’s value.

  • mOperandMetaData (ModelOperandMetaData): operand’s metadata object.

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value without special chars and type :return: str

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelBoolOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: bool

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: bool

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelEnumOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: int

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setType()
setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: int

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelFloat2Operand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: list(float, float)

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: list(bool, bool) or tuple(bool, bool)

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelFloat3Operand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: list(float, float, float)

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: list(bool, bool, bool) or tuple(bool, bool, bool)

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelFloatOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: float

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: float

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelIntegerOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: int

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: int

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelListOperand(aClassType=<class 'float'>, **kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: list()

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: list or tuple

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelSceneTreeOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value in correct python form :return: str

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue()

Set hardcoded value custom{scenetree}()

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill

class modelgraph.modeloperand.ModelStringOperand(**kwargs)

Bases: ModelBaseOperand

equals(other)

Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.

Parameters:

other (SBSObject) – The SBSObject to compare to

Returns:

True if the two SBSObject are similar according to their definition.

getUidIsUsed(aUID)

Check if the given uid is already used in the context of this SBSObject.

Parameters:

aUID (str) – UID to check

Returns:

True if the uid is already used, False otherwise

Raise:

AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject

getValue()

Return value without special chars and type :return: str

parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)

Parse recursively the given xml node to retrieve the content of the SBSObject.

Parameters:
  • aContext (Context) – execution context

  • aDirAbsPath (str) – the absolute directory containing the current parsed package (.sbs file)

  • aSBSParser (SBSParser) – the substance parser

  • aXmlNode (xml.etree.ElementTree) – the xml node to parse

promote()

Convert this base operand to a typed operand by surcharging the current class by a corresponding typed class

setMetaDataAcceptConnection(value=True)

Set the metadata ‘accept_connection’ to the corresponding value.

Parameters:

value (bool) – True or False

setValue(value=None)

Convert in the correct syntax for this operand type :param value: a value :type value: str

switchMetaDataDefault()

Helper to switch metadata ‘is_default_value’, used when a value is changed

write(aSBSWriter, aXmlNode)

Write recursively the content of the SBSObject into the given xml node.

Parameters:
  • aSBSWriter (SBSWriter) – the substance writer

  • aXmlNode (xml.etree.ElementTree) – the xml node to fill