Main Page | Class Hierarchy | Compound List | File List | Compound Members | File Members

os.h

Go to the documentation of this file.
00001 /*--------------------------------------------------------------------
00002  *
00003  * (C) Copyright Koninklijke Philips Electronics NV 2006. 
00004  * All rights reserved. This software is licensed under the terms of
00005  * version 2.1 of the GNU Lesser General Public License as published 
00006  * by the Free Software Foundation. For licensing and warranty
00007  * information, see the file COPYING in the main directory.
00008  *
00009  *------------------------------------------------------------------*/
00010 
00011 #ifndef OS_H
00012 #define OS_H
00013 
00014 class osTask;
00015 class osSemaphore;
00016 class osMutex;
00017 
00018 class Os
00019 {
00020 public:
00021   Os();
00022   virtual ~Os();
00023 
00024   virtual osTask*   createTask(void (*f)(void*), void* a) = 0;
00025   virtual osMutex*  createMutex(bool locked) = 0;
00026   virtual osSemaphore*  createSemaphore(int credit) = 0;
00027 
00028   void setDeadlockHandler(void (*f)());
00029   void setDeadlockHandler(void (*f)(void*), void* a);
00030   bool deadlockHandler();
00031 
00032 private:
00033   void (*deadlockFnc)();
00034   void (*deadlockFncA)(void*);
00035   void *deadlockArg;
00036 };
00037 
00038 Os* boot();
00039 
00040 #endif

Generated on Wed Feb 15 14:52:39 2006 for yapi by doxygen 1.3.2