APEX Framework: nvidia::apex::ApexSDK Class Reference

NVIDIA APEX

nvidia::apex::ApexSDK Class Reference

The ApexSDK abstraction. Manages scenes and modules. More...

#include <ApexSDK.h>

Inheritance diagram for nvidia::apex::ApexSDK:
nvidia::apex::ApexInterface nvidia::apex::RWLockable

List of all members.

Public Member Functions

virtual ScenecreateScene (const SceneDesc &)=0
 Create an APEX Scene.
virtual void releaseScene (Scene *)=0
 Release an APEX Scene.
virtual AssetPreviewScenecreateAssetPreviewScene ()=0
 Create an APEX Asset Preview Scene.
virtual void releaseAssetPreviewScene (AssetPreviewScene *nxScene)=0
 Release an APEX Asset Preview Scene.
virtual ModulecreateModule (const char *name, ApexCreateError *err=NULL)=0
 Create/Load a module.
virtual const PhysXObjectDescgetPhysXObjectInfo (const PxActor *actor) const =0
 Return an object describing how APEX is using the PhysX Actor.
virtual const PhysXObjectDescgetPhysXObjectInfo (const PxShape *shape) const =0
 Return an object describing how APEX is using the PhysX Shape.
virtual const PhysXObjectDescgetPhysXObjectInfo (const PxJoint *joint) const =0
 Return an object describing how APEX is using the PhysX Joint.
virtual const PhysXObjectDescgetPhysXObjectInfo (const PxCloth *cloth) const =0
 Return an object describing how APEX is using the PhysX Cloth.
virtual PxCooking * getCookingInterface ()=0
 Returns the cooking interface.
virtual PX_DEPRECATED
PxErrorCallback * 
getOutputStream ()=0
 Return the user error callback.
virtual PxErrorCallback * getErrorCallback () const =0
 Return the user error callback.
virtual PxAllocatorCallback * getAllocator () const =0
 Return the user allocator callback.
virtual ResourceProvidergetNamedResourceProvider ()=0
 Return the named resource provider.
virtual PxFileBuf * createStream (const char *filename, PxFileBuf::OpenMode mode)=0
 Return an APEX PxFileBuf instance. For use by APEX tools and samples, not by APEX internally. Internally, APEX will use an PxFileBuf directly provided by the user.
virtual PxFileBuf * createMemoryReadStream (const void *mem, uint32_t len)=0
 Return a PxFileBuf which reads from a buffer in memory.
virtual PxFileBuf * createMemoryWriteStream (uint32_t alignment=0)=0
 Return a PxFileBuf which writes to memory.
virtual const void * getMemoryWriteBuffer (PxFileBuf &stream, uint32_t &len)=0
 Return the address and length of the contents of a memory write buffer stream.
virtual void releaseMemoryReadStream (PxFileBuf &stream)=0
 Release a previously created PxFileBuf used as a read stream.
virtual void releaseMemoryWriteStream (PxFileBuf &stream)=0
 Release a previously created PxFileBuf used as a write stream.
virtual PxPhysics * getPhysXSDK ()=0
 Return the PhysX SDK.
virtual uint32_t getNbModules ()=0
 Return the number of modules.
virtual Module ** getModules ()=0
 Return an array of module pointers.
virtual void releaseModule (Module *module)=0
 Release a previously loaded module.
virtual RenderDebugInterfacecreateApexRenderDebug (RENDER_DEBUG::RenderDebugInterface *iface, bool useRemoteDebugVisualization=false)=0
 Creates an ApexDebugRender interface.
virtual void releaseApexRenderDebug (RenderDebugInterface &debug)=0
 Releases an ApexDebugRender interface.
virtual SphereShapecreateApexSphereShape ()=0
 Creates an ApexSphereShape interface.
virtual CapsuleShapecreateApexCapsuleShape ()=0
 Creates an ApexCapsuleShape interface.
virtual BoxShapecreateApexBoxShape ()=0
 Creates an ApexBoxShape interface.
virtual HalfSpaceShapecreateApexHalfSpaceShape ()=0
 Creates an ApexHalfSpaceShape interface.
virtual void releaseApexShape (Shape &shape)=0
 Release an Shape interface.
virtual uint32_t forceLoadAssets ()=0
 Return the number of assets force loaded by all of the existing APEX modules.
virtual bool getAuthorableObjectNames (const char **authTypeNames, uint32_t &outCount, uint32_t inCount)=0
 Get a list of the APEX authorable types.
virtual ::NvParameterized::TraitsgetParameterizedTraits ()=0
 Get the a pointer to APEX's instance of the NvParameterized::Traits class.
virtual AssetcreateAsset (AssetAuthoring &, const char *name)=0
 Creates an APEX asset from an AssetAuthoring object.
virtual AssetcreateAsset (::NvParameterized::Interface *, const char *name)=0
 Creates an APEX asset from a parameterized object.
virtual void releaseAsset (Asset &)=0
 Release an APEX asset.
virtual AssetAuthoringcreateAssetAuthoring (const char *authorTypeName)=0
 Creates an APEX asset authoring object.
virtual AssetAuthoringcreateAssetAuthoring (const char *authorTypeName, const char *name)=0
 Create an APEX asset authoring object with a name.
virtual AssetAuthoringcreateAssetAuthoring (::NvParameterized::Interface *, const char *name)=0
 Create an APEX asset authoring object from a parameterized object.
virtual void releaseAssetAuthoring (AssetAuthoring &)=0
 Releases an APEX asset authoring object.
