HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OP_TransformContextData.h
Go to the documentation of this file.
1 #ifndef __OP_TransformContext__
2 #define __OP_TransformContext__
3 
4 #include "OP_Context.h"
5 
6 #include <stdio.h>
7 
9 {
10 public:
12  : myCaller( caller )
13  , myExtraArgs(false)
14  {}
15 
16  OP_TransformContextData(OP_Node *caller, int xord, int rord, int mask)
17  : myCaller( caller )
18  , myExtraArgs(true)
19  , myXord(xord)
20  , myRord(rord)
21  , myMask(mask)
22  {}
23 
25 
26  OP_Node *getCallerNode() const {return myCaller;}
27 
28  bool hasExtraArgs() const { return myExtraArgs;}
29  int getXord() const { return myXord; }
30  int getRord() const { return myRord; }
31  int getMask() const { return myMask; }
32 
33  bool getExtraArgs( int &xord, int &rord, int &mask) const
34  {
35  if( myExtraArgs )
36  {
37  xord = myXord;
38  rord = myRord;
39  mask = myMask;
40  return true;
41  }
42  return false;
43  }
44 
45  enum Mask
46  {
47  TRANSLATE = 1,
48  ROTATE = 2,
49  SCALE = 4,
50  UNIFORM_SCALE = 8,
51  PIVOT = 16,
52  PIVOT_ROTATE = 32,
53  };
54 
55 private:
56  OP_Node *myCaller; // Node to add dependencies to.
57  bool myExtraArgs;
58  int myXord;
59  int myRord;
60  int myMask;
61 };
62 
63 #endif
64 
OP_TransformContextData(OP_Node *caller, int xord, int rord, int mask)
GLint GLuint mask
Definition: glcorearb.h:124
bool getExtraArgs(int &xord, int &rord, int &mask) const
OP_TransformContextData(OP_Node *caller)
#define OP_API
Definition: OP_API.h:10
OP_Node * getCallerNode() const