APEX Framework: NvParameterized Namespace Reference

NVIDIA APEX

NvParameterized Namespace Reference

NvParameterized namespace. More...

Classes

class  Hint
 Provides hints about the parameter definition. More...
class  Definition
 Provides information about a parameter. More...
class  Handle
 Provides access to individual parameters within the NvParameterized object. More...
class  SerializationCallback
 A callback class for notification just prior to serialization. More...
class  Interface
 Represents the interface to the NvParameterized object. More...
class  Factory
 Interface class for NvParameterized factories. More...
class  Conversion
 Interface class for legacy object conversions. More...
class  Traits
 Interface class for user traits. More...
struct  ParamResult
 Container for results of getParamList. More...
class  NamedReferenceInterface
 Callback container for getNamedReferences. More...
class  ReferenceInterface
 Callback container for getReferences. More...
struct  ParameterFind
 Finds parameter in NvParameterized. More...
struct  ParameterList
 Parameter list. More...
class  WrappedNamedReference
 WrappedNamedReference. More...
struct  SerializePlatform
 Platform descriptor. More...
class  Serializer
 Interface class for serializer-deserializer of NvParameterized objects. More...

Enumerations

enum  ErrorType {
  ERROR_NONE = 0,
  ERROR_TYPE_NOT_SUPPORTED,
  ERROR_INDEX_OUT_OF_RANGE,
  ERROR_INVALID_PARAMETER_NAME,
  ERROR_INVALID_PARAMETER_HANDLE,
  ERROR_CAST_FAILED,
  ERROR_INVALID_ENUM_VAL,
  ERROR_SYNTAX_ERROR_IN_NAME,
  ERROR_IS_LEAF_NODE,
  ERROR_RESULT_BUFFER_OVERFLOW,
  ERROR_NAME_DOES_NOT_MATCH_DEFINITION,
  ERROR_NOT_AN_ARRAY,
  ERROR_ARRAY_SIZE_IS_FIXED,
  ERROR_ARRAY_RESIZING_IS_NOT_SUPPORTED,
  ERROR_ARRAY_IS_TOO_SMALL,
  ERROR_INVALID_ARRAY_DIMENSION,
  ERROR_INVALID_ARRAY_SIZE,
  ERROR_PARAMETER_HANDLE_DOES_NOT_MATCH_CLASS,
  ERROR_MEMORY_ALLOCATION_FAILURE,
  ERROR_INVALID_REFERENCE_INCLUDE_HINT,
  ERROR_INVALID_REFERENCE_VALUE,
  ERROR_PARAMETER_HANDLE_NOT_INITIALIZED,
  ERROR_PARAMETER_DEFINITIONS_DO_NOT_MATCH,
  ERROR_HANDLE_MISSING_INTERFACE_POINTER,
  ERROR_HANDLE_INVALID_INTERFACE_POINTER,
  ERROR_INVALID_CALL_ON_NAMED_REFERENCE,
  ERROR_NOT_IMPLEMENTED,
  ERROR_OBJECT_CONSTRUCTION_FAILED,
  ERROR_MODIFY_CONST_HANDLE
}
 Various errors that may be returned from NvParameterized calls.
enum  DataType {
  TYPE_UNDEFINED = 0,
  TYPE_ARRAY = 1,
  TYPE_STRUCT = 2,
  TYPE_BOOL = 3,
  TYPE_STRING = 4,
  TYPE_ENUM = 5,
  TYPE_REF = 6,
  TYPE_I8 = 7,
  TYPE_I16 = 8,
  TYPE_I32 = 9,
  TYPE_I64 = 10,
  TYPE_U8 = 11,
  TYPE_U16 = 12,
  TYPE_U32 = 13,
  TYPE_U64 = 14,
  TYPE_F32 = 15,
  TYPE_F64 = 16,
  TYPE_VEC2 = 17,
  TYPE_VEC3 = 18,
  TYPE_VEC4 = 19,
  TYPE_QUAT = 20,
  TYPE_MAT33 = 21,
  TYPE_BOUNDS3 = 23,
  TYPE_MAT44 = 24,
  TYPE_POINTER = 25,
  TYPE_TRANSFORM = 26,
  TYPE_MAT34 = 27,
  TYPE_LAST
}
 These types are supported in NvParameterized schemas. More...
enum  TokenizerResultType {
  TOKENIZER_RESULT_NONE,
  TOKENIZER_RESULT_BUFFER_OVERFLOW,
  TOKENIZER_RESULT_SYNTAX_ERROR,
  TOKENIZER_RESULT_STRUCT_MEMBER,
  TOKENIZER_RESULT_ARRAY_INDEX
}
 Enum of tokenizer result types.

Functions

PX_INLINE TokenizerResultType getStructMemberToken (const char *long_name, char *token, uint32_t max_token_len, uint32_t &offset)
 Get struct member token.
PX_INLINE TokenizerResultType getArrayMemberToken (const char *long_name, char *token, uint32_t max_token_len, uint32_t &offset)
 Get array member token.
