doc: Add serial to list of ci file reserved words
[charm.git] / src / ck-perf / trace-projectionsBOC.h
index f9c62444ea17754ba6e25c00b5b3525d1cf6fa18..fd63e0b80a20589608d3cd91fccf84393afec0f5 100644 (file)
@@ -3,6 +3,7 @@
 #include "trace-common.h"
 #include "ckcallback-ccs.h"
 
+#include <set>
 
 #ifndef PROJ_ANALYSIS
 // NOTE: Needed to handle the automatically-generated method so 
@@ -130,17 +131,23 @@ class KMeansBOC : public CBase_KMeansBOC {
 class TraceProjectionsBOC : public CBase_TraceProjectionsBOC {
  private:
   bool findOutliers;
+  bool findStartTime;
 
   int parModulesRemaining;
 
   double dummy;
   double endTime;
   double analysisStartTime;
+  int endPe;                          // end PE which calls CkExit()
+  std::set<int> list;
+  int          flush_count;
  public:
- TraceProjectionsBOC(bool _findOutliers) : findOutliers(_findOutliers) {};
- TraceProjectionsBOC(CkMigrateMessage *m):CBase_TraceProjectionsBOC(m) {};
+ TraceProjectionsBOC(bool _findOutliers, bool _findStartTime) : findOutliers(_findOutliers), findStartTime(_findStartTime), parModulesRemaining(0), endPe(-1), flush_count(0) {};
+ TraceProjectionsBOC(CkMigrateMessage *m):CBase_TraceProjectionsBOC(m), parModulesRemaining(0), endPe(-1), flush_count(0) {};
 
-  void traceProjectionsParallelShutdown();
+  void traceProjectionsParallelShutdown(int);
+  void startTimeAnalysis();
+  void startTimeDone(CkReductionMsg *);
   void startEndTimeAnalysis();
   void endTimeDone(CkReductionMsg *);
   void kMeansDone(CkReductionMsg *);
@@ -151,5 +158,8 @@ class TraceProjectionsBOC : public CBase_TraceProjectionsBOC {
   void closeParallelShutdown(CkReductionMsg *);
 
   void ccsOutlierRequest(CkCcsRequestMsg *);
+
+  void flush_warning(int pe);
+  void print_warning();
 };
 #endif