AndroMeta  2.0.0
AndroMeta/include/AndroMeta/MInterrupt.h
Go to the documentation of this file.
00001 /*
00002  * Copyright 2009-2012 AndroMeta LLC. All rights reserved.
00003  *
00004  * AndroMeta LLC retains all intellectual property and proprietary 
00005  * rights to this software and related documentation and any modifications 
00006  * thereto.  Any use, reproduction, disclosure, or distribution of this 
00007  * software and related documentation without an express license agreement 
00008  * from AndroMeta LLC is strictly prohibited.
00009  * 
00010  */
00011 
00019 #ifndef ANDROMETA_M_INTERRUPT_H
00020 #define ANDROMETA_M_INTERRUPT_H
00021 
00022 #include <AndroMeta/MTime.h>
00023 
00024 namespace Meta{
00025   
00037   class MInterrupt{
00038   public:
00039     
00043     static void setTimeout(const mtime& timeout);
00044     
00048     static void clearTimeout();
00049     
00053     static void setTimeout(int64_t threadId, const mtime& timeout);
00054     
00058     static void clearTimeout(int64_t threadId);
00059     
00063     static void interrupt(int64_t threadId);
00064     
00068     static void clearInterrupt(int64_t threadId);
00069     
00073     static void check();
00074     
00075   private:
00076     MInterrupt& operator=(const MInterrupt&);
00077     MInterrupt(const MInterrupt&);
00078     
00079   };
00080   
00081 } // end namespace Meta
00082 
00083 #endif // ANDROMETA_M_INTERRUPT_H