OpendTect 8.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
Threads::CommandTask Class Reference

CommandTask class can be used in a CommandLaunchMgr callback function to get information written to stdout or stderr streams by the MachineCommand. More...

#include <commandlaunchmgr.h>

Inheritance diagram for Threads::CommandTask:
[legend]

Public Member Functions

 CommandTask (const CommandTask &)=delete
 
 CommandTask (const OS::MachineCommand &, bool readstdoutput, bool readstderror, bool inpythonenv=false, const char *workdir=nullptr)
 
 CommandTask (const OS::MachineCommand &, const OS::CommandExecPars &, bool inpythonenv=false)
 
 CommandTask (const OS::MachineCommand &, OS::LaunchType lt=OS::Wait4Finish, bool inpythonenv=false, const char *workdir=nullptr)
 
virtual ~CommandTask ()
 
bool execute () override
 
const OS::MachineCommandgetMachineCommand () const
 
bool getResult () const
 
BufferString getStdError () const
 
BufferString getStdOutput () const
 
CommandTaskoperator= (const CommandTask &)=delete
 
- Public Member Functions inherited from Task
 Task (const Task &)=delete
 
virtual ~Task ()
 
virtual void controlWork (Control)
 
virtual void enableWorkControl (bool=true)
 Must be called before execute()
 
virtual uiRetVal errorWithDetails () const
 
virtual Control getState () const
 
virtual od_int64 nrDone () const
 
Taskoperator= (const Task &)=delete
 
virtual void setProgressMeter (ProgressMeter *)
 Must be called before execute()
 
virtual od_int64 totalNr () const
 
virtual uiString uiMessage () const
 
virtual uiString uiNrDoneText () const
 
bool workControlEnabled () const
 
- Public Member Functions inherited from NamedCallBacker
 NamedCallBacker (const char *nm=nullptr)
 
 NamedCallBacker (const NamedCallBacker &)=delete
 
 ~NamedCallBacker ()
 
virtual Notifier< NamedCallBacker > & objectToBeDeleted () const
 
NamedCallBackeroperator= (const NamedCallBacker &)=delete
 
bool operator== (const NamedCallBacker &oth) const
 
bool operator== (const NamedObject &oth) const
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
 
bool attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
 
void detachAllNotifiers () const
 Call from the destructor of your inherited object.
 
void detachCB (const NotifierAccess &, const CallBack &) const
 
void detachCB (const NotifierAccess *notif, const CallBack &cb) const
 
virtual bool isCapsule () const
 
bool isNotifierAttached (const NotifierAccess *) const
 Only for debugging purposes, don't use.
 
CallBackeroperator= (const CallBacker &)=delete
 
void stopReceivingNotifications () const
 
virtual CallBackertrueCaller ()
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=nullptr)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
virtual BufferString getName () const
 
bool getNameFromPar (const IOPar &)
 
const name_typename () const override
 
NamedObjectoperator= (const NamedObject &)
 
bool operator== (const NamedObject &oth) const
 
virtual void setName (const char *nm)
 
- Public Member Functions inherited from ObjectWithName
virtual ~ObjectWithName ()
 
bool hasName (const char *nm) const
 
bool hasName (const name_type &nm) const
 
void putNameInPar (IOPar &) const
 

Protected Attributes

OS::CommandExecPars execpars_
 
bool inpythonenv_ = false
 
OS::MachineCommand machcmd_
 
bool result_ = false
 
BufferStringstderror_ = nullptr
 
BufferStringstdoutput_ = nullptr
 
- Protected Attributes inherited from Task
Control control_ = Task::Run
 
Threads::ConditionVarworkcontrolcondvar_ = nullptr
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Additional Inherited Members

- Public Types inherited from Task
enum  Control { Run , Pause , Stop }
 
- Public Types inherited from ObjectWithName
typedef OD::String name_type
 
- Static Public Member Functions inherited from Task
static uiString uiStdNrDoneText ()
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 
- Protected Member Functions inherited from Task
 Task (const char *nm=nullptr)
 
virtual bool shouldContinue ()
 
- Protected Member Functions inherited from NamedCallBacker
void sendDelNotif () const
 

Detailed Description

CommandTask class can be used in a CommandLaunchMgr callback function to get information written to stdout or stderr streams by the MachineCommand.

<>

Constructor & Destructor Documentation

◆ CommandTask() [1/4]

Threads::CommandTask::CommandTask ( const OS::MachineCommand & ,
OS::LaunchType lt = OS::Wait4Finish,
bool inpythonenv = false,
const char * workdir = nullptr )

◆ CommandTask() [2/4]

Threads::CommandTask::CommandTask ( const OS::MachineCommand & ,
bool readstdoutput,
bool readstderror,
bool inpythonenv = false,
const char * workdir = nullptr )

◆ CommandTask() [3/4]

Threads::CommandTask::CommandTask ( const OS::MachineCommand & ,
const OS::CommandExecPars & ,
bool inpythonenv = false )

◆ ~CommandTask()

virtual Threads::CommandTask::~CommandTask ( )
virtual

◆ CommandTask() [4/4]

Threads::CommandTask::CommandTask ( const CommandTask & )
delete

Member Function Documentation

◆ execute()

bool Threads::CommandTask::execute ( )
overridevirtual

Implements Task.

◆ getMachineCommand()

const OS::MachineCommand & Threads::CommandTask::getMachineCommand ( ) const
inline

◆ getResult()

bool Threads::CommandTask::getResult ( ) const
inline

◆ getStdError()

BufferString Threads::CommandTask::getStdError ( ) const

◆ getStdOutput()

BufferString Threads::CommandTask::getStdOutput ( ) const

◆ operator=()

CommandTask & Threads::CommandTask::operator= ( const CommandTask & )
delete

Member Data Documentation

◆ execpars_

OS::CommandExecPars Threads::CommandTask::execpars_
protected

◆ inpythonenv_

bool Threads::CommandTask::inpythonenv_ = false
protected

◆ machcmd_

OS::MachineCommand Threads::CommandTask::machcmd_
protected

◆ result_

bool Threads::CommandTask::result_ = false
protected

◆ stderror_

BufferString* Threads::CommandTask::stderror_ = nullptr
protected

◆ stdoutput_

BufferString* Threads::CommandTask::stdoutput_ = nullptr
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2025