MonItem - base class for performance counters

The MonItem class contains the infrastructure for mapping counters between variables in code, their registered MonItem forms, and the memory representation that will be written to, and read from, the memory-mapped file.

Enums

Values

MonItemFlags

MonItem modifiers (bit mapped)

MI_HIDDEN (1) - Hidden counter: used for internal only use, not a performance counter.

MI_CUMULATIVE(2) - Cumulative counter: values will always increase.

MonItemTypes

MonItem subclass type

MIT_NONE (1) - A plain MonItem

MIT_INT (2) - A MonInteger

MIT_INTMAX (3) - A MonIntMax

Constructors

MonItem( const char *name, int flags = 0 )

Constructs a new MonItem with the provided name and flags (defaulting to none) or type MIT_NONE (1)

Should only be called by a constructor in a subclass

MonItem( const MonItem & )

Default copy constructor

Static Method

MonItem *Find(const char *name)

Finds a MonItem in the registry by name or returns NULL if no matches are found

Operator

MonItem &operator =( const MonItem & )

Copy a MonItem

Methods

StrRef Name() const

Returns the name of the MonItem object

int Flags() const

Returns the MonItemFlags of the MonItem object

bool Active() const

Returns true if the MonItem is mapped to shared memory

Virtual Methods

int DataSize() const

The number of bytes used to store the data of the MonItem type

int Alignment() const

The number of bytes to use for alignment padding.

int ItemId() const

The MonItemTypes of the MonItem type

void Display( StrBuf * ) const

Renders the data of the MonItem object as a string