APEX Framework: ApexSDKCachedData.h Source File

NVIDIA APEX

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.