Ignore:
Timestamp:
May 18, 2001, 7:29:04 PM (24 years ago)
Author:
cmv
Message:

definition des flags pour TOI flagtoidef.h (added)
Un peu plus pour GenWindowTOIProcessor.
commit mais classe inutilisable en l'etat. cmv 18/5/2001

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ArchTOIPipe/ProcWSophya/genwproc.h

    r1496 r1502  
    1212class GenWindowTOIProcessor : public TOIProcessor {
    1313public:
    14   GenWindowTOIProcessor(int nbinput,int nboutput,int wsz, int wstep=1, int wsztot=-1);
     14  GenWindowTOIProcessor(int_4 nbinput,int_4 nboutput,int_4 wsz, int_4 wstep=1, int_4 wsztot=-1);
    1515  virtual ~GenWindowTOIProcessor();
    1616
    17   inline int_8 GetWSize() const { return WSize; }
    18   inline int_8 GetWStep() const { return WStep; }
    19   inline int_8 ProcessedSampleCount() const { return TotNsCount; }
     17  inline int_4 GetWSize() const { return WSize; }
     18  inline int_4 GetWStep() const { return WStep; }
     19  inline int_4 ProcessedSampleCount() const { return TotNsCount; }
    2020
    21   inline int_8 GetStartSample()  {return StartSample;}
    22   inline int_8 GetCenterSample() {return StartSample + WSize/2;}
    23   inline int_8 StartSampleNum() { return SNdeb; }
    24   inline int_8 EndSampleNum() { return SNend; }
     21  // DbgLevel = 0 : No debug
     22  // DbgLevel = 1 : Print fenetre WSize
     23  // DbgLevel = 2 : 1 + Print logique remplissage/decalage
     24  // DbgLevel = 3 : 2 + Print fenetre WSizeTot et WSizeL,C,R
     25  inline void SetDbgLevel(int_2 lp=0) {DbgLevel = (lp>0) ? lp : 0;}
     26
     27  void SetWSizeLCR(int_4 wszl=0,int_4 wszc=0,int_4 wszr=0);
     28  inline int_4 GetWSize(char cw)
     29               {if     (cw=='l') return WSizeLeft;
     30                else if(cw=='c') return WSizeCenter;
     31                else if(cw=='r') return WSizeRight;
     32                                 return WSize;}
     33
     34  inline int_8 GetWStartSample()  {return StartSample;}
     35  inline int_8 GetWCenterSample() {return StartSample + WSize/2;}
     36  inline int_8 GetWCenterIndex()  {return WSize/2;}
     37  inline int_8 StartSampleNum()   {return SNbegin;}
     38  inline int_8 EndSampleNum()     {return SNend;}
    2539
    2640  inline void SetDefaultValue(r_8 r8dval=0., int_8 i8dval=0)
    2741                      {R8DefVal = r8dval; I8DefVal = i8dval;}
    2842
    29   TVector<r_8> GetWData(int numtoi=0);
    30   TVector<int_8> GetWFlag(int numtoi=0);
    31   r_8 * GetWDataPointer(int numtoi=0);
    32   int_8 * GetWFlagPointer(int numtoi=0);
    33   void GetData(int numtoi, int_8 numsample, r_8 & data, int_8 & flag);
     43  TVector<r_8> GetWData(int_4 numtoi=0);
     44  TVector<int_8> GetWFlag(int_4 numtoi=0);
     45  r_8 * GetWDataPointer(int_4 numtoi=0);
     46  int_8 * GetWFlagPointer(int_4 numtoi=0);
     47  void GetData(int_4 numtoi, int_8 numsample, r_8 & data, int_8 & flag);
    3448  inline void GetData(int_8 numsample, r_8 & data, int_8 & flag)
    3549                      { GetData(0, numsample, data, flag); }
    3650
    37   void PutWData(int numtoi,int_8 numsample,TVector<r_8>& data,TVector<int_8>& flag);
    38   void PutWData(int numtoi,int_8 numsample,r_8 data,int_8 flag);
     51  TVector<r_8> GetWData(char cw,int_4 numtoi=0);
     52  TVector<int_8> GetWFlag(char cw,int_4 numtoi=0);
     53  r_8   * GetWDataPointer(char cw,int_4 numtoi,int_4& n);
     54  int_8 * GetWFlagPointer(char cw,int_4 numtoi,int_4& n);
     55  inline   r_8 * GetWDataPointer(char cw,int_4& n)
     56                 {return GetWDataPointer(cw,0,n);}
     57  inline int_8 * GetWFlagPointer(char cw,int_4& n)
     58                 {return GetWFlagPointer(cw,0,n);}
     59
     60  void PutWData(int_4 numtoi,int_8 numsample,TVector<r_8>& data,TVector<int_8>& flag);
     61  void PutWData(int_4 numtoi,int_8 numsample,r_8 data,int_8 flag);
    3962  inline void PutWData(int_8 numsample,TVector<r_8>& data,TVector<int_8>& flag)
    4063                      {PutWData(0,numsample,data,flag);}
     
    4265                      {PutWData(0,numsample,data,flag);}
    4366
    44   virtual void PrintStatus(ostream & os);
     67  virtual void PrintStatus(ostream & os,int lp=0);
    4568
    4669  virtual void UserInit(int_8 kstart);
     
    5477  void Remplissage(int_8 ks);
    5578  void Ecriture();
    56   inline int_8 StartWtIndex()
    57          {if(CurWtIndex<0) return -1; else return CurWtIndex-WSize;}
    58   inline int_8 CenterWtIndex()
    59          {if(CurWtIndex<0) return -1; else return CurWtIndex-(WSize+1)/2;}
     79  void test_avec_print(int_8 ks);
     80  inline int_4 StartWtIndex()  {return CurWtIndex-WSize;}
     81  inline int_4 CenterWtIndex() {return CurWtIndex-(WSize+1)/2;}
     82  inline int_4 StartWtIndex(char cw)
     83         {if     (cw=='l') return StartWtIndex()+W0Left;
     84          else if(cw=='c') return StartWtIndex()+W0Center;
     85          else if(cw=='r') return StartWtIndex()+W0Right;
     86                           return StartWtIndex();}
    6087
    61   int NbInput,NbOutput;
    62   int_8 WSizeTot,WSize,WStep;
    63   int_8 SNdeb,SNend;
    64   int_8 StartSample,CurWtIndex;
    65   int_8 TotNsCount;
    66   r_8 R8DefVal;
     88  int_2 DbgLevel;
     89  int_4 NbInput,NbOutput;
     90  int_4 WSizeTot,WSize,WStep;
     91  int_4 WSizeLeft,WSizeCenter,WSizeRight, W0Left,W0Center,W0Right;
     92  int_8 SNbegin,SNend;
     93  int_8 TotNsCount,TotDecalCount;
     94  r_8   R8DefVal;
    6795  int_8 I8DefVal;
     96
     97  int_4 CurWtIndex;   // Prochain index a remplir dans le buffer WSizeTot
     98  int_8 LastFilledSn; // Numero du dernier sample remplie
     99  int_8 StartSample;  // Numero de sample du 1er element du buffer WSize
     100
    68101  vector< TVector<r_8>   > WDataIn;
    69102  vector< TVector<int_8> > WFlagIn;
     103  vector< bool > WInFlg;
    70104  vector< TVector<r_8>   > WDataOut;
    71105  vector< TVector<int_8> > WFlagOut;
    72   vector< bool > WInFlg;
    73106  vector< bool > WOutFlg;
    74107  vector< bool > WPutOutFlg;
Note: See TracChangeset for help on using the changeset viewer.