00001
00002
00003
00004
00005
00006
00007 #ifndef DCFENCODE_RTRSMRA_FLOAT_ARRAY_H
00008 #define DCFENCODE_RTRSMRA_FLOAT_ARRAY_H
00009
00010 #include "RtmraDim.h"
00011 template <typename Data_t, Rtmra_Dim Dim> class Rtrsmra;
00012
00013 template <>
00014 class DCFencode< Rtrsmra<float,array> > : public DCFencodeBase
00015 {
00016 public:
00017 DCFencode();
00018 int enctype();
00019 int encsizeb();
00020 void quantcoef( const float );
00021 float quantcoef();
00022 int bplen_coef();
00023 void amax( const int );
00024 int amax();
00025 void bplen_a( const int );
00026 int bplen_a();
00027
00028 void descr( ostream& = cout );
00029
00030 protected:
00031 float _quantcoef;
00032 int _bplen_coef;
00033 int _amax;
00034 int _bplen_a;
00035
00036 friend
00037 ostream& operator << ( ostream&, DCFencode& );
00038
00039 friend
00040 istream& operator >> ( istream&, DCFencode& );
00041
00042 };
00043
00044 inline
00045 DCFencode< Rtrsmra<float,array> >::DCFencode ()
00046 : _quantcoef(0), _bplen_coef(sizeof(float)), _amax(1), _bplen_a(1) {}
00047
00048 inline
00049 int DCFencode< Rtrsmra<float,array> >::enctype()
00050 {
00051 return DCFenctype_Rtrsmra_float_array;
00052 }
00053
00054 inline
00055 int DCFencode< Rtrsmra<float,array> >::encsizeb()
00056 {
00057 return sizeof(float)+1+sizeof(int)+1;
00058 }
00059
00060 inline
00061 void DCFencode< Rtrsmra<float,array> >::quantcoef(const float quantcoef)
00062 {
00063 _quantcoef=quantcoef;
00064 };
00065
00066 inline
00067 float DCFencode< Rtrsmra<float,array> >::quantcoef() { return _quantcoef; }
00068
00069 inline
00070 int DCFencode< Rtrsmra<float,array> >::bplen_coef() { return _bplen_coef; }
00071
00072 inline
00073 void DCFencode< Rtrsmra<float,array> >::amax(const int amax)
00074 {
00075 _amax=amax;
00076 };
00077
00078 inline
00079 int DCFencode< Rtrsmra<float,array> >::amax() { return _amax; }
00080
00081 inline
00082 void DCFencode< Rtrsmra<float,array> >::bplen_a(const int bplen_a)
00083 {
00084 _bplen_a=bplen_a;
00085 };
00086
00087 inline
00088 int DCFencode< Rtrsmra<float,array> >::bplen_a() { return _bplen_a; }
00089
00090 #endif
00091