HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OP_TakeData.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: OP_TakeData.h ( OP Library, C++)
7  *
8  * COMMENTS: Take data for OPs
9  */
10 
11 #ifndef __OP_TakeData__
12 #define __OP_TakeData__
13 
14 #include "OP_API.h"
15 #include <TAKE/TAKE_Data.h>
16 
17 class OP_Node;
18 
19 class OP_API OP_TakeData : public TAKE_Data
20 {
21 public:
22  OP_TakeData(const TAKE_DataId &id, int priority);
23  virtual ~OP_TakeData();
24 
25  virtual TAKE_Data *duplicate() const = 0;
26 
27  virtual void getOpIdString(UT_String &str);
28  virtual void applyData();
29  virtual bool isValid() const;
30 
31  virtual void storeCurrent() = 0;
32  virtual void generateCommand(UT_WorkBuffer &buf) = 0;
33  virtual void getDescription(UT_WorkBuffer &buf, int brief) = 0;
34 
35  // We override the following method to make sure that take data is not
36  // saved for locked assets in the master take.
37  virtual bool canSaveInMasterTake() const;
38 
39 protected:
40  OP_Node *lookupNode() const;
41 };
42 #endif
43 
virtual void getOpIdString(UT_String &str)=0
virtual bool canSaveInMasterTake() const =0
virtual void getDescription(UT_WorkBuffer &, int brief=0)=0
virtual void applyData()=0
virtual void generateCommand(UT_WorkBuffer &)=0
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glcorearb.h:2539
virtual void storeCurrent()=0
#define OP_API
Definition: OP_API.h:10
virtual TAKE_Data * duplicate() const =0