- Cal3D 0.11 API Reference -

global.h
1 //****************************************************************************//
2 // global.h //
3 // Copyright (C) 2001, 2002 Bruno 'Beosil' Heidelberger //
4 //****************************************************************************//
5 // This library is free software; you can redistribute it and/or modify it //
6 // under the terms of the GNU Lesser General Public License as published by //
7 // the Free Software Foundation; either version 2.1 of the License, or (at //
8 // your option) any later version. //
9 //****************************************************************************//
10 
11 #ifndef CAL_GLOBAL_H
12 #define CAL_GLOBAL_H
13 
14 
15 // platform dependent includes
16 #include "cal3d/platform.h"
17 
18 //****************************************************************************//
19 // Define options
20 //****************************************************************************//
21 
22 //Uncomment this if you want to use 16bit indices or configure the compiler
23 
24 //#define CAL_16BIT_INDICES
25 
26 #ifdef CAL_16BIT_INDICES
27 typedef unsigned short CalIndex;
28 #else
29 typedef int CalIndex;
30 #endif
31 
32 
33 //****************************************************************************//
34 // Global Cal3D namespace for constants, ... //
35 //****************************************************************************//
36 
37 namespace cal3d
38 {
39  // global typedefs
40  typedef void *UserData;
41 
42  // file magic cookies
43  const char SKELETON_FILE_MAGIC[4] = { 'C', 'S', 'F', '\0' };
44  const char ANIMATION_FILE_MAGIC[4] = { 'C', 'A', 'F', '\0' };
45  const char ANIMATEDMORPH_FILE_MAGIC[4] = { 'C', 'P', 'F', '\0' };
46  const char MESH_FILE_MAGIC[4] = { 'C', 'M', 'F', '\0' };
47  const char MATERIAL_FILE_MAGIC[4] = { 'C', 'R', 'F', '\0' };
48 
49  const char SKELETON_XMLFILE_MAGIC[4] = { 'X', 'S', 'F', '\0' };
50  const char ANIMATION_XMLFILE_MAGIC[4] = { 'X', 'A', 'F', '\0' };
51  const char MESH_XMLFILE_MAGIC[4] = { 'X', 'M', 'F', '\0' };
52  const char MATERIAL_XMLFILE_MAGIC[4] = { 'X', 'R', 'F', '\0' };
53 
54  // library version // 0.13.0
55 #define CAL3D_VERSION 1301
56  const int LIBRARY_VERSION = CAL3D_VERSION;
57 
58 
59  // file versions
60  const int CURRENT_FILE_VERSION = LIBRARY_VERSION;
61  const int EARLIEST_COMPATIBLE_FILE_VERSION = 699;
62 
63  const int FIRST_FILE_VERSION_WITH_ANIMATION_COMPRESSION6 = 1300;
64  const int FIRST_FILE_VERSION_WITH_ANIMATION_COMPRESSION5 = 1300;
65  const int FIRST_FILE_VERSION_WITH_ANIMATION_COMPRESSION4 = 1300;
66  const int FIRST_FILE_VERSION_WITH_ANIMATION_COMPRESSION = 1300;
67  const int FIRST_FILE_VERSION_WITH_VERTEX_COLORS = 1300;
68  const int FIRST_FILE_VERSION_WITH_NODE_LIGHTS = 1300;
69  const int FIRST_FILE_VERSION_WITH_MATERIAL_TYPES = 1300;
70  const int FIRST_FILE_VERSION_WITH_MORPH_TARGETS_IN_MORPH_FILES = 1300;
71  const int FIRST_FILE_VERSION_WITH_RELATIVE_BONE_TRANSLATION = 1300;
72  const int FIRST_FILE_VERSION_WITH_UPDATED_MORPHMIXER = 1301;
73 
74  inline bool versionHasCompressionFlag(int version) {
75  return version >= 1300;
76  }
81  class CAL3D_API noncopyable
82  {
83  protected:
84  noncopyable() {}
85  ~noncopyable() {}
86  private: // emphasize the following members are private
87  noncopyable(const noncopyable&);
88  const noncopyable& operator=(const noncopyable&);
89  };
90 }
91 
92 struct CalHeader
93 {
94  int version;
95  char const* magic;
96 };
97 namespace Cal = cal3d;
98 
99 #endif
Definition: global.h:92
Derive from noncopyable to mark your class as not having a copy constructor or operator=.
Definition: global.h:81
Definition: global.h:37

Generated by The Cal3D Team with Doxygen 1.8.14