Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Thread Class Reference

#include <thread.h>

Inheritance diagram for Thread:

TypedReferenceCount TypedObject ReferenceCount GraphicsEngine::RenderThread philosopher ThreadWithData List of all members.

Public Member Functions

INLINE Thread (const string &name)
virtual ~Thread ()
INLINE const string & get_name () const
INLINE bool start (ThreadPriority priority, bool global, bool joinable)
INLINE void join ()
virtual void output (ostream &out) const

Static Public Member Functions

INLINE void prepare_for_exit ()
INLINE Thread * get_current_thread ()
INLINE bool is_threading_supported ()
INLINE void sleep (double seconds)
TypeHandle get_class_type ()
void init_type ()

Protected Member Functions

virtual void thread_main ()=0

Private Member Functions

INLINE Thread (const Thread &copy)
INLINE void operator= (const Thread &copy)

Private Attributes

bool _started
string _name
ThreadImpl _impl

Static Private Attributes

TypeHandle _type_handle

Friends

class ThreadDummyImpl
class ThreadNsprImpl

Constructor & Destructor Documentation

INLINE Thread::Thread const string &  name  ) 
 

Thread::~Thread  )  [virtual]
 

Definition at line 29 of file thread.cxx.

INLINE Thread::Thread const Thread &  copy  )  [private]
 


Member Function Documentation

TypeHandle Thread::get_class_type void   )  [inline, static]
 

Reimplemented from ReferenceCount.

Definition at line 75 of file thread.h.

INLINE Thread* Thread::get_current_thread  )  [static]
 

Referenced by ThreadWithData::thread_main().

INLINE const string& Thread::get_name  )  const
 

Referenced by output(), ThreadWithData::thread_main(), and ThreadWithData::ThreadWithData().

void Thread::init_type void   )  [inline, static]
 

Reimplemented from TypedReferenceCount.

Definition at line 78 of file thread.h.

References TypedObject::get_class_type(), TypedReferenceCount::init_type(), and register_type().

Referenced by init_libexpress().

INLINE bool Thread::is_threading_supported  )  [static]
 

Referenced by GraphicsEngine::set_threading_model().

INLINE void Thread::join  ) 
 

Referenced by GraphicsEngine::terminate_threads().

INLINE void Thread::operator= const Thread &  copy  )  [private]
 

void Thread::output ostream &  out  )  const [virtual]
 

Definition at line 38 of file thread.cxx.

References get_name(), and TypedReferenceCount::get_type().

INLINE void Thread::prepare_for_exit  )  [static]
 

Referenced by main().

INLINE void Thread::sleep double  seconds  )  [static]
 

Referenced by main(), ThreadWithData::thread_main(), and philosopher::thread_main().

INLINE bool Thread::start ThreadPriority  priority,
bool  global,
bool  joinable
 

virtual void Thread::thread_main  )  [protected, pure virtual]
 

Implemented in GraphicsEngine::RenderThread, philosopher, and ThreadWithData.


Friends And Related Function Documentation

friend class ThreadDummyImpl [friend]
 

Definition at line 70 of file thread.h.

friend class ThreadNsprImpl [friend]
 

Definition at line 71 of file thread.h.


Member Data Documentation

ThreadImpl Thread::_impl [private]
 

Definition at line 69 of file thread.h.

string Thread::_name [private]
 

Definition at line 68 of file thread.h.

bool Thread::_started [private]
 

Definition at line 67 of file thread.h.

TypeHandle Thread::_type_handle [static, private]
 

Reimplemented from TypedReferenceCount.

Definition at line 21 of file thread.cxx.


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:13:42 2003 for Panda by doxygen1.3