
#ifndef _TailConeInput_H
#define _TailConeInput_H

#include "SharedData.h"

#define TailConeInputName "TailConeInput_ShmemName"

/*
CLASS 
TailConeInput

DESCRIPTION
Input control surface and propeller speed for TailCone driver

AUTHOR
Tom O'Reilly

*/
class TailConeInput : public SharedData {

public:

  struct Data {

    Data() {
      elevator = rudder = propOmega = deadmanMillisec = 0;
    }

    double elevator;
    double rudder;
    double propOmega;
    long deadmanMillisec;

  };

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

  ~TailConeInput();

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