AndroMeta  2.0.0
AndroMeta/include/AndroMeta/MPLQueue.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_MPL_QUEUE_H
00020 #define ANDROMETA_MPL_QUEUE_H
00021 
00022 #include <AndroMeta/MVector.h>
00023 
00024 namespace Meta{
00025 
00026   class MPLNode;
00027 
00033   class MPLQueue{
00034   public:
00043     MPLQueue(size_t threads=1);
00044     
00048     ~MPLQueue();
00049     
00055     void add(MPLNode* n);
00056 
00060     void clear();
00061 
00065     void run();
00066 
00070     void start();
00071     
00075     void await();
00076     
00077   private:
00078     class MPLQueue_* x_;
00079   };
00080 
00081 } // end namespace Meta
00082 
00083 #endif // ANDROMETA_MPL_QUEUE_H