Elaboradar 0.1
Caricamento in corso...
Ricerca in corso...
Nessun risultato
steiner.h
Vai alla documentazione di questo file.
1
5#ifndef RADAELAB_STEINER_CLASS_H
6#define RADAELAB_STEINER_CLASS_H
7
8#include <radarelab/logging.h>
9#include <radarelab/volume.h>
10#include <radarelab/elev_fin.h>
11
12namespace radarelab {
13namespace algo {
14
15namespace steiner {
16
17struct Point
18{
19 int azimut;
20 int range;
21 unsigned npoints;
22 // Valore della Z di background in dB
23 double bckgr;
24 // Valore della Z di background in mm^6/m^3
25 double Z_bckgr;
26 double convective_radius;
27
28 Point() : azimut(-999), range(-999), npoints(0), bckgr(0), Z_bckgr(0), convective_radius(0) {}
29 Point(int azimut, int range) : azimut(azimut), range(range), npoints(0), bckgr(0), Z_bckgr(0), convective_radius(0) {}
30
31 void add_sample(double sample);
32 void finalize();
33};
34
35}
36
37struct CalcoloSteiner
38{
39 log4c_category_t* logging_category;
40
41 const Volume<double>& volume;
42 const volume::ElevFin<double>& elev_fin;
43 const unsigned max_bin;
44 const double size_cell;
45
46 Matrix2D<unsigned char> conv_STEINER;
47
48 // Pixel precipitanti
49 std::vector<steiner::Point> lista_bckg;
50
51 CalcoloSteiner(const Volume<double>& volume, const volume::ElevFin<double>& elev_fin, unsigned max_bin);
52
59 void calcolo_background();
60
65 void classifico_STEINER();
66
74 void ingrasso_nuclei(float cr,int ja,int kr);
75
76 void add_sample(unsigned pos, unsigned azimut, unsigned range);
77};
78
79}
80}
81
82#endif
String functions.
Definition: cart.cpp:4
Definisce le principali strutture che contengono i dati.