rfm2  22.0
A python-based rewrite of RenderMan for Maya
 All Classes Namespaces Files Functions Variables Pages
rfm2.config.Config Class Reference
+ Inheritance diagram for rfm2.config.Config:
+ Collaboration diagram for rfm2.config.Config:

Public Member Functions

def __init__
 
def get_node_descriptions
 
def get_node_descriptions_by_type
 
def get_node_description_by_name
 
def register_node_description
 
def icon
 
def renderer_executable
 
def get_textured_params
 
def get_shading_fragments_paths
 
def setup_lpe_lobe_ids
 

Public Attributes

 rfm_env
 
 build_info
 
 maya_version
 
 root_dir
 
 scripts_dir
 
 plugins_dir
 
 renderxml_dir
 
 icons_dir
 
 config_dir
 
 rmantree
 
 os
 
 extra_config_paths
 
 node_desc_dict
 
 desc_file_list
 
 nodes_by_type
 
 node_classifications
 
 desc_search_paths
 
 node_exclusion_list
 
 rman_search_paths
 
 dirmaps
 
 translationTable
 
 translateMayaToPxrDict
 
 translatePxrToMayaDict
 
 textured_params
 
 aovs
 
 syntaxDefinitions
 
 displayDriverExtensions
 
 icon_factor_str
 
 user_path
 
 show_path
 
 site_path
 

Detailed Description

A class to store the plugin's configuration data.

This includes:
    * search paths
    * current platform
    * node descriptions
    * AOV definitions, translation table, syhtax definitions, etc.

We initialise the config based on a single path: the path of the rfm install.

1. find core components (scripts, config files, etc) based on the plugin's
   path.
2. check for RFM_SITE_PATH environment variable to register a directory
   containing extra components.
2. check for RFM_SHOW_PATH environment variable to register a directory
   containing extra components.
3. Finally, look a the user's home directory for extra customizations.

A typical site/show/user directory is named 'rfm' and may contain:
- .../rfm/args/*.args: contain args files for custom integrators, bxdfs, osl
  patterns, etc.
- .../rfm/aovs.json: additional custom AOVs definitions
- .../rfm/syntaxDefinitions.json: additional syntax definitions for the
  scriptEditor widget.

Constructor & Destructor Documentation

def rfm2.config.Config.__init__ (   self,
  rfm_env 
)
Initialise the config based on a single path: the path of the rfm
install.

Args:
    rfm_dir_path (str): The path to the rfm directory
    rfm_version (str): the current version, i.e. '22.0a1'

Member Function Documentation

def rfm2.config.Config.get_node_description_by_name (   self,
  name 
)
Get a node description by name.

Args:
- name (str): 'PxrSurface' or any other node name.

Returns:
- A single NodeDesc on success, otherwise None.
def rfm2.config.Config.get_node_descriptions (   self)
Returns the dict containing all NodeDesc objects.

Returns:
    dict: a {nodeName: NodeDesc} dictionnary.
def rfm2.config.Config.get_node_descriptions_by_type (   self,
  ntype 
)
Returns all node descriptions of a given type (bxdf, pattern, etc).

Args:
- ntype (str): bxdf, pattern, displace, light, lightfilter, etc.

Returns:
- A list of NodeDesc instances on success, otherwise None.
def rfm2.config.Config.get_shading_fragments_paths (   self)
Return a list of directory containing 'shadeFraments' and \
'fragmentGraphs' directories to be searched by rfm2.vp.shading.
def rfm2.config.Config.get_textured_params (   self)
Returns a {nodeType: [NodeDescParams, ...]} for all parameters marked
as textures.
To mark a parameter as textured, it must have an "option" of type
"texture" or "env".
def rfm2.config.Config.icon (   self,
  icon 
)
Returns the full path to an icon file.

NOTE: We currently assume this is a core icon and do NOT check for the
path's validity.

Args:
- icon (str): The icon name, with its extension.

Returns:
- the fully qualified icon path, assuming this is a core icon.
def rfm2.config.Config.register_node_description (   self,
  desc,
  force = False 
)
Allow a node, i.e. PxrOSL, to register a new node description.

Args:
- desc (NodeDesc): a NodeDesc instance.

+ Here is the call graph for this function:

def rfm2.config.Config.renderer_executable (   self,
  executable 
)
Return the full path to a RenderManProServer binary.

Args:
- executable (str): The name of the command line app.

Returns:
- Full path to the executable.

Raises:
- RfmError: if the executable doesn't exist.
def rfm2.config.Config.setup_lpe_lobe_ids (   self)
Sets the default values of the LPE lobe IDs params on the rmanGlobals
node, based on the contents of rfm.json.
We edit the node description to modify some defaults before it is used
to create a maya node. This way, we are sure the defaults are whatever
the user chose and are properly restored on scene load if modified.
These rmanGlobals attributes will be output as options in the scene
description.

+ Here is the call graph for this function:

Member Data Documentation

rfm2.config.Config.aovs
rfm2.config.Config.build_info
rfm2.config.Config.config_dir
rfm2.config.Config.desc_file_list
rfm2.config.Config.desc_search_paths
rfm2.config.Config.dirmaps
rfm2.config.Config.displayDriverExtensions
rfm2.config.Config.extra_config_paths
rfm2.config.Config.icon_factor_str
rfm2.config.Config.icons_dir
rfm2.config.Config.maya_version
rfm2.config.Config.node_classifications
rfm2.config.Config.node_desc_dict
rfm2.config.Config.node_exclusion_list
rfm2.config.Config.nodes_by_type
rfm2.config.Config.os
rfm2.config.Config.plugins_dir
rfm2.config.Config.renderxml_dir
rfm2.config.Config.rfm_env
rfm2.config.Config.rman_search_paths
rfm2.config.Config.rmantree
rfm2.config.Config.root_dir
rfm2.config.Config.scripts_dir
rfm2.config.Config.show_path
rfm2.config.Config.site_path
rfm2.config.Config.syntaxDefinitions
rfm2.config.Config.textured_params
rfm2.config.Config.translateMayaToPxrDict
rfm2.config.Config.translatePxrToMayaDict
rfm2.config.Config.translationTable
rfm2.config.Config.user_path

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