HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SIM_RenderParmsVolatile.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  */
7 
8 #ifndef __SIM_RenderParmsVolatile_h__
9 #define __SIM_RenderParmsVolatile_h__
10 
11 #include "SIMZ_API.h"
12 
13 #include <SIM/SIM_RenderParms.h>
14 
15 /// This class holds rendering options much like object rendering parameters.
16 /// To use this data type, attach it as subdata to a SIM_Geometry that is
17 /// being rendered.
18 /// This is a volatile version that reloads its value directly from
19 /// the opnode rather than using the data.
21 {
22 public:
23  /// These methods check the creatorNode to query its current
24  /// parm value and will pass down to the actual options only
25  /// if the creator node can't be found.
26  void getMaterialShop(const SIM_Object *obj,
27  UT_String &str) const override;
28  bool getForDisplay(const SIM_Object *obj) const override;
29  bool getForRender(const SIM_Object *obj) const override;
30 
31 
32 protected:
33  explicit SIM_RenderParmsVolatile(const SIM_DataFactory *factory);
34  ~SIM_RenderParmsVolatile() override;
35 
36 private:
37  static const SIM_DopDescription *getRenderParmsVolatileDopDescription();
38 
42  "Rendering Parameters",
43  getRenderParmsVolatileDopDescription());
44 };
45 
46 #endif
47 
#define SIMZ_API
Definition: SIMZ_API.h:10
#define DECLARE_STANDARD_GETCASTTOTYPE()
Definition: SIM_DataUtils.h:50
#define DECLARE_DATAFACTORY(DataClass, SuperClass, Description, DopParms)
Definition: SIM_DataUtils.h:63
virtual bool getForRender(const SIM_Object *) const
virtual void getMaterialShop(const SIM_Object *, UT_String &str) const
virtual bool getForDisplay(const SIM_Object *) const