00001
00002
00004 #ifndef __Odata__
00005 #define __Odata__
00006
00007 #include "TMath.h"
00008 #include "CUtils.h"
00009 #include "Segments.h"
00010 #include "FFT.h"
00011
00012 using namespace std;
00013
00065 class Odata{
00066
00067 public:
00068
00083 Odata(const int aChunkDuration,
00084 const int aSegmentDuration,
00085 const int aOverlapDuration,
00086 const int aVerbosity=0);
00087
00091 virtual ~Odata(void);
00101 bool SetSegments(Segments *aSegments);
00102
00109 bool NewChunk(void);
00110
00115 inline int GetNSegments(void){ return NSegments; };
00116
00120 inline int GetChunkTimeStart(void){ return ChunkStart; };
00121
00125 inline int GetChunkTimeEnd(void){ return ChunkStop; };
00126
00132 int GetSegmentTimeStart(const int aNseg);
00133
00139 int GetSegmentTimeEnd(const int aNseg);
00140
00145 inline int GetCurrentChunkDuration(void){ return ChunkStop-ChunkStart; };
00146
00150 inline int GetChunkDuration(void){ return ChunkDuration; };
00151
00156 inline int GetSegmentDuration(void){ return SegmentDuration; };
00157
00162 inline int GetCurrentOverlapDuration(void){ return OverlapDurationCurrent; };
00163
00168 inline int GetOverlapDuration(void){ return OverlapDuration; };
00169
00170 private:
00171
00172 int fVerbosity;
00173
00174 Segments *fSegments;
00175 int ChunkDuration;
00176 int SegmentDuration;
00177 int OverlapDuration;
00178 int OverlapDurationCurrent;
00179 int ChunkStart;
00180 int ChunkStop;
00181 int NSegments;
00182 int seg;
00183 bool TestChunk(void);
00184
00185 ClassDef(Odata,0)
00186 };
00187
00188 #endif
00189
00190