
#ifndef _LayeredControlInput_H
#define _LayeredControlInput_H

#include "SharedData.h"

#define LayeredControlInputName "LayeredControlInput_ShmemName"

/*
CLASS 
LayeredControlInput

DESCRIPTION
SharedData; input to LayeredControl (written by LayeredControlServer)

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

public:

  struct Data {

    Boolean abort;

    Data() {
      abort = False;
    }
  };

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

  ~LayeredControlInput();

  ////////////////////////////////////////////////////////////////////
  // 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
