X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.0%2Fguicast%2Fthread.h;h=1afeecb0d9c61245e6423eaab3160f7c1264c88d;hb=55e2690938cfc977f708039199f1246f0a563545;hp=ae607a38bc113839402a1d73626c9a8d5498a059;hpb=2d99bb8ce591f05a31464b517d85dc2bc35b2abe;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.0/guicast/thread.h b/cinelerra-5.0/guicast/thread.h index ae607a38..1afeecb0 100644 --- a/cinelerra-5.0/guicast/thread.h +++ b/cinelerra-5.0/guicast/thread.h @@ -37,9 +37,8 @@ static inline int gettid() { return syscall(SYS_gettid, 0, 0, 0); } class Thread { -private: static void* entrypoint(void *parameters); - bool exists(); // tid exists + protected: virtual void run() = 0; public: @@ -54,7 +53,9 @@ public: int enable_cancel(); int disable_cancel(); int get_cancel_enabled(); - bool running(); // exists and not finished + bool exists() { return tid != ((pthread_t)-1); } + bool running() { return exists() && !finished; } + int get_synchronous(); int set_synchronous(int value); int get_realtime();