#ifndef HTASK_H
#define HTASK_H

#include "TNamed.h"

 
typedef Int_t TaskControl; 
const TaskControl  kSTOP = -1;
const TaskControl  kGOFORWARD  = 0; 
const TaskControl  kGOBACKWARD = 1;



class HTask : public TNamed {
protected:
  HTask* owner;
  Bool_t manual;
  Bool_t isInitialised;
  Bool_t isConnected; 
  Bool_t fIsTimed;     // timer flag

public:
  virtual Bool_t connectTask(HTask *task,Int_t n)=0;

public:
  HTask(void) {}
  HTask(const Text_t name[],const Text_t title[]): TNamed(name,title), manual(kFALSE),
  isInitialised(kFALSE), isConnected(kFALSE) {}
  virtual ~HTask(void) {}
  virtual HTask *next(Int_t &errCode)=0;
  virtual HTask *getTask(const Char_t *name)=0;
  virtual Bool_t init(void)=0;
  virtual Bool_t reinit(void) {return kTRUE;}

  virtual Bool_t finalize(void)=0;
  virtual void getConnections(){;}
  virtual HTask* getComposite()=0; 
  virtual HTask* getOwner(){return owner;}
  virtual void setOwner(HTask* atask){owner=atask;}
  virtual Bool_t setConnections(){ return kTRUE;}
  void setManual(){ manual=kTRUE;}
  //void error(void);
  virtual void isTimed(Bool_t)=0;
  virtual void resetTimer()=0;
  virtual void printTimer()=0;
  ClassDef(HTask,1) //ABC for a task
};


#endif /* !HTASK_H */






Last change: Sat May 22 13:15:24 2010
Last generated: 2010-05-22 13:15

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.