package module

Module package aims to define all common interfaces related to the .sbs and .sbsar packages:
class common_interfaces.package.Package(aContext, aFileAbsPath)

Bases: object

Class used to provide a common interface between a SBSDocument and a SBSArchive.

Members:
  • mContext (Context): Execution context, with alias definition

  • mFileAbsPath (str): Absolute path of the package

  • mDirAbsPath (str): Absolute directory of the package

  • mIsAnArchive (bool): True for a .sbsar, False for a .sbs

abstractmethod buildAbsPathFromRelToMePath(aRelPathFromPackage)

Build a path starting from the current package absolute directory and complete it with the given relative path

Parameters:

aRelPathFromPackage (str) – The relative path from the current package

Returns:

The complete path, as a string

abstractmethod parseDoc(aResolveDependencies=True)

Parse the file content

Returns:

True if succeed

abstractmethod getObjectFromInternalPath(aPath)

Get the object pointed by the given path, which must references the current package.

Parameters:

aPath (str) – the relative path, starting with ‘pkg://’

Returns:

the pointed SBSObject if found, None otherwise

abstractmethod getSBSGraph(aGraphIdentifier)

Get the Graph object with the given identifier

Parameters:

aGraphIdentifier (str) – Identifier of the graph to get

Returns:

A Graph object

abstractmethod getSBSGraphPkgUrl(aGraph)

