00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef SST_CORE_ACTIVITYQUEUE_H
00014 #define SST_CORE_ACTIVITYQUEUE_H
00015
00016 #include <sst/core/serialization.h>
00017
00018 #include <sst/core/activity.h>
00019
00020 namespace SST {
00021
00022
00023
00024 class ActivityQueue {
00025 public:
00026 ActivityQueue() {}
00027 virtual ~ActivityQueue() {}
00028
00029
00030 virtual bool empty() = 0;
00031
00032 virtual int size() = 0;
00033
00034 virtual Activity* pop() = 0;
00035
00036 virtual void insert(Activity* activity) = 0;
00037
00038 virtual Activity* front() = 0;
00039
00040 private:
00041
00042 friend class boost::serialization::access;
00043 template<class Archive>
00044 void
00045 serialize(Archive & ar, const unsigned int version )
00046 {
00047 }
00048 };
00049
00050 }
00051
00052 BOOST_CLASS_EXPORT_KEY(SST::ActivityQueue)
00053
00054 #endif // SST_CORE_ACTIVITYQUEUE_H