Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

MessageTracer Class Reference

#include <utils.h>

List of all members.

Public Methods

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

Static Public Methods

MessageTracer * instance ()

Protected Methods

void open ()

Protected Attributes

FILE * f
MessageIdlastId

Static Protected Attributes

MessageTracer trc


Detailed Description

Experimental class to help tracing messages.

Definition at line 51 of file utils.h.


Constructor & Destructor Documentation

MessageTracer::MessageTracer  
 

Definition at line 45 of file utils.cc.

References f, and lastId.

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

MessageTracer::~MessageTracer  
 

Definition at line 51 of file utils.cc.

References f.

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


Member Function Documentation

void MessageTracer::assigned MessageId   m
 

Definition at line 77 of file utils.cc.

References f, MessageId::id, lastId, open(), MessageId::parentId, and MessageId::treeId.

Referenced by MessageId::operator=().

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());
00082     if (m==lastId) lastId = NULL;
00083 }

void MessageTracer::cloned MessageId   m
 

Definition at line 70 of file utils.cc.

References f, MessageId::id, open(), MessageId::parentId, and MessageId::treeId.

Referenced by MessageId::MessageId().

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());
00075 }

void MessageTracer::created MessageId   m
 

Definition at line 62 of file utils.cc.

References f, MessageId::id, lastId, open(), MessageId::parentId, and MessageId::treeId.

Referenced by MessageId::MessageId().

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());
00067     lastId = m;
00068 }

void MessageTracer::deleted MessageId   m
 

Definition at line 85 of file utils.cc.

References f, MessageId::id, MessageId::parentId, and MessageId::treeId.

Referenced by MessageId::~MessageId().

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());
00089 }

MessageTracer* MessageTracer::instance   [inline, static]
 

Definition at line 59 of file utils.h.

Referenced by MessageId::MessageId(), MessageId::operator=(), and MessageId::~MessageId().

00059 {return &trc;}

void MessageTracer::open   [protected]
 

Definition at line 57 of file utils.cc.

References f.

Referenced by assigned(), cloned(), and created().

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


Member Data Documentation

FILE* MessageTracer::f [protected]
 

Definition at line 55 of file utils.h.

Referenced by assigned(), cloned(), created(), deleted(), MessageTracer(), open(), and ~MessageTracer().

MessageId* MessageTracer::lastId [protected]
 

Definition at line 56 of file utils.h.

Referenced by assigned(), created(), and MessageTracer().

MessageTracer MessageTracer::trc [static, protected]
 

Definition at line 41 of file utils.cc.


The documentation for this class was generated from the following files:
Generated on Sat May 15 20:30:48 2004 for Ethernet by doxygen1.2.17