#ifndef ROOT_TThreadImp #define ROOT_TThreadImp //+SEQ,CopyRight,T=NOINCLUDE. ////////////////////////////////////////////////////////////////////////// // // // TThreadImp // // // // This class implements threads. A thread is an execution environment // // much lighter than a process. A single process can have multiple // // threads. The actual work is done via the TThreadImp class (either // // TThreadPosix, TThreadSolaris or TThreadNT). // // // ////////////////////////////////////////////////////////////////////////// #ifndef ROOT_TObject //*KEEP,TObject. #include "TObject.h" //*KEND. #endif #ifndef ROOT_TThread //*KEEP,TThread,T=C++. #include "TThread.h" //*KEND. #endif class TThreadImp : public TObject { public: TThreadImp(); ~TThreadImp(); virtual Int_t Join(Int_t jid, void **ret)=0; virtual Int_t SelfId()=0; virtual Int_t Run(TThread *th)=0; virtual Int_t Kill(TThread *th)=0; virtual Int_t SetCancelOff()=0; virtual Int_t SetCancelOn()=0; virtual Int_t SetCancelAsynchronous()=0; virtual Int_t SetCancelDeferred()=0; virtual Int_t CancelPoint()=0; virtual Int_t CleanUpPush(void **main, void *free,void *arg)=0; virtual Int_t CleanUpPop(void **main, Int_t exe)=0; virtual Int_t CleanUp(void **main)=0; virtual Int_t Exit(void *ret)=0; virtual Int_t Sleep (ULong_t secs, ULong_t nanos = 0)=0; virtual Int_t GetTime(ULong_t *absSec, ULong_t *absNanoSec)=0; ClassDef(TThreadImp,0) // ThreadImp class }; #endif