00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
#ifndef __Group_AMOS_HH
00011 #define __Group_AMOS_HH 1
00012
00013
#include "Universal_AMOS.hh"
00014
#include <vector>
00015
00016
00017
00018
00019
namespace AMOS {
00020
00021
00026
00027 class Group_t :
public Universal_t
00028 {
00029
00030
private:
00031
00032 std::vector<ID_t> mems_m;
00033
NCode_t memtype_m;
00034
00035
00036
protected:
00037
00038
00039
virtual void readRecord (std::istream & fix, std::istream & var);
00040
00041
00042
00043
virtual void writeRecord (std::ostream & fix, std::ostream & var)
const;
00044
00045
00046
public:
00047
00048
static const NCode_t NCODE;
00050
00051
00052
00057 Group_t ( )
00058 {
00059 memtype_m =
NULL_NCODE;
00060 }
00061
00062
00063
00066 Group_t (
const Group_t & source)
00067 {
00068 *
this = source;
00069 }
00070
00071
00072
00075 ~Group_t ( )
00076 {
00077
00078 }
00079
00080
00081
00082 virtual void clear ( )
00083 {
00084
Universal_t::clear( );
00085 mems_m .
clear( );
00086 memtype_m =
NULL_NCODE;
00087 }
00088
00089
00090
00091 virtual NCode_t getNCode ( )
const
00092
{
00093
return Group_t::NCODE;
00094 }
00095
00096
00097
00102 const std::vector<ID_t> &
getMembers ( )
const
00103
{
00104
return mems_m;
00105 }
00106
00107
00108
00109 std::vector<ID_t> &
getMembers ( )
00110 {
00111
return mems_m;
00112 }
00113
00114
00115
00122 NCode_t getMemberType( )
const
00123
{
00124
return memtype_m;
00125 }
00126
00127
00128
00129
virtual void readMessage (
const Message_t & msg);
00130
00131
00132
00138 void setMembers (
const std::vector<ID_t> & mems)
00139 {
00140 mems_m = mems;
00141 }
00142
00143
00144
00152 void setMemberType (
NCode_t memtype)
00153 {
00154 memtype_m = memtype;
00155 }
00156
00157
00158
00159
virtual void writeMessage (
Message_t & msg)
const;
00160
00161 };
00162
00163 }
00164
00165
#endif // #ifndef __Group_AMOS_HH