/////////////////////////////////////////////////////////////////////////////////
//
// PURPOSE:  SysDataMemPrio Class. Log file for cpu usage by process priority.
// AUTHOR:   Henthorn
// DATE:     01/19/11
// COMMENTS: 
//
////////////////////////////////////////////////////////////////////////////////
//

#ifndef SYSDATAMEMPRIO_H
#define SYSDATAMEMPRIO_H

#include "sysmon.h"

#define SysDataMemPrioName "SysDataMemPrio"

#include "DataLogWriter.h"
#include "IntegerData.h"
#include "TimeTag.h"

class SysData;

class SysDataMemPrio : public DataLogWriter {

public:

  ///////////////////////////////////////////////////////////////////
  // Constructor
  // [input] fileFormat: Specifies either DataLog::AsciiFormat or 
  //         DataLog::BinaryFormat.
  SysDataMemPrio(SysData *sysdata, 
		 DataLog::FileFormat fileFormat);

  ~SysDataMemPrio();

protected:
  SysData *_sysdata;
  IntegerData *_memByPrio[NumberOfPriorities];

  char strName[64];


  ///////////////////////////////////////////////////////////////////
  // Set values in record array elements. This virtual method is called
  // by DataLogWriter::write()
  virtual void setFields();
};
  
#endif
