HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UNI_Category Class Referenceabstract

#include <UNI_Category.h>

+ Inheritance diagram for UNI_Category:

Classes

class  ToolInfo
 Information about the default shelf tool for a UNI node type. More...
 

Public Member Functions

const UT_StringHoldername () const
 
const UT_StringHolderlabel () const
 
virtual UT_StringArray nodeTypeNames () const =0
 Returns the list of known node type names in this category. More...
 
virtual bool isValidNodeType (const UT_StringRef &type_name) const =0
 Returns true if the given node type name is valid in this category. More...
 
virtual bool isHiddenNodeType (const UT_StringRef &type_name) const =0
 Returns true if the given node type is hidden from the Tab menu. More...
 
virtual UT_StringHolder nodeTypeLabel (const UT_StringRef &type_name) const =0
 Returns the label of the given node type for the display in UI. More...
 
virtual UT_StringHolder nodeTypeIcon (const UT_StringRef &type_name) const =0
 Returns the name of the icon for the given node type. More...
 
virtual UT_Array< UNI_SignaturenodeTypeSignatures (const UT_StringRef &type_name) const =0
 Returns the list of function signature names node type offers. More...
 
virtual UT_StringArray nodeTypeNamesInPrecedenceOrder (const UT_StringRef &type_name) const =0
 
virtual UT_StringHolder subnetNodeTypeName () const =0
 
virtual UT_StringArray childCategoryNames (const UT_StringRef &type_name) const =0
 
virtual bool shouldGenerateToolForNodeType (const UT_StringRef &type_name) const =0
 
virtual ToolInfo nodeTypeToolInfo (const UT_StringRef &type_name) const =0
 Returns information about a default shelf tool for the given node type. More...
 
virtual UT_NotifierImpl< const
UNI_NodeTypeEvent & > & 
getNodeTypeEventNotifier ()=0
 
 UNI_Category (const UT_StringRef &name, const UT_StringRef &label=UT_StringRef())
 Constructor and destructor. More...
 
virtual ~UNI_Category ()
 Constructor and destructor. More...
 

Detailed Description

The category of node types, nodes, and port types that work together in a domain-specific specialization context of the UNI graph.

It groups these concepts into one umbrella, isolating them from other incompatible nodes and types. It allows presenting available node types and determine connectability of node ports, avoiding type collisions, etc.

Definition at line 33 of file UNI_Category.h.

Constructor & Destructor Documentation

UNI_Category::UNI_Category ( const UT_StringRef name,
const UT_StringRef label = UT_StringRef() 
)

Constructor and destructor.

virtual UNI_Category::~UNI_Category ( )
virtual

Constructor and destructor.

Member Function Documentation

virtual UT_StringArray UNI_Category::childCategoryNames ( const UT_StringRef type_name) const
pure virtual

Returns the node type category names that can be children of the specified node type.

Implemented in UN_UniCategory.

virtual UT_NotifierImpl<const UNI_NodeTypeEvent &>& UNI_Category::getNodeTypeEventNotifier ( )
pure virtual

Returns an object for notifying interested parties about changes to the known node types (adding a new or removing old one).

Implemented in UN_UniCategory.

virtual bool UNI_Category::isHiddenNodeType ( const UT_StringRef type_name) const
pure virtual

Returns true if the given node type is hidden from the Tab menu.

Implemented in UN_UniCategory.

virtual bool UNI_Category::isValidNodeType ( const UT_StringRef type_name) const
pure virtual

Returns true if the given node type name is valid in this category.

Implemented in UN_UniCategory.

const UT_StringHolder& UNI_Category::label ( ) const
inline

Returns the label of this category. It is used for user-facing label of the category, such as the name that appears in the upper-right corner of network editor, etc.

Definition at line 51 of file UNI_Category.h.

const UT_StringHolder& UNI_Category::name ( void  ) const
inline

Returns the name of this category. It is used for finding node types in the category, filtering shelved tools in the Tab menu, filtering RMB node menu items, etc.

Definition at line 46 of file UNI_Category.h.

virtual UT_StringHolder UNI_Category::nodeTypeIcon ( const UT_StringRef type_name) const
pure virtual

Returns the name of the icon for the given node type.

Implemented in UN_UniCategory.

virtual UT_StringHolder UNI_Category::nodeTypeLabel ( const UT_StringRef type_name) const
pure virtual

Returns the label of the given node type for the display in UI.

Implemented in UN_UniCategory.

virtual UT_StringArray UNI_Category::nodeTypeNames ( ) const
pure virtual

Returns the list of known node type names in this category.

Implemented in UN_UniCategory.

virtual UT_StringArray UNI_Category::nodeTypeNamesInPrecedenceOrder ( const UT_StringRef type_name) const
pure virtual

Returns node types names in the preferred order for the given node type. Some node types may have several versions as well as namespaces, and Houdini may be configured to prefer one namespace or version over the other. This method returns the node types in that preferred ordered.

Implemented in UN_UniCategory.

virtual UT_Array<UNI_Signature> UNI_Category::nodeTypeSignatures ( const UT_StringRef type_name) const
pure virtual

Returns the list of function signature names node type offers.

Implemented in UN_UniCategory.

virtual ToolInfo UNI_Category::nodeTypeToolInfo ( const UT_StringRef type_name) const
pure virtual

Returns information about a default shelf tool for the given node type.

Implemented in UN_UniCategory.

virtual bool UNI_Category::shouldGenerateToolForNodeType ( const UT_StringRef type_name) const
pure virtual

Returns true if Houdini should create a default shelf tool for the given node type, if there is no such tool already.

Implemented in UN_UniCategory.

virtual UT_StringHolder UNI_Category::subnetNodeTypeName ( ) const
pure virtual

Returns the node type name used for a generic subnet in this context, if there is any. Otherwise, returns an empty string.

Implemented in UN_UniCategory.


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