Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef NX_EXPLOSION_ACTOR_H
00029 #define NX_EXPLOSION_ACTOR_H
00030
00031 #include "NxApex.h"
00032 #include "NxFieldBoundaryShared.h"
00033
00034
00035 namespace physx
00036 {
00037 namespace apex
00038 {
00039
00040
00041 PX_PUSH_PACK_DEFAULT
00042
00043 class NxExplosionAsset;
00044 class NxFieldBoundaryActor;
00045 class ExplosionAssetParam;
00046
00047 #if NX_SDK_VERSION_MAJOR == 2
00048 class NxExplosionActor : public NxApexActor, public NxApexActorSource
00049 #elif NX_SDK_VERSION_MAJOR == 3
00050 class NxExplosionActor : public NxApexActor
00051 #endif
00052 {
00053 protected:
00054 virtual ~NxExplosionActor() {}
00055
00056 public:
00060 virtual bool isEnable() = 0;
00061
00066 virtual bool disable() = 0;
00067 virtual bool enable() = 0;
00068
00073 #if NX_SDK_VERSION_MAJOR == 2
00074 virtual NxActor* getAttachedNxActor() const = 0;
00075
00076
00077 #endif
00078
00082 #if NX_SDK_VERSION_MAJOR == 2
00083 virtual void setAttachedNxActor(NxActor* actor) = 0;
00084
00085
00086 #endif
00087
00093 virtual physx::PxMat44 getPose() const = 0;
00094
00100 virtual void setPose(const physx::PxMat44& pose) = 0;
00101
00105 virtual physx::PxF32 getScale() const = 0;
00106
00110 virtual void setScale(physx::PxF32 scale) = 0;
00111
00115 virtual const char* getName() const = 0;
00116
00120 virtual void setName(const char* name) = 0;
00121
00125 #if NX_SDK_VERSION_MAJOR == 2
00126 virtual void addFieldBoundary(NxFieldBoundaryActor& bound) = 0;
00127 #endif
00128
00132 #if NX_SDK_VERSION_MAJOR == 2
00133 virtual void removeFieldBoundary(NxFieldBoundaryActor& bound) = 0;
00134 #endif
00135
00139 virtual NxExplosionAsset* getExplosionAsset() const = 0;
00140
00141
00142
00143
00144
00145
00146
00150 #if NX_SDK_VERSION_MAJOR == 2
00151 virtual physx::PxF32 getOuterBoundRadius() const = 0;
00152 #endif
00153
00157 #if NX_SDK_VERSION_MAJOR == 2
00158 virtual void setOuterBoundRadius(physx::PxF32) = 0;
00159 #endif
00160
00164 #if NX_SDK_VERSION_MAJOR == 2
00165 virtual physx::PxF32 getInnerBoundRadius() const = 0;
00166 #endif
00167
00171 #if NX_SDK_VERSION_MAJOR == 2
00172 virtual void setInnerBoundRadius(physx::PxF32) = 0;
00173 #endif
00174 };
00175
00176 PX_POP_PACK
00177
00178 }
00179 }
00180
00181 #endif // NX_EXPLOSION_ACTOR_H