source: Sophya/trunk/AddOn/TAcq/brproc.h@ 3672

Last change on this file since 3672 was 3656, checked in by ansari, 16 years ago

Ajout possibilite sauvegarde des cartes 2D temps frequence ds BRProcARaw2C , mcrd.cc - Reza 9/9/2009

File size: 3.2 KB
Line 
1#ifndef BRPROCA_H_SEEN
2#define BRPROCA_H_SEEN
3
4//----------------------------------------------------------------
5// ---- classe de thread de traitememt acquisition BAORadio -----
6// LAL - R. Ansari - Juin/Juillet 2008
7//----------------------------------------------------------------
8
9
10#include "racqumem.h"
11#include <string>
12#include <vector>
13#include <iostream>
14#include "sopnamsp.h"
15#include "zthread.h"
16
17#include "brtypes.h"
18
19using namespace std;
20
21
22//---------------------------------------------------------------------
23// Classe thread de traitement avec 2 voies par frame (donnees brutes)
24//---------------------------------------------------------------------
25
26/*-- Arguments du constructeur :
27 o mem : gestionnaire zones memoires avec contenant les "frames" avec 2 voies/frame
28 o path : Chemin et nom des fichiers PPF produits (on ajoute _numero.ppf )
29 o nmean : Nombre de frame (paquets) moyennes
30 o nmax : Nombre maxi de frames traites
31 o fghist = true -> fait aussi l'histo des valeurs des echantillons temps
32 o nfsmap>0 : fabrication de cartes (image 2D) des spectres,
33 avec nfsmap=nombre de frequences sommes
34 o fgnotrl = true -> fichiers fits / paquets sans trailer
35 o card : numero de carte , juste pour les impressions
36*/
37class BRProcARaw2C : public ZThread {
38public:
39 BRProcARaw2C(RAcqMemZoneMgr& mem, string& path, uint_4 nmean=10,
40 uint_4 nmax=100, bool fgtshist=false, uint_4 nfsmap=0,
41 bool fgnotrl=false, int card=1);
42 virtual void run();
43 void Stop();
44 inline void STOP() { stop_ = true; }
45protected:
46 RAcqMemZoneMgr& memgr;
47 bool stop_;
48 uint_4 nmax_; // Nombre maxi de blocs MemZone traites
49 uint_4 nmean_; // Nombre de spectres pour le calcul des moyennes
50 uint_4 nfsmap_; // Binning en frequence pour les cartes 2D temps-freq
51 string path_;
52 bool fghist_; // if true, fill and save histogram with time sample values
53 bool fgnotrl_; // if true, don't check packet trailer - when using pre-june fits files
54 int card_; // Numeros de voies 2*card_-1, 2*card_
55};
56
57//---------------------------------------------------------------------
58// Classe thread de traitement 2 x 2 voies/frames (Apres BRProcARaw2C)
59//---------------------------------------------------------------------
60/*-- Arguments du constructeur :
61 o mem1,mem2 : gestionnairea zones memoires avec contenant les donnees des 4 voies (2 voies/frame)
62 o path : Chemin et nom des fichiers PPF produits (on ajoute _numero.ppf )
63 o nmean : Nombre de frame (paquets) moyennes
64 o nmax : Nombre maxi de frames traites
65 o fgnotrl = true -> fichiers fits / paquets sans trailer
66 o card : numero de carte , juste pour les impressions
67*/
68
69class BRProcBRaw4C : public ZThread {
70public:
71 BRProcBRaw4C(RAcqMemZoneMgr& mem1, RAcqMemZoneMgr& mem2, string& path,
72 uint_4 nmean=10, uint_4 nmax=100, bool fgnotrl=false);
73 virtual void run();
74 void Stop();
75 inline void STOP() { stop_ = true; }
76protected:
77 RAcqMemZoneMgr& memgr1;
78 RAcqMemZoneMgr& memgr2;
79 bool stop_;
80 uint_4 nmax_; // Nombre maxi de blocs MemZone traites
81 uint_4 nmean_; // Nombre de blocs pour le calcul des moyennes
82 string path_;
83 bool fgnotrl_; // if true, don't check packet trailer - when using pre-june fits files
84};
85
86
87
88#endif
Note: See TracBrowser for help on using the repository browser.