- Main Page
- Namespaces
- Classes
- Files
- Related Pages

# /Users/fpy/titan-1-5-MBARI/Mers/Executives/DeductiveController/Rtapi/RTAPIMessage.h

    00001
    00002 //
    00003 // Copyright (c) 2004           Model-based Embedded and Robotic Systems Group
    00004 // All Rights Reserved          Massachusetts Institute of Technology
    00005 //
    00006 // This software is provided as is. Model-based Embedded and Robotic Systems
    00007 // (MERS) group does not assume any responsibility.
    00008 //
    00009 // Organization:        Model-based Embedded and Robotic Systems Group
    00010 //                                      Massachusetts Institute of Technology
    00011 //
    00013
    00014 #if !defined(AFX_RTAPIMESSAGE_H__6EB01360_20ED_4802_AB63_D05A268AA605__INCLUDED_)
    00015 #define AFX_RTAPIMESSAGE_H__6EB01360_20ED_4802_AB63_D05A268AA605__INCLUDED_
    00016
    00017 #if _MSC_VER > 1000
    00018 #pragma once
    00019 #endif // _MSC_VER > 1000
    00020
    00021 #include <Mers/Utils/Lang/BaseModelObject.h>
    00022
    00023 namespace Mers {
    00024         namespace Executives {
    00025                 namespace DeductiveController {
    00026                         namespace Rtapi {
    00027
    00034                                 class RTAPIMessage : public Mers::Utils::Lang::BaseModelObject
    00035                                 {
    00036                                 public:
    00039                                         enum MessageType {COMMAND, OBSERVATION, GOAL, STATE_UPDATE,
    00040                                                 FIND_MODE_ESTIMATE, ABORT_COMMAND, REPORT_FULL_STATE,
    00041                                                 MR_REQUEST, QUIT, INITIALIZE_STATE};
    00042
    00043                                         //-----------------------------------------
    00044                                         // Constructors
    00045                                         //-----------------------------------------
    00046
    00054                                         RTAPIMessage(MessageType myMessageType);
    00071                                         RTAPIMessage(MessageType myMessageType, unsigned int myVarUID, unsigned int myValUID);
    00072
    00073                                         //-----------------------------------------
    00074                                         // Copy constructors
    00075                                         //-----------------------------------------
    00076
    00084                                         RTAPIMessage(RTAPIMessage const &other);
    00092                                         RTAPIMessage(RTAPIMessage const * other);
    00093
    00094                                         //-----------------------------------------
    00095                                         // Destructors
    00096                                         //-----------------------------------------
    00097
    00101                                         virtual ~RTAPIMessage();
    00102
    00103                                         //-----------------------------------------
    00104                                         // Functions
    00105                                         //-----------------------------------------
    00106
    00111                                         MessageType getMessageType();
    00112
    00118                                         unsigned int getVariableUID();
    00124                                         unsigned int getValueUID();
    00125
    00126 #ifndef EMBEDDED
    00127
    00132                                         virtual void print(std::ostream &out) const;
    00133 #endif
    00134
    00135                                 protected:
    00138                                         MessageType messageType;
    00140                                         unsigned int variableUID;
    00142                                         unsigned int valueUID;
    00143                                 };
    00144                         }
    00145                 }
    00146         }
    00147 }
    00148
    00149 #endif // !defined(AFX_RTAPIMESSAGE_H__6EB01360_20ED_4802_AB63_D05A268AA605__INCLUDED_)