Changeset 3623 in Sophya for trunk/AddOn/TAcq/racquproc.h


Ignore:
Timestamp:
May 22, 2009, 9:59:38 AM (16 years ago)
Author:
ansari
Message:

Modifications et ameliorations diverses pour programme acquisition/traitement multifibres

Reza 22/05/2009

1- Extension/amelioration classe BRPaquet et BRPaqChecker
2- Correction BUG dans RAcqMemZoneMgr bloquant l'utilisation a une seule zone memoire
3- Classe PCIEWrapper devenue virtuelle pure et introduction de la classe TestPCIWrapperNODMA
pour les smulations.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/AddOn/TAcq/racquproc.h

    r3538 r3623  
    2020
    2121
    22 //-------------------------------------------------------
    23 // Classe thread de traitement
    24 //-------------------------------------------------------
     22//-------------------------------------------------------------------
     23// Classe thread de traitement avec 1 voie par frame (donnees brutes)
     24//-------------------------------------------------------------------
    2525class DataProc : public ZThread {
    2626public:
    27   DataProc(RAcqMemZoneMgr& mem, string& path, uint_4 nmean=1, uint_4 nmax=100);
     27  DataProc(RAcqMemZoneMgr& mem, string& path, uint_4 nmean=1, uint_4 step=1, uint_4 nmax=100);
    2828  virtual void run();
     29  void Stop();
     30  inline void STOP() { stop_ = true; } 
     31
     32protected:
     33  RAcqMemZoneMgr& memgr;
     34  bool stop_; 
     35  uint_4 nmax_;  // Nombre maxi de blocs MemZone traites
     36  uint_4 step_;  // 1/step_ frame traite ds chaque bloc
     37  uint_4 nmean_;  // Nombre de blocs pour le calcul des moyennes
     38  string path_; 
     39  struct sigaction act;
     40};
     41
     42//---------------------------------------------------------------------
     43// Classe thread de traitement avec 2 voies par frame (donnees brutes)
     44//---------------------------------------------------------------------
     45class DataProc2C : public ZThread {
     46public:
     47  DataProc2C(RAcqMemZoneMgr& mem, string& path, uint_4 nmean=1, uint_4 step=1, uint_4 nmax=100);
     48  virtual void run();
     49  void Stop();
    2950  inline void STOP() { stop_ = true; } 
    3051protected:
     
    3253  bool stop_; 
    3354  uint_4 nmax_;  // Nombre maxi de blocs MemZone traites
     55  uint_4 step_;  // 1/step_ frame traite ds chaque bloc
    3456  uint_4 nmean_;  // Nombre de blocs pour le calcul des moyennes
    3557  string path_; 
    3658};
    3759
     60//---------------------------------------------------------------------
     61// Classe thread de traitement donnees FFT avec 2 voies par frame
     62//---------------------------------------------------------------------
     63class DataProcFFT2C : public ZThread {
     64public:
     65  DataProcFFT2C(RAcqMemZoneMgr& mem, string& path, uint_4 nmean=1, uint_4 step=1, uint_4 nmax=100);
     66  virtual void run();
     67  void Stop();
     68  inline void STOP() { stop_ = true; } 
     69protected:
     70  RAcqMemZoneMgr& memgr;
     71  bool stop_; 
     72  uint_4 nmax_;  // Nombre maxi de blocs MemZone traites
     73  uint_4 step_;  // 1/step_ frame traite ds chaque bloc
     74  uint_4 nmean_;  // Nombre de blocs pour le calcul des moyennes
     75  string path_; 
     76};
    3877
    3978#endif
Note: See TracChangeset for help on using the changeset viewer.