virtual ApexSDKCachedDatagetCachedData () const =0
 Returns the scene data cache for actors in the scene.
virtual
::NvParameterized::Serializer
createSerializer (::NvParameterized::Serializer::SerializeType type)=0
 Create a Serialization object.
virtual
::NvParameterized::Serializer
createSerializer (::NvParameterized::Serializer::SerializeType type,::NvParameterized::Traits *traits)=0
 Create a Serialization object from custom traits.
virtual
::NvParameterized::Serializer::SerializeType 
getSerializeType (const void *data, uint32_t dlen)=0
 Figure out whether a given chunk of data was xml or binary serialized. To properly detect XML formats, 32 bytes of data are scanned, so dlen should be at least 32 bytes.
virtual
::NvParameterized::Serializer::SerializeType 
getSerializeType (PxFileBuf &stream)=0
 Figure out whether a given chunk of data was xml or binary serialized.
virtual
NvParameterized::Serializer::ErrorType 
getSerializePlatform (PxFileBuf &stream, NvParameterized::SerializePlatform &platform)=0
 Find native platform for a given chunk of data.
virtual
NvParameterized::Serializer::ErrorType 
getSerializePlatform (const void *data, uint32_t dlen, NvParameterized::SerializePlatform &platform)=0
 Find native platform for a given chunk of data.
virtual void getCurrentPlatform (NvParameterized::SerializePlatform &platform) const =0
 Get current (native) platform.
virtual bool getPlatformFromString (const char *name, NvParameterized::SerializePlatform &platform) const =0
 Get platform from human-readable name.
virtual const char * getPlatformName (const NvParameterized::SerializePlatform &platform) const =0
 Get canonical name for platform.
virtual
::NvParameterized::Interface
getDebugColorParams () const =0
 Gets NvParameterized debug rendering color parameters. Modiying NvParameterized debug colors automatically updates color table in debug renderer.
virtual const char * getWireframeMaterial ()=0
 Gets a string for the material to use when rendering wireframe data.
virtual const char * getSolidShadedMaterial ()=0
 Gets a string for the material to use when rendering solid shaded (per vertex color) lit triangles.
virtual void setEnableApexStats (bool enableApexStats)=0
 Enable or disable the APEX module-specific stat collection (some modules can be time consuming)
virtual void setEnableConcurrencyCheck (bool enableConcurrencyChecks)=0
 Enable or disable the APEX concurrent access check.
virtual bool isConcurrencyCheckEnabled ()=0
 Returns current setting for APEX concurrent access check.

Detailed Description

The ApexSDK abstraction. Manages scenes and modules.


Member Function Documentation

virtual Asset* nvidia::apex::ApexSDK::createAsset ( ::NvParameterized::Interface ,
const char *  name 
) [pure virtual]

Creates an APEX asset from a parameterized object.

Note:
The NvParameterized::Interface object's ownership passes to the asset, if a copy is needed, use the NvParameterized::Interface::copy() method
virtual bool nvidia::apex::ApexSDK::getAuthorableObjectNames ( const char **  authTypeNames,
uint32_t &  outCount,
uint32_t  inCount 
) [pure virtual]

Get a list of the APEX authorable types.

The memory for the strings returned is owned by the APEX SDK and should only be read, not written or freed. Returns false if 'inCount' is not large enough to contain all of the names.

virtual PX_DEPRECATED PxErrorCallback* nvidia::apex::ApexSDK::getOutputStream ( ) [pure virtual]

Return the user error callback.

Deprecated:
Use getErrorCallback() instead.
virtual const PhysXObjectDesc* nvidia::apex::ApexSDK::getPhysXObjectInfo ( const PxJoint *  joint) const [pure virtual]

Return an object describing how APEX is using the PhysX Joint.

Returns:
NULL if PhysX Joint is not owned by APEX.
virtual const PhysXObjectDesc* nvidia::apex::ApexSDK::getPhysXObjectInfo ( const PxCloth *  cloth) const [pure virtual]

Return an object describing how APEX is using the PhysX Cloth.

Returns:
NULL if PhysX Cloth is not owned by APEX.
virtual const PhysXObjectDesc* nvidia::apex::ApexSDK::getPhysXObjectInfo ( const PxActor *  actor) const [pure virtual]

Return an object describing how APEX is using the PhysX Actor.

Returns:
NULL if PhysX Actor is not owned by APEX.
virtual const PhysXObjectDesc* nvidia::apex::ApexSDK::getPhysXObjectInfo ( const PxShape *  shape) const [pure virtual]

Return an object describing how APEX is using the PhysX Shape.

Returns:
NULL if PhysX Shape is not owned by APEX.
virtual bool nvidia::apex::ApexSDK::getPlatformFromString ( const char *  name,
NvParameterized::SerializePlatform platform 
) const [pure virtual]

Get platform from human-readable name.

Parameters:
[in]nameplatform name
[out]platformPlatform corresponding to name
Returns:
Success

Name format: compiler + compiler version (if needed) + architecture. Supported names: VcWin32, VcWin64, VcXboxOne, GccPs4, AndroidARM, GccLinux32, GccLinux64, GccOsX32, Pib.

virtual NvParameterized::Serializer::ErrorType nvidia::apex::ApexSDK::getSerializePlatform ( const void *  data,
uint32_t  dlen,
NvParameterized::SerializePlatform platform 
) [pure virtual]

Find native platform for a given chunk of data.

Note:
To properly detect platform 64 bytes of data are scanned, so dlen should be at least 64 bytes

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

Generated on Fri Dec 15 2017 13:58:37

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