Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

MessageTracer Class Reference

#include <utils.h>

List of all members.


Detailed Description

Experimental class to help tracing messages.


Public Member Functions

 MessageTracer ()
 ~MessageTracer ()
void created (MessageId *m)
void cloned (MessageId *m)
void assigned (MessageId *m)
void deleted (MessageId *m)

Static Public Member Functions

static MessageTracerinstance ()

Protected Member Functions

void open ()

Protected Attributes

FILE * f
MessageIdlastId

Static Protected Attributes

static MessageTracer trc


Constructor & Destructor Documentation

MessageTracer::MessageTracer  ) 
 

00046 {
00047     f = NULL;
00048     lastId = NULL;
00049 }

MessageTracer::~MessageTracer  ) 
 

00052 {
00053     if (f)
00054         fclose(f);
00055 }


Member Function Documentation

void MessageTracer::assigned MessageId m  ) 
 

00078 {
00079     if (!f) open();
00080     fprintf(f,"A I:%d T:%d P:%d E:%ld %s\n", m->id, m->treeId, m->parentId,
00081             simulation.eventNumber(), simulation.contextModule()->fullPath().c_str());
00082     if (m==lastId) lastId = NULL;
00083 }

void MessageTracer::cloned MessageId m  ) 
 

00071 {
00072     if (!f) open();
00073     fprintf(f,"L I:%d T:%d P:%d E:%ld %s\n", m->id, m->treeId, m->parentId,
00074             simulation.eventNumber(), simulation.contextModule()->fullPath().c_str());
00075 }

void MessageTracer::created MessageId m  ) 
 

00063 {
00064     if (!f) open();
00065     if (lastId) fprintf(f,"C I:%d T:%d P:%d E:%ld %s\n", lastId->id, lastId->treeId, lastId->parentId,
00066                         simulation.eventNumber(), simulation.contextModule()->fullPath().c_str());
00067     lastId = m;
00068 }

void MessageTracer::deleted MessageId m  ) 
 

00086 {
00087     fprintf(f,"D I:%d T:%d P:%d E:%ld %s\n", m->id, m->treeId, m->parentId,
00088             simulation.eventNumber(), simulation.contextModule()->fullPath().c_str());
00089 }

static MessageTracer* MessageTracer::instance  )  [inline, static]
 

00049 {return &trc;}

void MessageTracer::open  )  [protected]
 

00058 {
00059     f = fopen("msgtrace.out","w");
00060 }


Member Data Documentation

FILE* MessageTracer::f [protected]
 

MessageId* MessageTracer::lastId [protected]
 

MessageTracer MessageTracer::trc [static, protected]
 


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 20:52:23 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.1