ApexSDKCachedData.h
Go to the documentation of this file.
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 APEX_SDKCACHED_DATA_H 00013 #define APEX_SDKCACHED_DATA_H 00014 00020 #include "ApexSDK.h" 00021 00022 namespace NvParameterized 00023 { 00024 class Interface; 00025 }; 00026 00027 namespace nvidia 00028 { 00029 namespace apex 00030 { 00031 00032 00036 class ModuleCachedData 00037 { 00038 public: 00044 virtual ::NvParameterized::Interface* getCachedDataForAssetAtScale(Asset& asset, const PxVec3& scale) = 0; 00045 00049 virtual PxFileBuf& serializeSingleAsset(Asset& asset, PxFileBuf& stream) = 0; 00050 00054 virtual PxFileBuf& deserializeSingleAsset(Asset& asset, PxFileBuf& stream) = 0; 00055 }; 00056 00060 class ApexSDKCachedData 00061 { 00062 public: 00068 virtual ModuleCachedData* getCacheForModule(AuthObjTypeID moduleID) = 0; 00069 00073 virtual PxFileBuf& serialize(PxFileBuf&) const = 0; 00074 00078 virtual PxFileBuf& deserialize(PxFileBuf&) = 0; 00079 00083 virtual void clear(bool force = true) = 0; 00084 00085 protected: 00086 ApexSDKCachedData() {} 00087 virtual ~ApexSDKCachedData() {} 00088 }; 00089 00090 } 00091 } // end namespace nvidia::apex 00092 00093 00094 #endif // APEX_SDKCACHED_DATA_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.