diff options
Diffstat (limited to 'sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h')
| -rwxr-xr-x[-rw-r--r--] | sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h | 670 |
1 files changed, 335 insertions, 335 deletions
diff --git a/sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h b/sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h index 1492f92..780035a 100644..100755 --- a/sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h +++ b/sdk/extensions/import/apexmodules/nvparutils/nvparameterized/NvParamUtils.h @@ -1,335 +1,335 @@ -// This code contains NVIDIA Confidential Information and is disclosed to you -// under a form of NVIDIA software license agreement provided separately to you. -// -// Notice -// NVIDIA Corporation and its licensors retain all intellectual property and -// proprietary rights in and to this software and related documentation and -// any modifications thereto. Any use, reproduction, disclosure, or -// distribution of this software and related documentation without an express -// license agreement from NVIDIA Corporation is strictly prohibited. -// -// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES -// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO -// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, -// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. -// -// Information and code furnished is believed to be accurate and reliable. -// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such -// information or for any infringement of patents or other rights of third parties that may -// result from its use. No license is granted by implication or otherwise under any patent -// or patent rights of NVIDIA Corporation. Details are subject to change without notice. -// This code supersedes and replaces all information previously supplied. -// NVIDIA Corporation products are not authorized for use as critical -// components in life support devices or systems without express written approval of -// NVIDIA Corporation. -// -// Copyright (c) 2008-2013 NVIDIA Corporation. All rights reserved. - -#ifndef NV_PARAM_UTILS_H -#define NV_PARAM_UTILS_H - -#include "NvParameterized.h" - -// utility methods to operate on NvParameterized data. - -namespace NvParameterized -{ - -/** -\brief 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. - -\param i the parameterized object that will be searched - -\param longName contains the name of the parameter to be found -the longName will work with arrays, structs, and included references - -\param outHandle will 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 const Interface * findParam(const Interface &i,const char *longName, Handle &outHandle); - - -/** -\brief 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. - -\param i the parameterized object that will be searched - -\param longName contains the name of the parameter to be found -the longName will work with arrays, structs, and included references - -\param outHandle will 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 Interface * findParam(Interface &i,const char *longName, Handle &outHandle); - -/** -\brief Container for results of getParamList -*/ -struct ParamResult -{ -public: - /** - \brief Constructor - */ - ParamResult(const char *name, - const char *longName, - const char *className, - const char *instanceName, - const Handle &handle, - int32_t arraySize, - DataType type) - : mArraySize(arraySize), - mInstanceName(instanceName), - mClassName(className), - mName(name), - mLongName(longName), - mHandle(handle), - mDataType(type) - {} - - /** - \brief size of array (if parameter is array) - */ - int32_t mArraySize; - - /** - \brief Name of parameter's parent object - */ - const char *mInstanceName; - - /** - \brief Name of NvParameterized-class of parameter's parent object - */ - const char *mClassName; - - /** - \brief The name of the parameter - */ - const char *mName; - - /** - \brief The fully qualified 'long' name of the parameter - */ - const char *mLongName; - - /** - \brief Use this handle to access the parameter in question - */ - Handle mHandle; - - /** - \brief The type of parameter - */ - DataType mDataType; -}; - -/** -\brief A helper method to retrieve the list of all parameters relative to an interface. - -\param [in] i the input interface -\param [in] className is an optional class name to match to. If this is null, it will return all parameters. -\param [in] paramName is an optional parameter name to match to. If this is null, it will return all parameters. -\param [out] count the number of parameters found -\param [in] recursive if true the search will recurse into every included reference, not just the top parameterized class -\param [in] classesOnly if true the search will only match against class names -\param [in] traits typically 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() - -*/ -PX_INLINE const ParamResult * getParamList(const Interface &i, - const char *className, // name of class to match - const char *paramName, // name of parameter to match - uint32_t &count, - bool recursive, - bool classesOnly, - NvParameterized::Traits *traits); - -/// helper function to free the parameter list returned from getParamList -PX_INLINE void releaseParamList(uint32_t resultCount,const ParamResult *results,NvParameterized::Traits *traits); - -/// helper function to get an NvParameterized array size -PX_INLINE bool getParamArraySize(const Interface &pm, const char *name, int32_t &arraySize); - -/// helper function to resize an NvParameterized array -PX_INLINE bool resizeParamArray(Interface &pm, const char *name, int32_t newSize); - -/** -\brief Callback container for getNamedReferences -*/ -class NamedReferenceInterface -{ -public: - /** - \brief Destructor - */ - virtual ~NamedReferenceInterface() {} - /** - \brief Callback - - Calls back to the user with any named reference (not included references) in the NvParameterized::Interface - If the user returns a NULL pointer, than the original named reference is left alone. - If the user returns a non-NULL pointer, than the named reference is replaced with the 'const char *' returned. - */ - virtual const char * namedReferenceCallback(const char *className,const char *namedReference,Handle &handle) = 0; -}; - -/// Calls back for every non-included named reference. -PX_INLINE uint32_t getNamedReferences(const Interface &i, - NamedReferenceInterface &namedReference, - bool recursive); - -/** -\brief Callback container for getReferences -*/ -class ReferenceInterface -{ -public: - /** - \brief Destructor - */ - virtual ~ReferenceInterface() {} - /** - \brief Callback - - Calls back to the user with any reference (named or included or both) in the NvParameterized::Interface. - */ - virtual void referenceCallback(Handle &handle) = 0; -}; - -/// Calls back for every reference (named or included or both). -PX_INLINE void getReferences(const Interface &iface, - ReferenceInterface &cb, - bool named, - bool included, - bool recursive); - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamBool(const Interface &pm, const char *name, bool &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamBool(Interface &pm, const char *name, bool val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamString(const Interface &pm, const char *name, const char *&val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamString(Interface &pm, const char *name, const char *val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamEnum(const Interface &pm, const char *name, const char *&val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamEnum(Interface &pm, const char *name, const char *val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamRef(const Interface &pm, const char *name, NvParameterized::Interface *&val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamRef(Interface &pm, const char *name, NvParameterized::Interface *val, bool doDestroyOld = false) ; - -/// helper function to init 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 get an NvParameterized value -PX_INLINE bool getParamI8(const Interface &pm, const char *name, int8_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamI8(Interface &pm, const char *name, int8_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamI16(const Interface &pm, const char *name, int16_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamI16(Interface &pm, const char *name, int16_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamI32(const Interface &pm, const char *name, int32_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamI32(Interface &pm, const char *name, int32_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamI64(const Interface &pm, const char *name, int64_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamI64(Interface &pm, const char *name, int64_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamU8(const Interface &pm, const char *name, uint8_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamU8(Interface &pm, const char *name, uint8_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamU16(const Interface &pm, const char *name, uint16_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamU16(Interface &pm, const char *name, uint16_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamU32(const Interface &pm, const char *name, uint32_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamU32(Interface &pm, const char *name, uint32_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamU64(const Interface &pm, const char *name, uint64_t &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamU64(Interface &pm, const char *name, uint64_t val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamF32(const Interface &pm, const char *name, float &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamF32(Interface &pm, const char *name, float val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamF64(const Interface &pm, const char *name, double &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamF64(Interface &pm, const char *name, double val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamVec2(const Interface &pm, const char *name, physx::PxVec2 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamVec2(Interface &pm, const char *name, const physx::PxVec2 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamVec3(const Interface &pm, const char *name, physx::PxVec3 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamVec3(Interface &pm, const char *name, const physx::PxVec3 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamVec4(const Interface &pm, const char *name, physx::PxVec4 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamVec4(Interface &pm, const char *name, const physx::PxVec4 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamQuat(const Interface &pm, const char *name, physx::PxQuat &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamQuat(Interface &pm, const char *name, const physx::PxQuat &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamMat33(const Interface &pm, const char *name, physx::PxMat33 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamMat33(Interface &pm, const char *name, const physx::PxMat33 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamMat44(const Interface &pm, const char *name, physx::PxMat44 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamMat44(Interface &pm, const char *name, const physx::PxMat44 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamBounds3(const Interface &pm, const char *name, physx::PxBounds3 &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamBounds3(Interface &pm, const char *name, const physx::PxBounds3 &val) ; - -/// helper function to get an NvParameterized value -PX_INLINE bool getParamTransform(const Interface &pm, const char *name, physx::PxTransform &val); -/// helper function to set an NvParameterized value -PX_INLINE bool setParamTransform(Interface &pm, const char *name, const physx::PxTransform &val) ; - -} // namespace NvParameterized - - -#include "NvParamUtils.inl" - -#endif // NV_PARAM_UTILS_H +// This code contains NVIDIA Confidential Information and is disclosed to you
+// under a form of NVIDIA software license agreement provided separately to you.
+//
+// Notice
+// NVIDIA Corporation and its licensors retain all intellectual property and
+// proprietary rights in and to this software and related documentation and
+// any modifications thereto. Any use, reproduction, disclosure, or
+// distribution of this software and related documentation without an express
+// license agreement from NVIDIA Corporation is strictly prohibited.
+//
+// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
+// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
+// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
+// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+//
+// Information and code furnished is believed to be accurate and reliable.
+// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
+// information or for any infringement of patents or other rights of third parties that may
+// result from its use. No license is granted by implication or otherwise under any patent
+// or patent rights of NVIDIA Corporation. Details are subject to change without notice.
+// This code supersedes and replaces all information previously supplied.
+// NVIDIA Corporation products are not authorized for use as critical
+// components in life support devices or systems without express written approval of
+// NVIDIA Corporation.
+//
+// Copyright (c) 2008-2013 NVIDIA Corporation. All rights reserved.
+
+#ifndef NV_PARAM_UTILS_H
+#define NV_PARAM_UTILS_H
+
+#include "NvParameterized.h"
+
+// utility methods to operate on NvParameterized data.
+
+namespace NvParameterized
+{
+
+/**
+\brief 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.
+
+\param i the parameterized object that will be searched
+
+\param longName contains the name of the parameter to be found
+the longName will work with arrays, structs, and included references
+
+\param outHandle will 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 const Interface * findParam(const Interface &i,const char *longName, Handle &outHandle);
+
+
+/**
+\brief 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.
+
+\param i the parameterized object that will be searched
+
+\param longName contains the name of the parameter to be found
+the longName will work with arrays, structs, and included references
+
+\param outHandle will 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 Interface * findParam(Interface &i,const char *longName, Handle &outHandle);
+
+/**
+\brief Container for results of getParamList
+*/
+struct ParamResult
+{
+public:
+ /**
+ \brief Constructor
+ */
+ ParamResult(const char *name,
+ const char *longName,
+ const char *className,
+ const char *instanceName,
+ const Handle &handle,
+ int32_t arraySize,
+ DataType type)
+ : mArraySize(arraySize),
+ mInstanceName(instanceName),
+ mClassName(className),
+ mName(name),
+ mLongName(longName),
+ mHandle(handle),
+ mDataType(type)
+ {}
+
+ /**
+ \brief size of array (if parameter is array)
+ */
+ int32_t mArraySize;
+
+ /**
+ \brief Name of parameter's parent object
+ */
+ const char *mInstanceName;
+
+ /**
+ \brief Name of NvParameterized-class of parameter's parent object
+ */
+ const char *mClassName;
+
+ /**
+ \brief The name of the parameter
+ */
+ const char *mName;
+
+ /**
+ \brief The fully qualified 'long' name of the parameter
+ */
+ const char *mLongName;
+
+ /**
+ \brief Use this handle to access the parameter in question
+ */
+ Handle mHandle;
+
+ /**
+ \brief The type of parameter
+ */
+ DataType mDataType;
+};
+
+/**
+\brief A helper method to retrieve the list of all parameters relative to an interface.
+
+\param [in] i the input interface
+\param [in] className is an optional class name to match to. If this is null, it will return all parameters.
+\param [in] paramName is an optional parameter name to match to. If this is null, it will return all parameters.
+\param [out] count the number of parameters found
+\param [in] recursive if true the search will recurse into every included reference, not just the top parameterized class
+\param [in] classesOnly if true the search will only match against class names
+\param [in] traits typically 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()
+
+*/
+PX_INLINE const ParamResult * getParamList(const Interface &i,
+ const char *className, // name of class to match
+ const char *paramName, // name of parameter to match
+ uint32_t &count,
+ bool recursive,
+ bool classesOnly,
+ NvParameterized::Traits *traits);
+
+/// helper function to free the parameter list returned from getParamList
+PX_INLINE void releaseParamList(uint32_t resultCount,const ParamResult *results,NvParameterized::Traits *traits);
+
+/// helper function to get an NvParameterized array size
+PX_INLINE bool getParamArraySize(const Interface &pm, const char *name, int32_t &arraySize);
+
+/// helper function to resize an NvParameterized array
+PX_INLINE bool resizeParamArray(Interface &pm, const char *name, int32_t newSize);
+
+/**
+\brief Callback container for getNamedReferences
+*/
+class NamedReferenceInterface
+{
+public:
+ /**
+ \brief Destructor
+ */
+ virtual ~NamedReferenceInterface() {}
+ /**
+ \brief Callback
+
+ Calls back to the user with any named reference (not included references) in the NvParameterized::Interface
+ If the user returns a NULL pointer, than the original named reference is left alone.
+ If the user returns a non-NULL pointer, than the named reference is replaced with the 'const char *' returned.
+ */
+ virtual const char * namedReferenceCallback(const char *className,const char *namedReference,Handle &handle) = 0;
+};
+
+/// Calls back for every non-included named reference.
+PX_INLINE uint32_t getNamedReferences(const Interface &i,
+ NamedReferenceInterface &namedReference,
+ bool recursive);
+
+/**
+\brief Callback container for getReferences
+*/
+class ReferenceInterface
+{
+public:
+ /**
+ \brief Destructor
+ */
+ virtual ~ReferenceInterface() {}
+ /**
+ \brief Callback
+
+ Calls back to the user with any reference (named or included or both) in the NvParameterized::Interface.
+ */
+ virtual void referenceCallback(Handle &handle) = 0;
+};
+
+/// Calls back for every reference (named or included or both).
+PX_INLINE void getReferences(const Interface &iface,
+ ReferenceInterface &cb,
+ bool named,
+ bool included,
+ bool recursive);
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamBool(const Interface &pm, const char *name, bool &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamBool(Interface &pm, const char *name, bool val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamString(const Interface &pm, const char *name, const char *&val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamString(Interface &pm, const char *name, const char *val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamEnum(const Interface &pm, const char *name, const char *&val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamEnum(Interface &pm, const char *name, const char *val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamRef(const Interface &pm, const char *name, NvParameterized::Interface *&val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamRef(Interface &pm, const char *name, NvParameterized::Interface *val, bool doDestroyOld = false) ;
+
+/// helper function to init 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 get an NvParameterized value
+PX_INLINE bool getParamI8(const Interface &pm, const char *name, int8_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamI8(Interface &pm, const char *name, int8_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamI16(const Interface &pm, const char *name, int16_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamI16(Interface &pm, const char *name, int16_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamI32(const Interface &pm, const char *name, int32_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamI32(Interface &pm, const char *name, int32_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamI64(const Interface &pm, const char *name, int64_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamI64(Interface &pm, const char *name, int64_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamU8(const Interface &pm, const char *name, uint8_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamU8(Interface &pm, const char *name, uint8_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamU16(const Interface &pm, const char *name, uint16_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamU16(Interface &pm, const char *name, uint16_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamU32(const Interface &pm, const char *name, uint32_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamU32(Interface &pm, const char *name, uint32_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamU64(const Interface &pm, const char *name, uint64_t &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamU64(Interface &pm, const char *name, uint64_t val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamF32(const Interface &pm, const char *name, float &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamF32(Interface &pm, const char *name, float val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamF64(const Interface &pm, const char *name, double &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamF64(Interface &pm, const char *name, double val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamVec2(const Interface &pm, const char *name, physx::PxVec2 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamVec2(Interface &pm, const char *name, const physx::PxVec2 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamVec3(const Interface &pm, const char *name, physx::PxVec3 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamVec3(Interface &pm, const char *name, const physx::PxVec3 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamVec4(const Interface &pm, const char *name, physx::PxVec4 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamVec4(Interface &pm, const char *name, const physx::PxVec4 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamQuat(const Interface &pm, const char *name, physx::PxQuat &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamQuat(Interface &pm, const char *name, const physx::PxQuat &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamMat33(const Interface &pm, const char *name, physx::PxMat33 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamMat33(Interface &pm, const char *name, const physx::PxMat33 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamMat44(const Interface &pm, const char *name, physx::PxMat44 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamMat44(Interface &pm, const char *name, const physx::PxMat44 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamBounds3(const Interface &pm, const char *name, physx::PxBounds3 &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamBounds3(Interface &pm, const char *name, const physx::PxBounds3 &val) ;
+
+/// helper function to get an NvParameterized value
+PX_INLINE bool getParamTransform(const Interface &pm, const char *name, physx::PxTransform &val);
+/// helper function to set an NvParameterized value
+PX_INLINE bool setParamTransform(Interface &pm, const char *name, const physx::PxTransform &val) ;
+
+} // namespace NvParameterized
+
+
+#include "NvParamUtils.inl"
+
+#endif // NV_PARAM_UTILS_H
|