PX_INLINE TokenizerResultType getNextToken (const char *long_name, char *token, uint32_t max_token_len, uint32_t &offset)
 Get next token.
PX_INLINE int local_strcat_s (char *dest, size_t size, const char *src)
 The local_strcat_s function appends strSource to strDestination and terminates the resulting string with a null character.
int32_t local_sprintf_s (char *_DstBuf, size_t _DstSize, const char *_Format,...)
 The local_sprintf_s function wraps the va_list functionality required for PxVxprintf.
PX_INLINE const InterfacefindParam (const Interface &i, const char *longName, Handle &outHandle)
 Recursively finds a parameter with the given name.
PX_INLINE InterfacefindParam (Interface &i, const char *longName, Handle &outHandle)
 Recursively finds a parameter with the given name.
PX_INLINE const ParamResultgetParamList (const Interface &i, const char *className, const char *paramName, uint32_t &count, bool recursive, bool classesOnly, NvParameterized::Traits *traits)
 A helper method to retrieve the list of all parameters relative to an interface.
PX_INLINE void releaseParamList (uint32_t resultCount, const ParamResult *results, NvParameterized::Traits *traits)
 helper function to free the parameter list returned from getParamList
PX_INLINE bool getParamArraySize (const Interface &pm, const char *name, int32_t &arraySize)
 helper function to get an NvParameterized array size
PX_INLINE bool resizeParamArray (Interface &pm, const char *name, int32_t newSize)
 helper function to resize an NvParameterized array
PX_INLINE uint32_t getNamedReferences (const Interface &i, NamedReferenceInterface &namedReference, bool recursive)
 Calls back for every non-included named reference.
PX_INLINE void getReferences (const Interface &iface, ReferenceInterface &cb, bool named, bool included, bool recursive)
 Calls back for every reference (named or included or both).
