v2.10-0 (21000JUN2005)

Go4ThreadManager
Class TGo4Runnable

Direct Known Subclasses:
TGo4AnalysisMainRunnable, TGo4AnalysisWatchRunnable, TGo4HisConnectorRunnable, TGo4ObjConnectorRunnable, TGo4ConnectorRunnable, TGo4LocalCommandRunnable, TGo4TaskHandlerRunnable, TGo4ControllerRunnable, TGo4LoggingRunnable, TGo4MainRunnable, TGo4WatchRunnable, TGo4TestRunnable

abstract class TGo4Runnable
derived from TNamed

Base class for all go4 runnables. Virtual method Run() is working in
the thread, this must be overridden by the user runnables.

Author:
J. Adamczewski, Go4 project-DVEE-GSI Darmstadt, Germany, j.adamczewski@gsi.de
Version: 0.9
Since: jul 2000-oct 2001

Field Summary
 protected TGo4Thread*fxGo4Thread
          Backlink to thread which runs this.
 protected TGo4ThreadManager*fxManager
          The threadmanager which is responsible for our thread.

Fields inherited from class TNamed
fName, fTitle

Constructor Summary
 TGo4Runnable(const TGo4Runnable& right)
           
 TGo4Runnable(const char * name, TGo4ThreadManager* man)
           
 private TGo4Runnable()
           

Destructor Summary
 virtual synchronized ~TGo4Runnable()
           

Method Summary
 TGo4Thread*GetThread()
           
 TGo4ThreadManager*GetThreadManager()
           
 synchronized TGo4Runnable&operator=(const TGo4Runnable& right)
           
 protected virtual Int_tPostRun(void * ptr)
          Function which is called once after the Run()
method on threadstop
 protected virtual Int_tPreRun(void * ptr)
          Function which is called once before the Run()
method on threadstart
 protected abstract Int_tRun(void * ptr)
          The working function which runs in the
thread
 voidSetThread(TGo4Thread* gthread)
           
 protected virtual voidThreadCatch(TGo4Exception& ex)
          catch for exceptions occuring in workfunc
 protected virtual voidUnexpectedCatch()
          catch for all unexcpected exceptions happening in
workfunc

Methods inherited from class TNamed
operator=, Clear, Clone, Compare, Copy, FillBuffer, GetName, GetTitle, Hash, IsSortable, SetName, SetNameTitle, SetTitle, ls, Print, Sizeof, Class, Class_Name, Class_Version, Dictionary, IsA, ShowMembers, Streamer, StreamerNVirtual, DeclFileName, ImplFileLine, ImplFileName, DeclFileLine

Field Detail

fxGo4Thread

protected TGo4Thread* fxGo4Thread
Backlink to thread which runs this.
supplierCardinality 1
clientCardinality 1

fxManager

protected TGo4ThreadManager* fxManager
The threadmanager which is responsible for our thread.
supplierCardinality 1
clientCardinality 0..*
Constructor Detail

TGo4Runnable

public TGo4Runnable(const TGo4Runnable& right)

TGo4Runnable

public TGo4Runnable(const char * name, TGo4ThreadManager* man)

TGo4Runnable

private TGo4Runnable()
Method Detail

~TGo4Runnable

public virtual synchronized ~TGo4Runnable()
Method Detail

GetThread

public TGo4Thread* GetThread()

GetThreadManager

public TGo4ThreadManager* GetThreadManager()

operator=

public synchronized TGo4Runnable& operator=(const TGo4Runnable& right)

PostRun

protected virtual Int_t PostRun(void * ptr)
Function which is called once after the Run()
method on threadstop

PreRun

protected virtual Int_t PreRun(void * ptr)
Function which is called once before the Run()
method on threadstart

Run

protected abstract Int_t Run(void * ptr)
The working function which runs in the
thread

SetThread

public void SetThread(TGo4Thread* gthread)

ThreadCatch

protected virtual void ThreadCatch(TGo4Exception& ex)
catch for exceptions occuring in workfunc

UnexpectedCatch

protected virtual void UnexpectedCatch()
catch for all unexcpected exceptions happening in
workfunc

Association Links

to Class TGo4ThreadManager

The threadmanager which is responsible for our thread.

Client Cardinality 0..*
Supplier Cardinality 1

to Class TGo4Thread

Backlink to thread which runs this.

Client Cardinality 1
Supplier Cardinality 1

J.Adamczewski, M.Al-Turany, D.Bertini, H.G.Essel, S.Linev

30-06-2005