Get the path of the given graph relatively to the current package (pkg:///…/aGraphIdentifier)

Parameters:

aGraph (A SBSGraph object) – Identifier of the graph to get

Returns:

A string containing the relative path from the root content to the given graph, None otherwise

abstractmethod getSBSGraphList()

Get the list of all graphs defined in the .sbs file

Returns:

A list of Graph

static isAnArchive(aFilePath)

Check if the given filename is a .sbsar package or a .sbs package

Parameters:

aFilePath (str) – Path of the package

Returns:

True if the given path refers to an archive (.sbsar), False otherwise

static isAPackage(aFilePath)

Check if the given filename is a .sbs file or .sbsar file.

Parameters:

aFilePath (str) – Path of the package

Returns:

True if the given path ends with .sbs or .sbsar, False otherwise

isInitialized()

Check if the package is correctly initialized (parsed or well setup for future usage)

Returns:

True if the package is initialized, False otherwise

setInitialized()

Set the package as initialized

static removePackageExtension(aFilePath)

Remove the package extension to the given path (.sbs or .sbsar)

Parameters:

aFilePath (str) – Path of the package

Returns:

The same path without the package extension

class common_interfaces.package.ParamInput(aUID='', aIdentifier='')

Bases: object

Class used to provide a common interface between a SBSParamInput and a SBSARInput.

Members:
  • mIdentifier: Unique identifier of the input

  • mUID: Unique Id of the input

getAttribute(aAttributeIdentifier)

Get the given attribute value

Parameters:

aAttributeIdentifier (AttributesEnum) – the attribute identifier

Returns:

the attribute value if defined, None otherwise

getDimension()

Get the dimension of the parameter type (1, 2, 3, or 4 values)

Returns:

The dimension as an integer

formatValueToType(aValue)

Return the given value formatted in the appropriate type for this parameter (bool, int or float)

Parameters:

aValue (string, bool, int, or float) – The value to format

Returns:

The value as a bool, int of float depending on the parameter type

abstractmethod getGroup()

Get the input GUI group containing this input

Returns:

the GUI group as a string if defined, None otherwise

abstractmethod getClamp()
Returns:

the clamp as a boolean if defined for this parameter, None if not defined

abstractmethod getMinValue(asList)
Returns:

the minimum parameter value in the type of the parameter (int or float), None if not defined

abstractmethod getMaxValue(asList)
Returns:

the maximum parameter value in the type of the parameter (int or float), None if not defined

abstractmethod getDefaultValue()
Returns:

the default value as a value or a list of values, in the type of the parameter (bool, int or float), None if not defined

abstractmethod getDropDownList()
Returns:

the map{value(int):label(str)} corresponding to the drop down definition if defined for this parameter, None otherwise.

abstractmethod getLabels()
Returns:

the list of all labels defined for this parameter, in the right order, as a list of strings. None if not defined

abstractmethod getStep()
Returns:

the step value (in the type of the parameter) of the widget for this parameter, None if not defined

abstractmethod getUsages()

Get the usages of this param input

Returns:

the list of SBSUsage defined on this param input

abstractmethod getWidget()
Returns:

The widget used for this parameter, None if not defined

abstractmethod hasUsage(aUsage)

Check if the given usage is defined on this param input

Parameters:

aUsage (str or UsageEnum) – The usage to look for

Returns:

True if the given usage is defined on this param input, False otherwise

abstractmethod isAnInputImage()

Check if this input is of kind image.

Returns:

True if this is an input image, False otherwise

abstractmethod isAnInputParameter()

Check if this input is a parameter.

Returns:

True if this is an input parameter, False otherwise

abstractmethod getType()

Get the type of the input among the list defined in ParamTypeEnum.

Returns:

The type of the parameter as a ParamTypeEnum

abstractmethod getIsConnectable()

Returns True if this parameter can be connected to

Returns:

(bool) If this input is connectable

class common_interfaces.package.GraphOutput(aUID='', aIdentifier='')

Bases: object

Class used to provide a common interface between a SBSGraphOutput and a SBSAROutput.

Members:
  • mUID (str): identifier of the input.

  • mIdentifier (str): uid of the input.

getAttribute(aAttributeIdentifier)

Get the given attribute value

Parameters:

aAttributeIdentifier (AttributesEnum) – the attribute identifier

Returns:

the attribute value if defined, None otherwise

abstractmethod getUsages()

Get the usages of this graph output

Returns:

the list of usages defined on this output

abstractmethod hasUsage(aUsage)

Check if the given usage is defined on this graph output

Parameters:

aUsage (str or UsageEnum) – The usage to look for

Returns:

True if the given usage is defined on this param input, False otherwise

abstractmethod getType()

Get the output type of this GraphOutput.

Returns:

the output type in the format ParamTypeEnum if found, None otherwise

class common_interfaces.package.Preset(aLabel='', aUsertags='', aPresetInputs=None)

Bases: object

Class used to provide a common interface between a SBSPreset and a SBSARPreset.

Members:
  • mLabel (str): label of the preset.

  • mPresetInputs (list of PresetInput): list of preset inputs.

getPresetInputs()

Get the list of preset inputs defined in this preset

Returns:

a list of PresetInput

getPresetInput(aInputParam)

Get the preset of the given input parameter

Parameters:

aInputParam (ParamInput or str) – the input parameter as ParamInput or identified by its uid

Returns:

a PresetInput if found, None otherwise

getPresetInputFromIdentifier(aInputParamIdentifier)

Get the preset of the given input parameter

Parameters:

aInputParamIdentifier (str) – the input parameter identified by its identifier

Returns:

a PresetInput if found, None otherwise

getInputValue(aInputUID)

Get the value of the given ParamInput in this preset

Parameters:

aInputUID (str) – UID of the input to get

Returns:

the input value in this preset if defined, None otherwise

class common_interfaces.package.PresetInput(aUID='', aIdentifier='', aValue=None, aType=None)

Bases: object

Class used to provide a common interface between a SBSPresetInput and a SBSARPresetInput.

Members:
  • mUID (str): uid of the input parameter targeted by this preset input

  • mIdentifier (str): identifier of the input parameter targeted by this preset input

  • mValue (SBSConstantValue): value, depend on the type.

  • mType (SBSParamValue): type of the input

getValue()

Get the value of this preset input as it is saved in the file

Returns:

the input value in this preset input

getType()

Get the type of the input among the list defined in ParamTypeEnum.

Returns:

The type of the parameter as a ParamTypeEnum

getTypedValue()

Get the value of this preset input correctly formatted in the type of this preset (e.g. bool, int, float, list of int, …)

Returns:

The input value in the appropriate type