PX_INLINE bool getParamBool (const Interface &pm, const char *name, bool &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamBool (Interface &pm, const char *name, bool val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamString (const Interface &pm, const char *name, const char *&val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamString (Interface &pm, const char *name, const char *val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamEnum (const Interface &pm, const char *name, const char *&val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamEnum (Interface &pm, const char *name, const char *val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamRef (const Interface &pm, const char *name, NvParameterized::Interface *&val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamRef (Interface &pm, const char *name, NvParameterized::Interface *val, bool doDestroyOld=false)
 helper function to set an NvParameterized value
PX_INLINE bool initParamRef (Interface &pm, const char *name, const char *className, bool doDestroyOld=false)
 helper function to init an NvParameterized value
PX_INLINE bool initParamRef (Interface &pm, const char *name, const char *className, const char *objName, bool doDestroyOld=false)
 helper function to init an NvParameterized value
PX_INLINE bool getParamI8 (const Interface &pm, const char *name, int8_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamI8 (Interface &pm, const char *name, int8_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamI16 (const Interface &pm, const char *name, int16_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamI16 (Interface &pm, const char *name, int16_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamI32 (const Interface &pm, const char *name, int32_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamI32 (Interface &pm, const char *name, int32_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamI64 (const Interface &pm, const char *name, int64_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamI64 (Interface &pm, const char *name, int64_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamU8 (const Interface &pm, const char *name, uint8_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamU8 (Interface &pm, const char *name, uint8_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamU16 (const Interface &pm, const char *name, uint16_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamU16 (Interface &pm, const char *name, uint16_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamU32 (const Interface &pm, const char *name, uint32_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamU32 (Interface &pm, const char *name, uint32_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamU64 (const Interface &pm, const char *name, uint64_t &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamU64 (Interface &pm, const char *name, uint64_t val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamF32 (const Interface &pm, const char *name, float &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamF32 (Interface &pm, const char *name, float val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamF64 (const Interface &pm, const char *name, double &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamF64 (Interface &pm, const char *name, double val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamVec2 (const Interface &pm, const char *name, physx::PxVec2 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamVec2 (Interface &pm, const char *name, const physx::PxVec2 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamVec3 (const Interface &pm, const char *name, physx::PxVec3 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamVec3 (Interface &pm, const char *name, const physx::PxVec3 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamVec4 (const Interface &pm, const char *name, physx::PxVec4 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamVec4 (Interface &pm, const char *name, const physx::PxVec4 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamQuat (const Interface &pm, const char *name, physx::PxQuat &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamQuat (Interface &pm, const char *name, const physx::PxQuat &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamMat33 (const Interface &pm, const char *name, physx::PxMat33 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamMat33 (Interface &pm, const char *name, const physx::PxMat33 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamMat44 (const Interface &pm, const char *name, physx::PxMat44 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamMat44 (Interface &pm, const char *name, const physx::PxMat44 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamBounds3 (const Interface &pm, const char *name, physx::PxBounds3 &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamBounds3 (Interface &pm, const char *name, const physx::PxBounds3 &val)
 helper function to set an NvParameterized value
PX_INLINE bool getParamTransform (const Interface &pm, const char *name, physx::PxTransform &val)
 helper function to get an NvParameterized value
PX_INLINE bool setParamTransform (Interface &pm, const char *name, const physx::PxTransform &val)
 helper function to set an NvParameterized value
int32_t local_strcmp (const char *s1, const char *s2)
 local_strcmp
int32_t local_stricmp (const char *s1, const char *s2)
 local_stricmp
PX_INLINE void findParameter (const NvParameterized::Interface &obj, Handle &handle, ParameterFind &pf, bool fromArray=false)
 findParameter
PX_INLINE void listParameters (const NvParameterized::Interface &obj, Handle &handle, ParameterList &pf, int32_t parentArraySize)
 listParameters
PX_INLINE void getReferences (const Interface &iface, Handle &handle, ReferenceInterface &cb, bool named, bool included, bool recursive)
 Calls back for every reference.
PX_INLINE bool DoCompilerVersMatch (SerializePlatform::CompilerType t, uint32_t v1, uint32_t v2)
 Serializer::SerializePlatform and Serializer::DeserializedData inline implementation.
PX_INLINE bool DoOsVersMatch (SerializePlatform::OsType t, uint32_t v1, uint32_t v2)
 Check binary compatibility of OS versions.

Detailed Description

NvParameterized namespace.

NvParameterized inline implementation.


Enumeration Type Documentation

These types are supported in NvParameterized schemas.

Warning:
Do not change values of enums!
Enumerator:
TYPE_ARRAY 

Array type, size may be static or dynamic.

See also:
Definition::arraySizeIsFixed(), Handle::resizeArray(), Handle::getArraySize()
TYPE_STRING 

String type, represented by a const char pointer.

See also:
Handle::getParamString(), Handle::setParamString()
TYPE_ENUM 

Enum type, represented by a const char pointer.

See also:
Definition::numEnumVals(), Definition::enumVal(), Handle::getParamEnum(), Handle::setParamEnum()
TYPE_REF 

Reference type, may be a named or included reference.

References are intended to be used in instances where a class needs either a named reference (an emitter asset references an IOFX and IOS asset), or an included reference (a destructible asset that serializes an APEX render mesh). References may also used to create a unions within a class. Each reference will contain one or more variants to allow for unions.

See also:
Handle::initParamRef(), Definition::numRefVariants(), Definition::refVariantVal(), Handle::initParamRef(), Handle::getParamRef(), Handle::setParamRef()

Function Documentation

PX_INLINE bool NvParameterized::DoCompilerVersMatch ( SerializePlatform::CompilerType  t,
uint32_t  v1,
uint32_t  v2 
)

Serializer::SerializePlatform and Serializer::DeserializedData inline implementation.

Check binary compatibility of compiler versions

PX_INLINE const Interface * NvParameterized::findParam ( const Interface &  i,
const char *  longName,
Handle &  outHandle 
)

Recursively finds a parameter with the given name.

This method will recursively search through not only this parameterized but all referenced parameterized objects as well. It sets the handle and returns the NvParameterized::Interface in which the name was found.

Parameters:
ithe parameterized object that will be searched
longNamecontains the name of the parameter to be found the longName will work with arrays, structs, and included references
outHandlewill contain the output handle that provides read-only access to the specified parameter
Returns:
the NvParameterized::Interface pointer in which the parameter is contained (this could be different than the top level NvParameterized::Interface if the parameter is contained in an included reference)
PX_INLINE Interface * NvParameterized::findParam ( Interface &  i,
const char *  longName,
Handle &  outHandle 
)

Recursively finds a parameter with the given name.

This method will recursively search through not only this parameterized but all referenced parameterized objects as well. It sets the handle and returns the NvParameterized::Interface in which the name was found.

Parameters:
ithe parameterized object that will be searched
longNamecontains the name of the parameter to be found the longName will work with arrays, structs, and included references
outHandlewill contain the output handle that provides read-write access to the specified parameter
Returns:
the NvParameterized::Interface pointer in which the parameter is contained (this could be different than the top level NvParameterized::Interface if the parameter is contained in an included reference)
PX_INLINE const ParamResult * NvParameterized::getParamList ( const Interface &  i,
const char *  className,
const char *  paramName,
uint32_t &  count,
bool  recursive,
bool  classesOnly,
NvParameterized::Traits traits 
)

A helper method to retrieve the list of all parameters relative to an interface.

Gets every parameter in an NvParameterized Interface class.

Parameters:
[in]ithe input interface
[in]classNameis an optional class name to match to. If this is null, it will return all parameters.
[in]paramNameis an optional parameter name to match to. If this is null, it will return all parameters.
[out]countthe number of parameters found
[in]recursiveif true the search will recurse into every included reference, not just the top parameterized class
[in]classesOnlyif true the search will only match against class names
[in]traitstypically the APEX traits class, used to allocate the ParamResult, see ApexSDK::getParameterizedTraits()
Note:
The return pointer is allocated by the NvParameterized Traits class and should be freed by calling releaseParamList()
The return pointer is allocated by the NvParameterized Traits class and should be freed by calling releaseParamList

Generated on Fri Dec 15 2017 13:58:41

Copyright © 2012-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved.