HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GUI_VisInterface.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: GUI_VisInterface.h ( GR Library, C++)
7  *
8  * COMMENTS:
9  * Basic definition needed to access functions defined in VIS which is
10  * set above the GUI level.
11  */
12 
13 #ifndef __GUI_VisInterface_h__
14 #define __GUI_VisInterface_h__
15 
16 #include "GUI_API.h"
17 #include "GUI_PrimitiveHook.h"
18 #include <GR/GR_UpdateParms.h>
19 #include <VIS/VIS_Defines.h>
20 
21 class GUI_DetailLook;
23 
25 
27 {
30 };
31 
33 {
34 public:
36  virtual ~GUI_VisInterface() {}
37 
38  virtual exint bumpClock() = 0;
39 
40  virtual
41  GT_PrimitiveHandle filterPrimitive(GUI_GeoRender *geo,
42  const GT_PrimitiveHandle &gt_prm,
43  const GEO_Primitive *geo_prm,
44  const GR_RenderInfo *info,
45  GR_PrimAcceptResult &processed,
46  UT_Array<GUI_VisFlags> &vis_flags) = 0;
47 
48  virtual void createPrimitive(GUI_GeoRender *geo,
49  const GT_PrimitiveHandle &gt_prim,
50  const GEO_Primitive *geo_prim,
51  const GR_Primitive *gr_prim,
52  const GR_RenderInfo *info,
53  const char *cache_name,
54  GR_PrimAcceptResult &processed,
55  UT_Array<GR_Primitive *> &prims) = 0;
56 
57  virtual
58  GR_UpdateReason getUpdateReason(const GUI_GeoRender *geo,
59  bool &refine_on_update) = 0;
60 
61  virtual void getRequestedAttributes(const GUI_DetailLook *look,
62  GR_UpdateParms &parms) = 0;
63 
64  virtual bool isHookVisualizerActive(const char *vis_name,
65  GUI_VisContext context) = 0;
66 
67  virtual
68  GUI_VisFlags getActiveVisFlags(const GUI_GeoRender *geo,
69  UT_Array<GUI_VisFlags> &vis_flags,
70  GUI_VisContext context,
71  int display_set) = 0;
72 
73  static void setHandler(GUI_VisInterface *handler)
74  { theHandler = handler; }
75 
76  static
78  { return theHandler; }
79 
81 };
82 
83 #endif
GUI_VisFlags
static void setHandler(GUI_VisInterface *handler)
set of parameters sent to GR_Primitive::update()
#define GUI_API
Definition: GUI_API.h:10
int64 exint
Definition: SYS_Types.h:115
GR_UpdateReason
Definition: GR_Defines.h:278
virtual ~GUI_VisInterface()
GR_PrimAcceptResult
Definition: GR_Defines.h:320
VIS_Context GUI_VisContext
static GUI_VisInterface * theHandler
static GUI_VisInterface * getHandler()