52 #ifndef __PCL_ProcessInstance_h
53 #define __PCL_ProcessInstance_h
57 #ifndef __PCL_BUILDING_PIXINSIGHT_APPLICATION
70 class PCL_CLASS Process;
71 class PCL_CLASS ImageWindow;
159 SetHandle( p.handle );
330 return ExecuteOn( image,
IsoString( hints ) );
412 GetExecutionTimes( startJD, dum );
423 double dum, elapsedSecs;
424 GetExecutionTimes( dum, elapsedSecs );
461 const IsoString& language =
"JavaScript" );
493 return IconsByProcessId(
IsoString( processId ) );
548 return ParameterValue(
ProcessParameter( ParentProcess(), parameterId ), rowIndex );
553 return ParameterValue(
IsoString( parameterId ), rowIndex );
614 return SetParameterValue( value,
ProcessParameter( ParentProcess(), parameterId ), rowIndex );
619 return SetParameterValue( value,
IsoString( parameterId ), rowIndex );
648 return TableRowCount(
IsoString( tableId ) );
684 return AllocateTableRows(
ProcessParameter( ParentProcess(), tableId ), rowCount );
689 return AllocateTableRows(
IsoString( tableId ), rowCount );
694 ProcessInstance(
void* h ) : UIObject( h )
698 ProcessInstance(
const void* h ) : UIObject( h )
702 void* CloneHandle()
const override;
704 friend class ProcessInstancePrivate;
705 friend class InterfaceDispatcher;
706 friend class InternalIconEnumerator;
Acts like a union for all types of images in PCL, with optional class-wide ownership of transported i...
High-level interface to an image window object in the PixInsight core application.
Eight-bit string (ISO/IEC-8859-1 or UTF-8 string)
High-level interface to a process instance.
static ProcessInstance FromSource(const String &source, const IsoString &language="JavaScript")
Process ParentProcess() const
bool IsMaskable(const View &view, const ImageWindow &mask) const
String Description() const
ProcessInstance(const ProcessInstance &p)
ProcessInstance(const Process &process)
size_type TableRowCount(const IsoString &tableId) const
static ProcessInstance & Null()
bool CanExecuteOn(const ImageVariant &image, String &whyNot) const
bool SetParameterValue(const Variant &value, const ProcessParameter ¶meter, size_type rowIndex=~size_type(0))
static ProcessInstance FromIcon(const IsoString &iconId)
bool Validate(String &whyNot)
void GetExecutionTimes(double &startJD, double &elapsedSecs) const
size_type TableRowCount(const ProcessParameter &table) const
bool ExecuteOn(ImageVariant &image, const IsoString &hints=IsoString())
bool CanLaunchInterface() const
ProcessInstance Clone() const
bool SetParameterValue(const Variant &value, const IsoString ¶meterId, size_type rowIndex=~size_type(0))
Variant ParameterValue(const ProcessParameter ¶meter, size_type rowIndex=~size_type(0)) const
bool Assign(const ProcessInstance &p)
void SetDescription(const String &text)
bool CanExecuteOn(const View &view, String &whyNot) const
static IsoStringList Icons()
bool ExecuteOn(View &view, bool swapFile=true)
bool AllocateTableRows(const IsoString &tableId, size_type rowCount)
Variant ParameterValue(const IsoString ¶meterId, size_type rowIndex=~size_type(0)) const
String ToSource(const IsoString &language="JavaScript", const IsoString &varId=IsoString(), int indent=0) const
bool AllocateTableRows(const ProcessParameter &table, size_type rowCount)
~ProcessInstance() override
double ElapsedTime() const
static IsoStringList IconsByProcessId(const IsoString &processId)
bool IsHistoryUpdater(const View &view) const
bool CanExecuteGlobal(String &whyNot) const
Identifies and describes a process parameter.
High-level interface to an installed process.
Root base class for all user interface objects.
Acts like a union to store instances of different data types.
High-level interface to a PixInsight view object.