Link conv-cpm as C++
[charm.git] / src / ck-perf / trace-projector.h
blob2e0ffa1bdd737c1df8c4f8d49344501879942a21
1 /***********Projector Trace File added by Sayantan ***********/
2 #ifndef _PROJECTOR_H
3 #define _PROJECTOR_H
5 #include "trace.h"
6 #include "ck.h"
7 #include "stdio.h"
8 #include "errno.h"
9 #include "allEvents.h"
10 #include "trace-common.h"
12 /// class for recording trace projector events
13 /**
14 TraceProjector will log Converse/Charm++ events and write into .log files;
15 events descriptions will be written into .sts file.
18 extern void _createTraceprojector(char **argv);
20 class TraceProjector : public Trace {
21 private:
22 int traceCoreOn;
23 public:
24 TraceProjector(char **argv);
25 void userEvent(int e);
26 void userBracketEvent(int e, double bt, double et);
27 void creation(envelope *e, int ep, int num=1);
28 void beginExecute(envelope *e);
29 void beginExecute(char *) {}
30 void beginExecute(CmiObjId *tid);
31 void beginExecute(int event,int msgType,int ep,int srcPe,int ml,CmiObjId *idx=NULL);
32 void endExecute(void);
33 void messageRecv(char *env, int pe);
34 void beginIdle(double curWallTime);
35 void endIdle(double curWallTime);
36 void beginPack(void);
37 void endPack(void);
38 void beginUnpack(void);
39 void endUnpack(void);
40 void enqueue(envelope *e);
41 void dequeue(envelope *e);
42 void beginComputation(void);
43 void endComputation(void);
45 int traceRegisterUserEvent(const char*, int);
46 void traceClearEps();
47 void traceWriteSts();
48 void traceClose();
49 void traceBegin();
50 void traceEnd();
54 #endif