omni_thread Class Reference

#include <omnithread.h>

Inheritance diagram for omni_thread:

Inheritance graph
[legend]
Collaboration diagram for omni_thread:

Collaboration graph
[legend]

List of all members.

Classes

class  ensure_self
class  init_t
class  value_t

Public Types

enum  priority_t { PRIORITY_LOW, PRIORITY_NORMAL, PRIORITY_HIGH }
enum  state_t { STATE_NEW, STATE_RUNNING, STATE_TERMINATED }
typedef unsigned int key_t

Public Member Functions

 omni_thread (void(*fn)(void *), void *arg=NULL, priority_t pri=PRIORITY_NORMAL)
 omni_thread (void *(*fn)(void *), void *arg=NULL, priority_t pri=PRIORITY_NORMAL)
void start (void)
void start_undetached (void)
void join (void **)
void set_priority (priority_t)
value_tset_value (key_t k, value_t *v)
value_tget_value (key_t k)
value_tremove_value (key_t k)
priority_t priority (void)
state_t state (void)
int id (void)

Static Public Member Functions

static omni_threadcreate (void(*fn)(void *), void *arg=NULL, priority_t pri=PRIORITY_NORMAL)
static omni_threadcreate (void *(*fn)(void *), void *arg=NULL, priority_t pri=PRIORITY_NORMAL)
static void exit (void *return_value=NULL)
static omni_threadself (void)
static void yield (void)
static void sleep (unsigned long secs, unsigned long nanosecs=0)
static void get_time (unsigned long *abs_sec, unsigned long *abs_nsec, unsigned long rel_sec=0, unsigned long rel_nsec=0)
static void stacksize (unsigned long sz)
static unsigned long stacksize ()
static key_t allocate_key ()
static omni_threadcreate_dummy (void)
static void release_dummy ()

Protected Member Functions

 omni_thread (void *arg=NULL, priority_t pri=PRIORITY_NORMAL)
virtual ~omni_thread (void)

Friends

class init_t
class omni_thread_dummy


Member Typedef Documentation

typedef unsigned int omni_thread::key_t


Member Enumeration Documentation

Enumerator:
PRIORITY_LOW 
PRIORITY_NORMAL 
PRIORITY_HIGH 

Enumerator:
STATE_NEW 
STATE_RUNNING 
STATE_TERMINATED 


Constructor & Destructor Documentation

omni_thread::omni_thread ( void(*)(void *)  fn,
void *  arg = NULL,
priority_t  pri = PRIORITY_NORMAL 
)

omni_thread::omni_thread ( void *(*)(void *)  fn,
void *  arg = NULL,
priority_t  pri = PRIORITY_NORMAL 
)

omni_thread::omni_thread ( void *  arg = NULL,
priority_t  pri = PRIORITY_NORMAL 
) [protected]

virtual omni_thread::~omni_thread ( void   )  [protected, virtual]


Member Function Documentation

static key_t omni_thread::allocate_key (  )  [static]

static omni_thread* omni_thread::create ( void *(*)(void *)  fn,
void *  arg = NULL,
priority_t  pri = PRIORITY_NORMAL 
) [static]

static omni_thread* omni_thread::create ( void(*)(void *)  fn,
void *  arg = NULL,
priority_t  pri = PRIORITY_NORMAL 
) [static]

static omni_thread* omni_thread::create_dummy ( void   )  [static]

static void omni_thread::exit ( void *  return_value = NULL  )  [static]

static void omni_thread::get_time ( unsigned long *  abs_sec,
unsigned long *  abs_nsec,
unsigned long  rel_sec = 0,
unsigned long  rel_nsec = 0 
) [static]

value_t* omni_thread::get_value ( key_t  k  ) 

int omni_thread::id ( void   )  [inline]

void omni_thread::join ( void **   ) 

priority_t omni_thread::priority ( void   )  [inline]

static void omni_thread::release_dummy (  )  [static]

value_t* omni_thread::remove_value ( key_t  k  ) 

static omni_thread* omni_thread::self ( void   )  [static]

void omni_thread::set_priority ( priority_t   ) 

value_t* omni_thread::set_value ( key_t  k,
value_t v 
)

static void omni_thread::sleep ( unsigned long  secs,
unsigned long  nanosecs = 0 
) [static]

static unsigned long omni_thread::stacksize (  )  [static]

static void omni_thread::stacksize ( unsigned long  sz  )  [static]

void omni_thread::start ( void   ) 

Reimplemented in gr_scheduler_thread.

void omni_thread::start_undetached ( void   ) 

state_t omni_thread::state ( void   )  [inline]

static void omni_thread::yield ( void   )  [static]


Friends And Related Function Documentation

friend class init_t [friend]

friend class omni_thread_dummy [friend]


The documentation for this class was generated from the following file:

Generated on Thu Mar 5 09:03:20 2009 for GNU Radio 3.1.3 by  doxygen 1.5.8