HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TIL_CompOptions.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: COP2_CompOptions.h
7  *
8  * COMMENTS:
9  * Holds the global options for the compositor.
10  */
11 #ifndef __TIL_CompOptions_h__
12 #define __TIL_CompOptions_h__
13 
14 #include "TIL_API.h"
15 #include <SYS/SYS_Types.h>
16 
17 class TIL_TileManager;
18 class UT_FileLUT;
19 
21 {
22 public:
24 
25  // Cache
26  static void setCookCacheSize(int size);
27  static int getCookCacheSize();
28 
29  static void setCacheInactiveReduce(int reduce);
30  static int getCacheInactiveReduce();
31 
32  static void setCacheInactiveSize(int size);
33  static int getCacheInactiveSize();
34 
35  static void setPerformanceCaching(int on);
36  static int getPerformanceCaching();
37 
38  static void setResLimit(int x,int y);
39  static void getResLimit(int &x, int &y);
40 
41  // returns the recommended memory usage in kb.
42  static void getRecommendedMemoryUsage(int64 &cook, int64 &disp);
43  static int getRecommendedThreads();
44 
45  // Cooking
46  static void setMultithreadedCooking(int on);
47  static int getMultithreadedCooking();
48 
49  static void setNumCookThreads(int threads);
50  static int getNumCookThreads();
51 
52  static void setUseCollapsableOps(int enable);
53  static int getUseCollapsableOps();
54 
55  static void setUseGPUAssist(bool enable);
56  static bool getUseGPUAssist(bool check_for_hardware_support=true);
57  static bool isGPUAssistInitialized();
58 
59  static void setCookOnStart(int enable);
60  static int getCookOnStart();
61 
62  static void setIncrementalCook(int type);
63  static int getIncrementalCook();
64 
65  static void setIncrementalCookStyle(int type);
66  static int getIncrementalCookStyle();
67 
68  // Proxies.
69  static void setProxyGeneration(int on);
70  static int getProxyGeneration();
71 
72  static void setProxyLimit(int on);
73  static int getProxyLimit();
74 
75  static void setProxyDiskLimit(int size);
76  static int getProxyDiskLimit();
77 
78  static void setProxyDir(const char *dir);
79  static const char *getProxyDir();
80 
81  static void setTileSize(int x, int y);
82  static void getTileSize(int &x, int &y);
83 
84  // Plane names.
85  static void setColorName(const char *n);
86  static const char *getColorName();
87 
88  static void setAlphaName(const char *n);
89  static const char *getAlphaName();
90 
91  static void setMaskName(const char *n);
92  static const char *getMaskName();
93 
94  static void setDepthName(const char *n);
95  static const char *getDepthName();
96 
97  static void setLumName(const char *n);
98  static const char *getLumName();
99 
100  static void setBumpName(const char *n);
101  static const char *getBumpName();
102 
103  static void setPointName(const char *n);
104  static const char *getPointName();
105 
106  static void setNormalName(const char *n);
107  static const char *getNormalName();
108 
109  static void setVelocityName(const char *n);
110  static const char *getVelocityName();
111 
112  // Selectors.
113  static void setSelectorNoOptional(int noopt);
114  static int getSelectorNoOptional();
115 
116  static void setSelectorNoGenInputs(int nogen);
117  static int getSelectorNoGenInputs();
118 
119  static void setSelectorPlaceCurrent(int placecurrent);
120  static int getSelectorPlaceCurrent();
121 
122  static void setSelectorGenNewView(int newview);
123  static int getSelectorGenNewView();
124 
125  // COP Colors.
126  static void setUseCopColoring(int use);
127  static int getUseCopColoring();
128 
129  static void setGeneratorColorEnable(int use);
130  static int getGeneratorColorEnable();
131 
132  static void setGeneratorColor(float r, float g, float b);
133  static void getGeneratorColor(float &r, float &g, float &b);
134 
135  static void setPixelColorEnable(int use);
136  static int getPixelColorEnable();
137 
138  static void setPixelColor(float r, float g, float b);
139  static void getPixelColor(float &r, float &g, float &b);
140 
141  static void setTimingColorEnable(int use);
142  static int getTimingColorEnable();
143 
144  static void setTimingColor(float r, float g, float b);
145  static void getTimingColor(float &r, float &g, float &b);
146 
147  static void setVexColorEnable(int use);
148  static int getVexColorEnable();
149 
150  static void setVexColor(float r, float g, float b);
151  static void getVexColor(float &r, float &g, float &b);
152 
153  // Fast Interactive Cooking.
154  static void setFastInteractive(bool enable);
155  static bool getFastInteractive();
156 
157  static void setFastInteractiveOnSlow(bool enable);
158  static bool getFastInteractiveOnSlow();
159 
160  static void setFastInteractiveQuality(int resdownby);
161  static int getFastInteractiveQuality();
162 
163  static void setFastInteractiveMinSize(int x, int y);
164  static void getFastInteractiveMinSize(int &x, int &y);
165 
166  // Load's o cineon stuff.
167  static void initCineon();
168 
169  // This sets the defaults for building Cineon luts.
170  static void setCineonParms(bool convert, const char *lut,
171  int white, float gamma, int black);
172  static void getCineonParms(bool &convert, const char *&lut,
173  int &white, float &gamma, int &black);
174 
175  // Returns a new LUT based on the passed parms.
176  static UT_FileLUT *buildReadLUT(bool convert, const char *lut,
177  int white, float gamma, int black);
178  static UT_FileLUT *buildWriteLUT(bool convert, const char *lut,
179  int white, float gamma, int black);
180 
181  // Internal function for building default LUTs (based on the parms set by
182  // setCineonParms).
183  static void buildCineonLUTs(bool read,
184  bool write,
185  UT_FileLUT *&rlut,
186  UT_FileLUT *&wlut);
187 
188  // The workhorse function for creating luts.
189  static void createCineonLUT(bool convert, const char *lut,
190  int white, float gamma, int iwhite,
191  bool read, bool write,
192  UT_FileLUT *&rlut,
193  UT_FileLUT *&wlut);
194 
195  static UT_FileLUT * defaultLUTcreator(bool dowrite);
196 
197 
198  static TIL_TileManager *getTileManager();
199 
200  static const char *getPrefFileName();
201  static void loadPreferences();
202  static void savePreferences();
203 };
204 
205 #endif
GLboolean GLboolean g
Definition: glcorearb.h:1221
GLint y
Definition: glcorearb.h:102
void read(T &in, bool &v)
Definition: ImfXdr.h:611
GLsizeiptr size
Definition: glcorearb.h:663
long long int64
Definition: SYS_Types.h:100
GLdouble n
Definition: glcorearb.h:2007
GLboolean GLboolean GLboolean b
Definition: glcorearb.h:1221
GLint GLenum GLint x
Definition: glcorearb.h:408
GLint GLint GLsizei GLint GLenum GLenum type
Definition: glcorearb.h:107
GLboolean r
Definition: glcorearb.h:1221
void write(T &out, bool v)
Definition: ImfXdr.h:332
#define TIL_API
Definition: TIL_API.h:10