NVidia Gameworks
  • Main Page
  • Classes
  • Files
  • File List
  • File Members

NvGfxAPI.h

Go to the documentation of this file.
00001 // TAGRELEASE: PUBLIC
00002 
00003 #ifndef NV_GFX_API_H
00004 #define NV_GFX_API_H
00005 
00006 #include <NvFoundation.h>
00007 
00010 
00012 struct NvGfxAPI {
00013     enum Enum {
00014         GLES, 
00015         GL 
00016     };
00017 };
00018 
00021 struct NvGfxAPIVersion {
00022     NvGfxAPIVersion(NvGfxAPI::Enum _api, int32_t _majVersion, int32_t _minVersion = 0) :
00023         api(_api)
00024       , majVersion(_majVersion)
00025       , minVersion(_minVersion) {}
00026         
00031     bool operator<(const NvGfxAPIVersion &rhs) const {
00032         if (api < rhs.api) return true;
00033         if (api > rhs.api) return false;
00034 
00035         if (majVersion < rhs.majVersion) return true;
00036         if (majVersion > rhs.majVersion) return false;
00037 
00038         if (minVersion < rhs.minVersion) return true;
00039         return false;
00040     }
00041         
00042     bool operator<=(const NvGfxAPIVersion &rhs) const {
00043         if (api < rhs.api) return true;
00044         if (api > rhs.api) return false;
00045 
00046         if (majVersion < rhs.majVersion) return true;
00047         if (majVersion > rhs.majVersion) return false;
00048 
00049         if (minVersion <= rhs.minVersion) return true;
00050         return false;
00051     }
00052         
00053     bool operator>(const NvGfxAPIVersion &rhs) const {
00054         if (api > rhs.api) return true;
00055         if (api < rhs.api) return false;
00056 
00057         if (majVersion > rhs.majVersion) return true;
00058         if (majVersion < rhs.majVersion) return false;
00059 
00060         if (minVersion > rhs.minVersion) return true;
00061         return false;
00062     }
00063         
00064     bool operator>=(const NvGfxAPIVersion &rhs) const {
00065         if (api > rhs.api) return true;
00066         if (api < rhs.api) return false;
00067 
00068         if (majVersion > rhs.majVersion) return true;
00069         if (majVersion < rhs.majVersion) return false;
00070 
00071         if (minVersion >= rhs.minVersion) return true;
00072         return false;
00073     }
00074         
00075     bool operator==(const NvGfxAPIVersion &rhs) const {
00076         return (api == rhs.api)  && (majVersion == rhs.majVersion) &&
00077             (minVersion == rhs.minVersion);
00078     }
00079 
00080     bool operator!=(const NvGfxAPIVersion &rhs) const {
00081         return (api != rhs.api)  || (majVersion != rhs.majVersion) ||
00082             (minVersion != rhs.minVersion);
00083     }
00085 
00086     NvGfxAPI::Enum api; 
00087     int32_t majVersion; 
00088     int32_t minVersion; 
00089 };
00090 
00092 struct NvGfxAPIVersionES2 : public NvGfxAPIVersion {
00093         NvGfxAPIVersionES2() : NvGfxAPIVersion(NvGfxAPI::GLES, 2) {}
00094 };
00095 
00097 struct NvGfxAPIVersionES3 : public NvGfxAPIVersion {
00098         NvGfxAPIVersionES3() : NvGfxAPIVersion(NvGfxAPI::GLES, 3) {}
00099 };
00100 
00102 struct NvGfxAPIVersionGL4 : public NvGfxAPIVersion {
00103         NvGfxAPIVersionGL4() : NvGfxAPIVersion(NvGfxAPI::GL, 4) {}
00104 };
00105 
00107 struct NvGfxAPIVersionGL4_3 : public NvGfxAPIVersion {
00108         NvGfxAPIVersionGL4_3() : NvGfxAPIVersion(NvGfxAPI::GL, 4, 3) {}
00109 };
00110 
00112 struct NvGfxAPIVersionGL4_4 : public NvGfxAPIVersion {
00113         NvGfxAPIVersionGL4_4() : NvGfxAPIVersion(NvGfxAPI::GL, 4, 4) {}
00114 };
00115 
00116 #endif
Generated on Sat Mar 8 14:58:35 2014 for NVIDIA GameWorks OpenGL App Framework and Libraries by Doxygen
©2014 NVIDIA Corporation.