HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CVEX_ValueListT< PREC > Class Template Reference

List of input or output values for a CVEX_Context. More...

#include <CVEX_ValueList.h>

+ Inheritance diagram for CVEX_ValueListT< PREC >:

Public Member Functions

 CVEX_ValueListT ()
 
 ~CVEX_ValueListT ()
 
const CVEX_ValueT< PREC > * getValue (int i) const
 Get a value by index. More...
 
CVEX_ValueT< PREC > * getValue (int i)
 
const CVEX_ValueT< PREC > * getValue (const UT_StringRef &name, CVEX_Type type) const
 
CVEX_ValueT< PREC > * getValue (const UT_StringRef &name, CVEX_Type type)
 
const CVEX_ValueT< PREC > * getValue (const UT_StringRef &name) const
 Get a value by name. Returns NULL if there's no value by that name. More...
 
CVEX_ValueT< PREC > * getValue (const UT_StringRef &name)
 
bool addValue (const UT_StringHolder &name, CVEX_Type type, bool varying)
 
bool addValue (const UT_StringHolder &name, CVEX_Type type, void *data, int array_size, bool isconstant)
 
bool addValue (const UT_StringHolder &name, CVEX_StringArray &strings, bool isconstant)
 
bool addValue (const UT_StringHolder &name, CVEX_DictArray &strings, bool isconstant)
 
bool addValue (const UT_StringHolder &name, UT_PackedArrayOfArrays< VEXint< PREC >> &intdata, bool isconstant)
 
int entries () const
 
int size () const
 
const CVEX_ValueT< PREC > * operator[] (int i) const
 
CVEX_ValueT< PREC > * operator[] (int i)
 
CVEX_ValueT< PREC > * operator() (int i)
 
CVEX_ValueT< PREC > * operator() (const UT_StringRef &name, CVEX_Type type)
 

Friends

template<VEX_Precision ALLPREC>
class CVEX_ContextT
 

Additional Inherited Members

- Protected Member Functions inherited from UT_NonCopyableNS::UT_NonCopyable
 UT_NonCopyable ()=default
 
 ~UT_NonCopyable ()=default
 
 UT_NonCopyable (const UT_NonCopyable &)=delete
 
UT_NonCopyableoperator= (const UT_NonCopyable &)=delete
 

Detailed Description

template<VEX_Precision PREC>
class CVEX_ValueListT< PREC >

List of input or output values for a CVEX_Context.

This class maintains a list of the input and output parameters for a CVEX context.

Both input and output variables are associated with parameters on the VEX function being run. Output variables are those flagged with the export keyword.

Examples:
CVEX/cvexsample.C.

Definition at line 31 of file CVEX_ValueList.h.

Constructor & Destructor Documentation

template<VEX_Precision PREC>
CVEX_ValueListT< PREC >::CVEX_ValueListT ( )
template<VEX_Precision PREC>
CVEX_ValueListT< PREC >::~CVEX_ValueListT ( )

Member Function Documentation

template<VEX_Precision PREC>
bool CVEX_ValueListT< PREC >::addValue ( const UT_StringHolder name,
CVEX_Type  type,
bool  varying 
)

Add a value by name type and varying flag. This fails if:

template<VEX_Precision PREC>
bool CVEX_ValueListT< PREC >::addValue ( const UT_StringHolder name,
CVEX_Type  type,
void data,
int  array_size,
bool  isconstant 
)

Add a value by name, type and provide data.

Note
Users should call CVEX_Context::addInput()
template<VEX_Precision PREC>
bool CVEX_ValueListT< PREC >::addValue ( const UT_StringHolder name,
CVEX_StringArray strings,
bool  isconstant 
)

Add a string value (with data)

Note
Users should call CVEX_Context::addInput()
template<VEX_Precision PREC>
bool CVEX_ValueListT< PREC >::addValue ( const UT_StringHolder name,
CVEX_DictArray strings,
bool  isconstant 
)
template<VEX_Precision PREC>
bool CVEX_ValueListT< PREC >::addValue ( const UT_StringHolder name,
UT_PackedArrayOfArrays< VEXint< PREC >> &  intdata,
bool  isconstant 
)

Add an array of integer value (with data)

Note
Users should call CVEX_Context::addInput()
template<VEX_Precision PREC>
int CVEX_ValueListT< PREC >::entries ( ) const
inline

Returns the number of values in the list

Examples:
CVEX/cvexsample.C.

Definition at line 39 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
const CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( int  i) const
inline

Get a value by index.

Examples:
CVEX/cvexsample.C.

Definition at line 44 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( int  i)
inline

Definition at line 45 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
const CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( const UT_StringRef name,
CVEX_Type  type 
) const

Get a value by name and type. Returns NULL if there's no value by that name and type.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( const UT_StringRef name,
CVEX_Type  type 
)
template<VEX_Precision PREC>
const CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( const UT_StringRef name) const
inline

Get a value by name. Returns NULL if there's no value by that name.

Definition at line 53 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::getValue ( const UT_StringRef name)
inline

Definition at line 55 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::operator() ( int  i)
inline

Convenience operators

Definition at line 91 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::operator() ( const UT_StringRef name,
CVEX_Type  type 
)
inline

Convenience operators

Definition at line 92 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
const CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::operator[] ( int  i) const
inline

Convenience operators

Definition at line 88 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
CVEX_ValueT<PREC>* CVEX_ValueListT< PREC >::operator[] ( int  i)
inline

Convenience operators

Definition at line 89 of file CVEX_ValueList.h.

template<VEX_Precision PREC>
int CVEX_ValueListT< PREC >::size ( void  ) const
inline

Returns the number of values in the list

Definition at line 40 of file CVEX_ValueList.h.

Friends And Related Function Documentation

template<VEX_Precision PREC>
template<VEX_Precision ALLPREC>
friend class CVEX_ContextT
friend

Definition at line 110 of file CVEX_ValueList.h.


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