
#ifndef _LblDriverOutput_H
#define _LblDriverOutput_H

#include "SharedData.h"
#include "LblIF.h"

#define LblDriverOutputName "LblDriverOutput_ShmemName"

/*
CLASS 
LblDriverOutput

DESCRIPTION
Output of LBL driver; read by LblServer

AUTHOR
Tom O'Reilly
*/
class LblDriverOutput : public SharedData {

public:

  struct Data {

    LblIF::RTimes tofs;

    TimeIF::TimeSpec pingTime;
  };

  LblDriverOutput(Access access = NoAccess, Boolean init = False);

  ~LblDriverOutput();

  ////////////////////////////////////////////////////////////////////
  // Read from shared memory to this object's Data::data element
  void read();

  ////////////////////////////////////////////////////////////////////
  // Write from this object's Data::data element to shared memory
  void write();

  ////////////////////////////////////////////////////////////////////
  // Your application accesses the fields of this Data object, before 
  // calling write() or after calling read().
  Data data;

};

#endif
