13 #ifndef TIL_IMAGESOURCE_H
14 #define TIL_IMAGESOURCE_H
26 #define TIL_GLOBAL_TIME (std::numeric_limits<fpreal>::infinity())
74 setAutomatic(gamma, lut);
76 setManual(gamma, lut);
82 myHoudiniAdjust =
false;
90 myHoudiniAdjust =
true;
96 myMode = CS_OCIO_SPACE;
103 myMode = CS_OCIO_SPACE;
111 myMode = CS_OCIO_DISPLAY_VIEW;
112 myOCIODisplay = display;
114 myOCIOForward = forward;
120 float myGamma = 1.0f;
126 bool myOCIOForward =
true;
127 bool myHoudiniAdjust =
true;
132 void bumpRefCount(
int i);
138 virtual fpreal getGlobalTime() =0;
139 virtual fpreal getSampleRate() =0;
140 virtual fpreal getStartTime() =0;
141 virtual fpreal getEndTime() =0;
145 int getImageIndexFromTime(
fpreal t);
146 int getFrameFromTime(
fpreal t);
175 virtual const char *
getName() = 0;
202 int array_index) = 0;
204 virtual void getImageBounds(
const TIL_Plane &plane,
221 virtual int getID()
const = 0;
229 int xstart,
int ystart,
230 int xend,
int yend,
float gamma,
231 bool include_alpha =
false,
232 bool is_interactive =
false,
233 int fxres = 0,
int fyres = 0) = 0;
242 virtual int writeImage(
const char *
filename,
246 const ColorSpace &cspace,
247 void (*info)(
void*,
const char*),
249 bool suppress_summary_dialog,
252 virtual int writeImage(
const char *filename,
258 const ColorSpace &cspace,
259 void (*info)(
void*,
const char*),
261 bool suppress_summary_dialog,
264 virtual void writeImageComplete(
int successcount,
281 virtual void setMouseLocation(
int mx,
int my,
282 float radius = 64.0
f);
287 virtual bool getColorCurves(
const char *planename,
291 bool allnodes,
int comp=-1,
292 bool natural_range =
true,
300 const char *planename,
305 virtual bool hasPixelScript(
int slot)
const;
306 virtual bool runPixelScript(
int px,
int py,
int slot);
310 virtual bool isStereoscopicSource(
fpreal t)
const;
311 virtual int getLeftPlaneIndex(
fpreal t)
const;
312 virtual const char *getLeftPlaneName(
fpreal t)
const;
313 virtual int getRightPlaneIndex(
fpreal t)
const;
314 virtual const char *getRightPlaneName(
fpreal t)
const;
317 virtual int64 getMemoryUsage(
bool inclusive)
const = 0;
367 bool isOpen()
const {
return myOpen; }
virtual bool isConstantSequence() const
virtual STY_StyleSheet * getStyleSheet(int x, int y)
GLenum GLuint GLenum GLsizei const GLchar * buf
GT_API const UT_StringHolder filename
virtual bool getPreferredViewingPlane(UT_WorkBuffer &buf) const
*get result *(waiting if necessary)*A common idiom is to fire a bunch of sub tasks at the and then *wait for them to all complete We provide a helper class
virtual int isAnythingLocked()
virtual void removeSequence()
virtual int getApparentFrame(int fr)
bool adjustColorSpace() const
virtual int isPlaneLocked(const TIL_Plane *, fpreal)
virtual OP_Node * getOp() const
GLenum GLenum GLsizei void * image
virtual fpreal getFrameTime(fpreal t, bool=false, const TIL_Sequence *=0)
virtual void addFrame(int)
UT_StringHolder myOCIODest
UT_StringHolder myOCIOLook
UT_Array< TIL_CookRegion > TIL_CookRegionList
virtual bool allowUserSelection() const
UT_StringHolder myOCIODisplay
void setOCIO(const UT_StringHolder &dest, const UT_StringHolder &look=UT_StringHolder())
virtual const TIL_Plane * getPreviewPlane(int)
virtual bool getPriorityCircle(float ¢rex, float ¢rey, float &radius) const
PXL_API const char * getName(const ColorSpace *space)
Return the name of the color space.
virtual fpreal getRenderTime(int frame) const
virtual int doesImageExist(int, bool=true)
GLsizei GLsizei GLchar * source
#define UT_NON_COPYABLE(CLASS)
Define deleted copy constructor and assignment operator inside a class.
virtual int getFrameShift(int fr, bool=false, const TIL_Sequence *=0)
bool ocioAutomatic() const
virtual void close(short)
GLfloat GLfloat GLfloat alpha
virtual void onAutoUpdate()
virtual int isFrameLocked(fpreal)
GLuint const GLchar * name
virtual int getActualFrame(int frame)
void setManual(float gamma, const UT_StringHolder &lut=UT_StringHolder())
virtual bool isSlowOperation() const
cl_int getInfo(Func f, cl_uint name, T *param)
UT_StringHolder myOCIOView
virtual OP_Node * getMaterialNode(int x, int y)
void setAutomatic(float gamma, const UT_StringHolder &lut=UT_StringHolder())
virtual size_t getVersion()
virtual int64 getPeakMemUsage(int frame) const
virtual bool canAddFrame()
virtual void bumpVersion(bool)
class OCIOEXPORT ColorSpace
virtual int open(short &, int=0, fpreal=TIL_GLOBAL_TIME)
GLdouble GLdouble GLdouble y2
void setAutomaticManual(bool convert_space, float gamma, const UT_StringHolder &lut)
virtual void removeFrame(int)
UT_StringHolder myLUTFile
virtual bool getStyleSheetJSON(int x, int y, UT_StringHolder &str)
virtual bool isCachingNeeded(int) const
void setOCIODisplayView(const UT_StringHolder &display, const UT_StringHolder &view, bool forward=true)