UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
psc_weights_store.hpp
1 /* psc_weights_store.hpp */
2 /* $Id$ */
3 #ifndef __psc_weights_store_hpp
4 #define __psc_weights_store_hpp
5 
6 #include <map>
7 #include <vector>
8 
9 #ifdef GE_BUILD
10 #include <trace.hpp>
11 #include <psc_service.hpp>
12 #else
13 #include <s2proc/trace.hpp>
14 #include <s2proc/psc_service.hpp>
15 #endif
16 
18 namespace psc
19 {
22  {
23  public:
24 
25  // Weights for header attribute values (TA_NSP, TA_NRP, TA_NDP, TA_L)
26  typedef std::map<int, Trace::AmplT> Weights;
27 
31  WeightsStore();
32 
36  ~WeightsStore();
37 
43  Weights weights(const Trace::Header::AttrId &attr,
44  const unsigned int corr_dir_mask,
45  const unsigned int stride = 1) const;
46 
51  bool appendWeight(const Trace &ccf);
52 
53  protected:
54 
56  struct WeightPoint
57  {
58  int TA_NSP;
59  int TA_NRP;
60  int TA_NDP;
61  int TA_L;
62  unsigned int TA_PSC_DIR;
63  unsigned int TA_PSC_STRIDE;
64 
67  };
68 
70  std::vector<WeightPoint> m_weights;
71  };
72 
73 }; // PLYCOR statics correction namespace.
74 
75 #endif /* psc_weights_store.hpp */
float AmplT
Definition: trace.hpp:21
Trace::AmplT w_min
Definition: psc_weights_store.hpp:66
Weights weights(const Trace::Header::AttrId &attr, const unsigned int corr_dir_mask, const unsigned int stride=1) const
Trace::AmplT w_max
Definition: psc_weights_store.hpp:65
Definition: psc_weights_store.hpp:21
Definition: psc_weights_store.hpp:56
bool appendWeight(const Trace &ccf)
Definition: trace.hpp:14
AttrId
Definition: trace.hpp:34