Go to the documentation of this file.00001 #ifndef __C_DESIGNATOR_H__
00002 #define __C_DESIGNATOR_H__
00003
00004
00005
00006 #include <list>
00007 #include <string>
00008 #include <string.h>
00009 #include <strings.h>
00010 #include <stdio.h>
00011 #include <cstring>
00012 #include <iostream>
00013
00014
00015 #include <designator_integration_msgs/Designator.h>
00016
00017
00018 #include <designators/CKeyValuePair.h>
00019
00020 using namespace std;
00021
00022
00023 enum DesignatorType {
00024 OBJECT = 0,
00025 ACTION = 1,
00026 LOCATION = 2,
00027 UNKNOWN = 3
00028 };
00029
00030
00031 class CDesignator : public CKeyValuePair {
00032 private:
00033 enum DesignatorType m_edtType;
00034
00035 public:
00036 CDesignator();
00037 CDesignator(CDesignator* cdTemplate);
00038 CDesignator(designator_integration_msgs::Designator desigContent);
00039 CDesignator(enum DesignatorType edtType, CKeyValuePair* ckvpDescription = NULL);
00040 CDesignator(enum DesignatorType edtType, list<CKeyValuePair*> lstDescription);
00041
00042 void fillFromDescription(enum DesignatorType edtType, list<CKeyValuePair*> lstDescription);
00043 void setDescription(list<CKeyValuePair*> lstDescription);
00044 list<CKeyValuePair*> description();
00045
00046 void setType(enum DesignatorType edtType);
00047
00048 void fillFromDesignatorMsg(designator_integration_msgs::Designator desigContent);
00049 enum DesignatorType type();
00050 void printDesignator();
00051
00052 designator_integration_msgs::Designator serializeToMessage();
00053 };
00054
00055
00056 #endif