Executor Class Reference

wraps something executable e.g. a thread or a process More...

#include <executor.h>

Inheritance diagram for Executor:
zmm::Object ProcessExecutor ThreadExecutor IOHandlerChainer MPEGRemuxProcessor

Public Member Functions

virtual ~Executor ()
 destructor of the executor, has to make sure that the executor is dead
virtual bool isAlive ()=0
 method to check if the executor is still running
virtual bool kill ()=0
 kill the executor
virtual int getStatus ()=0
 get the status, exit or return code of the executor
void retain ()
void release ()
int getRefCount ()

Static Public Member Functions

static void * operator new (size_t size)
static void operator delete (void *ptr)

Protected Attributes

mt_atomic_t _ref_count
pthread_mutex_t mutex

Detailed Description

wraps something executable e.g. a thread or a process

Definition at line 38 of file executor.h.


Constructor & Destructor Documentation

virtual Executor::~Executor (  )  [inline, virtual]

destructor of the executor, has to make sure that the executor is dead

Definition at line 43 of file executor.h.


Member Function Documentation

int Object::getRefCount (  )  [inherited]

Definition at line 78 of file object.cc.

References zmm::Object::_ref_count, and atomic_get().

virtual int Executor::getStatus (  )  [pure virtual]

get the status, exit or return code of the executor

Returns:
the status, exit or return code. 0 for normal shutdown

Implemented in IOHandlerChainer, MPEGRemuxProcessor, ProcessExecutor, and ThreadExecutor.

virtual bool Executor::isAlive (  )  [pure virtual]

method to check if the executor is still running

Returns:
true if the executor is still running, false otherwise

Implemented in ProcessExecutor, and ThreadExecutor.

virtual bool Executor::kill (  )  [pure virtual]

kill the executor

Returns:
true if the executor was killed successfully, false otherwise

Implemented in ProcessExecutor, and ThreadExecutor.

void Object::operator delete ( void *  ptr  )  [static, inherited]

Definition at line 87 of file object.cc.

References FREE.

void * Object::operator new ( size_t  size  )  [static, inherited]

Definition at line 83 of file object.cc.

References MALLOC.

void Object::release (  )  [inherited]
void Object::retain (  )  [inherited]

Field Documentation

mt_atomic_t zmm::Object::_ref_count [protected, inherited]
pthread_mutex_t zmm::Object::mutex [protected, inherited]

The documentation for this class was generated from the following file:

Generated on Fri Mar 26 20:16:57 2010 for MediaTomb by  doxygen 1.6.1