source: Sophya/trunk/AddOn/TAcq/brbaseproc.h@ 3777

Last change on this file since 3777 was 3774, checked in by ansari, 15 years ago

Ajout/modif classes (brproc.h,.cc) pour analyse de donnees BAORadio, Reza 17/05/2010

File size: 1.9 KB
Line 
1#ifndef BRBASEPROC_H_SEEN
2#define BRBASEPROC_H_SEEN
3
4//----------------------------------------------------------------
5// Projet BAORadio - (C) LAL/IRFU 2008-2010
6// Classes de threads de traitememt donnees BAORadio
7//----------------------------------------------------------------
8
9
10#include "racqumem.h"
11#include <string>
12#include <vector>
13#include <iostream>
14
15#include "brpaqu.h"
16
17using namespace std;
18
19//---------------------------------------------------------------------
20// Classe de base pour l'analyse donnees (paquets acquisition) BAORadio
21// Les classes de traitement des paquets BAORadio peuvent heriter de
22// cette classe de base BRBaseProcessor en redefinissant la methode Process()
23//---------------------------------------------------------------------
24class BRBaseProcessor : public SOPHYA::ZThread {
25public:
26 BRBaseProcessor(RAcqMemZoneMgr& memgr, MemZaction mmact=MemZA_ProcA);
27
28 MemZStatus SetMemZAction(MemZaction mmact=MemZA_ProcA);
29
30 virtual void run();
31 inline void Stop();
32 inline void STOP() { stop_ = true; }
33
34protected:
35 // Methode devant etre redefinie pour effectuer le traitement - appele pour chaque trigger
36 virtual int Process(); // renvoie 0 si OK, sinon, arret traitement
37
38 RAcqMemZoneMgr& memgr_;
39 MemZaction mmact_; // Definition de l'action sur les paquets (defaut=MemZA_ProcA)
40 MemZStatus mmsta_; // Statut associe a mmact_ (defaut=MemZS_ProcA)
41 bool stop_;
42 vector<Byte*> fbuff_; // Vecteur de pointeur de zone memoire pour chaque fibre
43 vector<BRPaquet> vpaq_; // Vecteur de BRPaquet pour chaque fibre
44 vector<BRPaqChecker> vpchk_;
45 vector<uint_8> vfgok_; // Vecteur de flag si paquet OK pour chaque fibre
46 vector<uint_8> curfc_; // Vecteur de numero de FrameCounter pour chaque fibre
47 vector<uint_8> fcfirst_; //
48 vector<uint_8> ttfirst_;
49 bool fgokallfibers_; // true -> paquets for all fibers OK
50
51 uint_8 totprocnpaq_;
52};
53
54
55
56#endif
Note: See TracBrowser for help on using the repository browser.