conductor.houdini.hda.houdini_info module¶
Summary.
-
conductor.houdini.hda.houdini_info.
HANDLER_MAP
¶ Mapping from a Houdini definition description (such as Arnold) to a class to provide info for the defined asset (such as ArnoldInfo).
Type: dict
-
class
conductor.houdini.hda.houdini_info.
ArnoldInfo
¶ Bases:
conductor.houdini.hda.houdini_info.HoudiniPluginInfo
A class for retrieving version information about the arnold plugin in Houdini.
Will ultimately produce something like this:
{ 'product': 'htoa', 'major_version': u'1', 'minor_version': u'2', 'release_version': u'6', 'build_version': u'1', 'plugin_host_product': 'houdini', 'plugin_host_version': u'16.5.323' }
-
classmethod
get_product
()¶ The name that Conductor calls this plugin.
-
classmethod
get_regex
()¶ Regex to extract parts form arnold plugin name.
It is something like like ‘htoa-1.2.6.1’ where the last number (build version) is optional. Note, this regex doubles up. It can extract the full versioned name from the library path (see get_version above), or it can extract individual version number parts from the versioned name
-
classmethod
get_version
()¶ Get the full name and version of the plugin.
This method name is a bit confusing. Its not just a version. It will return something like: ‘htoa-1.2.6.1’
-
plugin_name
= 'arnold_rop'¶
-
classmethod
-
class
conductor.houdini.hda.houdini_info.
HoudiniInfo
¶ Bases:
conductor.lib.package_utils.ProductInfo
Retrieve information about the current houdini session.
-
classmethod
get_build_version
()¶ Return the name of the software package, e.g. “Autodesk Maya 2015 SP4”
-
classmethod
get_major_version
()¶ e.g. 16.
-
classmethod
get_minor_version
()¶ e.g. 5.
-
classmethod
get_product
()¶ e.g. houdini.
-
classmethod
get_release_version
()¶ e.g. 323.
-
classmethod
get_vendor
()¶ sidefx make Houdini
-
classmethod
get_version
()¶ e.g. 16.5.323.
-
classmethod
-
class
conductor.houdini.hda.houdini_info.
HoudiniPluginInfo
¶ Bases:
conductor.lib.package_utils.ProductInfo
A class for retrieving version information about a plugin in houdini.
Will ultimately produce something like this:
{ 'product': '<plugin name>', 'major_version': u'3', 'minor_version': u'00', 'release_version': u'01', 'build_version': '', 'plugin_host_product': 'houdini', 'plugin_host_version': u'16.5' }
-
classmethod
exists
()¶ Return true if the plugin has a definition.
Note this will be False if the definition exists but no instances exist.
-
classmethod
find_definition
()¶ Find the houdini definition for a plugin.
Look at all node types that have instances in the scene and check the name of the otl against the name of this plugin, defined in the derived class.
-
classmethod
get_plugin_host_product
()¶ Return the name of the host software package.
Example: “Houdini”.
-
classmethod
get_plugin_host_version
()¶ Return the version of the host software package.
Example: “Houdini 16.5.323”.
-
classmethod
get_product
()¶ Subclass must return product name.
-
classmethod
get_regex
()¶ Derived class must provide a regex.
The regex should extract the product and version parts
-
classmethod
get_version
()¶ Return fully qualified name of the plugin.
Derived class must override.
-
plugin_name
= None¶
-
classmethod
-
conductor.houdini.hda.houdini_info.
get_plugin_definitions
()¶ Get third party digital assets in use.
Uses
node_type.instances()
to check that node is used in the scene, andpath.startswith(os.environ["HFS"])
to filter out stuff that comes with Houdini. The return value is a list of houdini definitions.
-
conductor.houdini.hda.houdini_info.
get_used_plugin_info
()¶ Convert houdini definitions to Conductor info dicts.
We use a mapping from the definition description (see
HANDLER_MAP
) in order to select the correct class to use to extract the name and version info so it interfaces with Conductor’s package routines. The result is a list of dicts for used plugins.