RenderVolume.h
00001 /* 00002 * Copyright (c) 2008-2017, NVIDIA CORPORATION. All rights reserved. 00003 * 00004 * NVIDIA CORPORATION and its licensors retain all intellectual property 00005 * and proprietary rights in and to this software, related documentation 00006 * and any modifications thereto. Any use, reproduction, disclosure or 00007 * distribution of this software and related documentation without an express 00008 * license agreement from NVIDIA CORPORATION is strictly prohibited. 00009 */ 00010 00011 00012 #ifndef RENDER_VOLUME_H 00013 #define RENDER_VOLUME_H 00014 00015 #include "Apex.h" 00016 00017 namespace nvidia 00018 { 00019 namespace apex 00020 { 00021 00022 PX_PUSH_PACK_DEFAULT 00023 00024 class IofxAsset; 00025 class IofxActor; 00026 00037 class RenderVolume : public ApexInterface 00038 { 00039 public: 00041 virtual physx::PxBounds3 getBounds() const = 0; 00042 00044 virtual bool getAffectsAllIofx() const = 0; 00045 00047 virtual bool addIofxAsset(IofxAsset& iofx) = 0; 00048 00050 virtual void setPosition(const PxVec3& pos) = 0; 00051 00053 virtual void setOwnershipBounds(const PxBounds3& b) = 0; 00054 00056 virtual PxBounds3 getOwnershipBounds() const = 0; 00057 00073 virtual IofxActor* const* lockIofxActorList(uint32_t& count) = 0; 00074 00079 virtual void unlockIofxActorList() = 0; 00080 00089 virtual IofxAsset* const* getIofxAssetList(uint32_t& count) const = 0; 00090 00091 virtual PxVec3 getPosition() const = 0; 00092 virtual uint32_t getPriority() const = 0; 00093 00099 virtual bool affectsIofxAsset(const IofxAsset& iofx) const = 0; 00100 00101 protected: 00102 virtual ~RenderVolume() {} 00103 }; 00104 00105 PX_POP_PACK 00106 00107 } 00108 } // namespace nvidia 00109 00110 #endif // RENDER_VOLUME_H
Generated on Fri Dec 15 2017 13:58:35 Copyright © 2012-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved.