HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GDT_CoordinateFrames.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: GDT Library. (Geo Delta)
7  *
8  * COMMENTS:
9  *
10  */
11 #ifndef __GDT_CoordinateFrames_h__
12 #define __GDT_CoordinateFrames_h__
13 
14 #include "GDT_API.h"
15 #include <GEO/GEO_Detail.h>
16 #include <UT/UT_Array.h>
17 #include <UT/UT_Matrix3.h>
18 
20 {
21 public:
24  virtual ~GDT_CoordinateFrames() {}
25 
26  void setLocalCoordsFromTopology(const GEO_Detail *ref, const GEO_Detail *gdp);
27  void setLocalCoords(const UT_Array<UT_Matrix3> &xforms);
28  void clear();
29 
30  unsigned entries() const { return myTransforms.entries(); }
31  const UT_Matrix3 &getTransform(int i) const { return myTransforms(i); }
32  virtual int64 getMemoryUsage(bool inclusive) const
33  {
34  int64 memusage = 0;
35  if (inclusive)
36  memusage += sizeof(*this);
37  memusage += myTransforms.getMemoryUsage(false);
38  return memusage;
39  }
40 
41 private:
42  UT_Array<UT_Matrix3> myTransforms;
43 };
44 
45 #endif
#define GDT_API
Definition: GDT_API.h:10
unsigned entries() const
GLint ref
Definition: glcorearb.h:124
virtual int64 getMemoryUsage(bool inclusive) const
const UT_Matrix3 & getTransform(int i) const
long long int64
Definition: SYS_Types.h:116