Ignore:
Timestamp:
Apr 9, 2001, 2:14:21 PM (24 years ago)
Author:
ansari
Message:

Modifs effectuees a St Pierre de Charetreuse - Reza 9/4/2001

File:
1 edited

Legend:

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

    r1443 r1454  
    55
    66#include "toiprocessor.h"
     7#include "tvector.h"
    78
    89// ---------  Un deglitcheur simple
     
    1617  virtual       ~SimpleDeglitcher();
    1718
     19  inline void   SetRange(double min, double max)
     20    { range_min = min; range_max = max; }
     21  inline void   GetRange(double& min, double& max) const
     22    { min = range_min; max = range_max; }
     23
    1824  virtual void  init(); 
    1925  virtual void  run();
     
    2329  inline int    MaxPoints() const { return maxpoints; }
    2430 
    25   inline int    TotalSampleCount() const { return totnscount; }
    26   inline int    GlitchCount() const { return glcount; }
    27   inline int    GlitchSampleCount() const { return glnscount; }
     31  inline int_8  ProcessedSampleCount() const { return totnscount; }
     32  inline int_8  GlitchCount() const { return glcount; }
     33  inline int_8  GlitchSampleCount() const { return glnscount; }
     34  inline int_8  OutOfRangeSampleCount() const { return out_range_nscount; }
    2835 
    2936  virtual void  PrintStatus(ostream & os) ; // const plus tard
    3037 
    3138protected:
    32   int totnscount;   // Nombre total d'echantillon processe
    33   int glnscount;    // Nombre total de glitch
    34   int glcount;      // Nombre de glitch detecte
     39  int_8 totnscount;   // Nombre total d'echantillon processe
     40  int_8 glnscount;    // Nombre total de glitch
     41  int_8 glcount;      // Nombre de glitch detecte
     42  int_8 out_range_nscount;  // Nombre de sample Out Of Range
    3543  bool deglitchdone;  // Deglitch effectue
    3644
     
    3846  double nsig;      // Seuil en nb de sigmas
    3947  int maxpoints;    // Nb maxi de points > ns sigmas
     48  double range_min, range_max;  // Range acceptable pour in
    4049};
    4150
     
    5463  };
    5564
     65  static string FilterKind2String(FilterKind fk);
    5666                SimpleFilter(int wsz=128,
    57                               FilterKind fk=SimpleFilter::MeanFilter,
    58                               double a=1., double s=1.);
    59   //            SimpleFilter(int wsz, Arr_DoubleFunctionOfX f=NULL);
     67                             FilterKind fk=SimpleFilter::MeanFilter,
     68                             double a=1., double s=1.);
     69                SimpleFilter(Vector const & vc);
    6070                ~SimpleFilter();
    6171
     
    6373
    6474  inline int    WSize() const { return wsize; }
    65   inline int    TotalSampleCount() const { return totnscount; }
     75  inline int_8  ProcessedSampleCount() const { return totnscount; }
     76  Vector        FilterCoefficients() const;
    6677
    6778  virtual void  PrintStatus(ostream & os) ; // const plus tard
     
    7283protected:
    7384  FilterKind fkind;
    74   int totnscount;   // Nombre total d'echantillon processe
     85  int_8 totnscount;   // Nombre total d'echantillon processe
    7586  int wsize;        // Taille de fenetre de travail
    7687  double* coef;     // Coefficients du filtre
     
    7889};
    7990
     91//  Classe SimpleAdder
     92//  Calcule la sortie = Somme_Entree [ coeff[num] * entree[num] ]
     93
     94class SimpleAdder : public TOIProcessor {
     95public:
     96                SimpleAdder(int nbinput);
     97                ~SimpleAdder();
     98
     99  void          SetGain(int num, double g);
     100  double        Gain(int num);
     101
     102  inline int    NbInput() const { return nb_input; }
     103  inline int_8  ProcessedSampleCount() const { return totnscount; }
     104
     105  virtual void  PrintStatus(ostream & os) ; // const plus tard
     106
     107  virtual void  init(); 
     108  virtual void  run();
     109
     110protected:
     111  int nb_input;
     112  Vector gains;
     113  int_8 totnscount;   // Nombre total d'echantillon processe
     114};
     115
     116
    80117#endif
Note: See TracChangeset for help on using the changeset viewer.