00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
#ifndef __Layout_AMOS_HH
00011 #define __Layout_AMOS_HH 1
00012
00013
#include "Universal_AMOS.hh"
00014
#include <vector>
00015
00016
00017
00018
00019
00020
namespace AMOS {
00021
00022
00030
00031 class Layout_t :
public Universal_t
00032 {
00033
00034
protected:
00035
00036 std::vector<Tile_t>
tiles_m;
00037
00038
00039
protected:
00040
00041
00042
virtual void readRecord (std::istream & fix, std::istream & var);
00043
00044
00045
00046
virtual void writeRecord (std::ostream & fix, std::ostream & var)
const;
00047
00048
00049
public:
00050
00051
static const NCode_t NCODE;
00053
00054
00055
00058 Layout_t ( )
00059 {
00060
00061 }
00062
00063
00064
00067 Layout_t (
const Layout_t & source)
00068 {
00069 *
this = source;
00070 }
00071
00072
00073
00076 ~Layout_t ( )
00077 {
00078
00079 }
00080
00081
00082
00083 virtual void clear ( )
00084 {
00085
Universal_t::clear( );
00086
tiles_m .
clear( );
00087 }
00088
00089
00090
00091 virtual NCode_t getNCode ( )
const
00092
{
00093
return Layout_t::NCODE;
00094 }
00095
00096
00097
00105
Size_t getSpan ( ) const;
00106
00107
00108
00113 const std::vector<
Tile_t> & getTiling ( )
const
00114
{
00115
return tiles_m;
00116 }
00117
00118
00119
00124 std::vector<Tile_t> &
getTiling ( )
00125 {
00126
return tiles_m;
00127 }
00128
00129
00130
00131
virtual void readMessage (
const Message_t & msg);
00132
00133
00134
00140 void setTiling (
const std::vector<Tile_t> & tiles)
00141 {
00142
tiles_m = tiles;
00143 }
00144
00145
00146
00147
virtual void writeMessage (
Message_t & msg)
const;
00148
00149 };
00150
00151 }
00152
00153
#endif // #ifndef __Layout_AMOS_HH