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


Ignore:
Timestamp:
Nov 20, 2009, 12:46:54 PM (16 years ago)
Author:
ansari
Message:

Ajout classe de traitement en ligne (monitoring) MonitorProc , Reza 20/11/2009

File:
1 edited

Legend:

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

    r3623 r3681  
    44//----------------------------------------------------------------
    55// ---- classe de thread de traitememt  acquisition BAORadio -----
    6 // LAL -      R. Ansari - Juin/Juillet 2008
     6// LAL -      R. Ansari - 2008-2010
     7//  A/ Juin 2008 - Juin 2009
     8//       Classes DataProc, DataProc2C, DataProcFFT2C avec des
     9//       threads de traitement mono-fibre
     10//  B/ Novembre 2009
     11//    MonitorProc : Classe de traitement pour monitoring multifibres
    712//----------------------------------------------------------------
    813
     
    1419#include "sopnamsp.h"
    1520#include "zthread.h"
     21#include "tmatrix.h"
    1622
    1723#include "brtypes.h"
     24#include "brparam.h"
    1825
    1926using namespace std;
    2027
     28// Quelques definitions globales
     29// Nombre maximum de fibres geres par les classes MonitorProc
     30#ifndef MAXNBFIB
     31#define MAXNBFIB  4   
     32#endif
    2133
     34//---------------------------------------------------------------------
     35// Classe thread de traitement/monitoring multifibre Raw/FFT
     36//---------------------------------------------------------------------
     37class MonitorProc : public ZThread {
     38public:
     39  MonitorProc(RAcqMemZoneMgr& mem);
     40  virtual ~MonitorProc();
     41  virtual void run();
     42  void Stop();
     43  inline void STOP() { stop_ = true; } 
     44protected:
     45  int procData2C(ofstream& logf);
     46  int procData1C(ofstream& logf);
     47  int CheckFrameCounters();
     48
     49  RAcqMemZoneMgr& memgr;
     50  BRParList par_;
     51  bool stop_; 
     52  uint_4 nmax_;  // Nombre maxi de blocs MemZone traites
     53  uint_4 step_;  // 1/step_ paquet traite ds chaque bloc
     54  uint_4 nmean_;  // Nombre de blocs pour le calcul des moyennes
     55  string path_;
     56  uint_4 nfiles_;
     57  TMatrix<r_4> spectre_;
     58  vector<uint_4> nzm_;
     59  uint_4 nblocproc_;         // nombre total de bloc MemMgr traites
     60  uint_8 nprocpaq_;          // nombre de paquets traites entre deux mises a zero
     61  uint_8 npaqsamefc_;        // nombre de paquets avec meme framecounter  entre deux mises a zero
     62  uint_8 totnprocpaq_;       // nombre de paquets traites entre deux mises a zero
     63  uint_8 totnpaqsamefc_;     // nombre de paquets avec meme framecounter  entre deux mises a zero
     64  TMatrix<uint_8> curfc_;    // Numeros de FrameCounter dans le bloc
     65  TMatrix<uint_1> cpaqok_;   // Paquets OK ou pas dans le bloc
     66};
     67
     68
     69//-------------------------------------------------------------------
     70//--------  Premieres version - pour tmtacq.cc
     71//-------------------------------------------------------------------
    2272//-------------------------------------------------------------------
    2373// Classe thread de traitement avec 1 voie par frame (donnees brutes)
Note: See TracChangeset for help on using the changeset viewer.