11 #ifndef __CHOP_CHANNEL_H__
12 #define __CHOP_CHANNEL_H__
50 const char *trackname,
53 int &vecidx)
override;
56 void clearChannelInstances();
59 int getNumChannelInstances();
62 int appendChannelInstance();
67 static void organizeChanRefs(
83 bool copy_value =
true,
84 bool current_value_only =
false,
85 bool lock_copy =
false,
86 bool set_value_to_default =
false);
90 void removeChannelRefs(
fpreal t,
95 bool synchSourceParms(
102 bool addPoseKey(
fpreal t,
bool only_synch=
false);
103 bool copyPoseKeyToSource(
fpreal t,
unsigned key_idx);
104 bool removePoseKey(
fpreal t,
unsigned key_idx);
105 bool updatePoseKey(
fpreal t,
unsigned key_idx);
109 void getSourceChannelRefs(
fpreal t,
114 bool getSourceChannelRef(
fpreal t,
int track_idx,
127 void setRangeToValueAnimation(
fpreal t);
131 int getChannelSize(
int parm_index);
133 void getTrackParmMappings(
fpreal t,
159 int referenced_op_id,
163 const char *old_fullpath,
165 const char *old_chan_name)
override;
169 int do_extras=1 )
override;
181 bool add_trailing_slash);
183 bool getTrackSource(
OP_Node *export_parent,
187 bool getTrackSourceParm(
OP_Node *export_parent,
192 bool getTrackSourceRef(
OP_Node *export_parent,
196 void getTrackPrefix(
const PRM_Parm *src_parm,
200 static int copyToExportCallback(
void *
data,
int,
fpreal t,
204 static int copyFromExportCallback(
void *
data,
int,
fpreal t,
208 static int updateAliasesCallback(
void *
data,
int,
fpreal t,
211 bool getChannelCopies(
fpreal t,
215 void restoreChannelCopies(
fpreal t,
218 bool isChannelNameParm(
int parm_index);
220 int resetAllChannels(
fpreal t);
221 static int resetAllChannelsCallback(
void *
data,
int,
fpreal t,
225 static int sortChannelsCallback(
void *
data,
int,
fpreal t,
252 virtual bool conflict(
const char* details) = 0;
279 #endif // __CHOP_CHANNEL_H__
virtual fpreal handleChanged(CHOP_Handle *handle, CHOP_HandleData *data)
virtual void cookMyHandles(OP_Context &context)
bool evalVariableValue(UT_String &v, int i, int thr) override
CHOP_API OP_Node * CHOP_CreateChannelChop(const char *name, const CH_ChannelRefList &chan_refs, OP_Network *chopnet, CHOP_ChannelRangeType range_type, fpreal frame_start, fpreal frame_end, bool create_new, bool set_export, bool remove_old, bool lock_clip, fpreal sample_rate, CHOP_CreateChannelChopCallback *cb=nullptr)
bool updateParmsFlags() override
virtual ~CHOP_CreateChannelChopCallback()
int usesScope() const override
virtual bool resolveExport(const PRM_Parm *p, int subindex, CH_ChannelRef &out_export)
virtual OP_ERROR cookMyChop(OP_Context &context)=0
bool findParmFromTrack(const OP_FollowChanRefsOptions &opt, const char *trackname, OP_NodeParmRefCycle &cycle, OP_Node *&node, PRM_Parm *&parm, int &vecidx) override
void handleOpDependency(int referenced_op_id, const OP_Dependency &op_dep, OP_InterestType interest_type, bool &need_cook, const char *old_fullpath, const char *old_cwd, const char *old_chan_name) override
GLsizei GLsizei GLchar * source
GLuint const GLchar * name
static OP_VariablePair myVariablePair
**Note that the tasks the is the thread number *for the or if it s being executed by a non pool thread(this *can happen in cases where the whole pool is occupied and the calling *thread contributes to running the work load).**Thread pool.Have fun
SIM_API const UT_StringHolder force
virtual void checkTimeDependencies(int do_parms=1, int do_inputs=1, int do_extras=1)
static OP_TemplatePair myTemplatePair
virtual void buildParmDependency(int parm_index)
virtual bool evalVariableValue(UT_String &val, int index, int thread)
ImageBuf OIIO_API channels(const ImageBuf &src, int nchannels, cspan< int > channelorder, cspan< float > channelvalues={}, cspan< std::string > newchannelnames={}, bool shuffle_channel_names=false, int nthreads=0)