HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OP_PropagateData.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_PropagateData.h (OP Library, C++)
7  *
8  * COMMENTS: Helper class for OP_Node::propagateModification()
9  */
10 
11 #ifndef __OP_PROPAGATEDATA_H__
12 #define __OP_PROPAGATEDATA_H__
13 
14 #include "OP_API.h"
15 #include "OP_Value.h"
16 #include <UT/UT_Algorithm.h>
17 #include <DEP/DEP_MicroNode.h>
18 #include <UT/UT_Pair.h>
19 
20 // This helper struct is needed for propagateModification(). It must be
21 // initialized first with beginPropagateModification().
23 {
24 public:
26  {
27  myExprChange = isExprChangeEvent(reason);
28  }
29 
30  static bool isExprChangeEvent(OP_EventType reason)
31  {
32  return (reason == OP_PARM_ANIMATED
33  || reason == OP_PARM_CHANNELS);
34  }
35 };
36 
37 #endif // __OP_PROPAGATEDATA_H__
OP_PropagateData(OP_EventType reason)
static bool isExprChangeEvent(OP_EventType reason)
#define OP_API
Definition: OP_API.h:10
OP_EventType
Definition: OP_Value.h:22
Propagation info for a dep micro node.
Definition: DEP_MicroNode.h:35