UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ZtSeismicView.H
1 /* ZtSeismicView.H */
2 /* $Id: ZtSeismicView.H,v 3.6 2004/02/17 13:53:38 vlad Exp $ */
3 #ifndef __ZtSeismicView_H
4 #define __ZtSeismicView_H
5 
6 #include <mix/FloatAr.H>
7 
8 #include <zm/ZPalette.H>
9 #include <zm/ZBarDraw.H>
10 #include <zm/ZSeismicStream.H>
11 #include <zm/ZScaledPalette.H>
12 #include <zm/ZSVOptions.H>
13 #include <zm/ZtObject.H>
14 #include <zm/ZtSeismicTrace.H>
15 #include <zm/ZtColoredMatrix.H>
16 
17 
19 typedef void (*ZPerTraceProc)(ZSeismicStream& zss,
20  int ens_index,
21  void* pUserData
22  );
23 
30 class ZtSeismicView : public ZtObject
31 {
32 public:
33 
35  ZtSeismicView (ZtMain* pManager,
36  ZGroupId pxid_int, ZGroupId pyid_int,
37  ZGroupId pxid_ext, ZGroupId pyid_ext,
38  ZGroupId nxid, ZGroupId nyid);
39  ~ZtSeismicView ();
40 
41 
43  virtual void attach_seismic (ZSeismicStream* sstream);
44 
46  virtual void detach_seismic ();
47 
48 
49  /* Get natural slave of specific axis */
50  ZNCoordSlave& ntime () const;
51  ZNCoordSlave& nplace () const;
53  /* Convert time unit to pixel and vise versa */
54  float time_p2n (int ptime) const;
55  int time_n2p (float ntime) const;
56 
57  /* Convert placement unit to pixel and vise versa */
58  float place_p2n (int pplace) const;
59  int place_n2p (float nplace) const;
60 
62  virtual void extent_rect (ZRect& res);
63 
65  virtual void redraw ();
66 
68  void set_per_trace_proc (ZPerTraceProc zptp,
69  void* pUserData);
70 
71 
73  void set_global_amax (float gamax);
74 
75 
78  int get_pixel_height () const;
79 
80 
81  /*********************************************************************
82  * Properties of the object
83  *********************************************************************/
84 
86  virtual const char* class_id () const;
87 
90  virtual void set_options (const ZSVOptions& svo,
91  int svo_mask = ~0);
92 
94  virtual void get_options (ZSVOptions& svo,
95  int svo_mask = ~0) const;
96 
98  virtual const ZSVOptions& get_options () const;
99 
100 
101  /*********************************************************************
102  * Color management
103  *********************************************************************/
104 
107  void compute_palette (ZScaledPalette& pal, float mm[2]);
108 
110  virtual void get_palette (ZScaledPalette& zspal) const;
111 
112 protected:
113 
117 
121 
124 
127 
130  ZPerTraceProc per_trace_proc;
131 
134 
137 
138  struct {
139  Logic explored; // TRUE on explore_s(); FALSE on detach_s()
140  FloatAr ucoords;
141  float mm[2];
142  } cache;
143 
147  virtual void explore_seismic ();
148 
150  virtual void init_map_coding ();
151 
152  Logic bMapCoding;
153 
156  float fGlobalAmax;
157 
160 
161 };
162 
163 
164 #endif /* ZtSeismicView.H */
Definition: ZBase.H:87
ZPCoordSlave px_ext
Definition: ZtSeismicView.H:116
Definition: ZtSeismicView.H:30
float time_p2n(int ptime) const
ZSVOptions options
Definition: ZtSeismicView.H:136
Definition: ZSVOptions.H:129
ZtColoredMatrix colmat
Definition: ZtSeismicView.H:123
virtual void set_options(const ZSVOptions &svo, int svo_mask=~0)
Definition: ZtMain.H:32
virtual void extent_rect(ZRect &res)
ZPCoordSlave py_ext
Definition: ZtSeismicView.H:120
ZNCoordSlave & nplace() const
int half_height
Definition: ZtSeismicView.H:159
Definition: ZPixelCoord.H:102
void * per_trace_proc_data
Definition: ZtSeismicView.H:133
virtual void init_map_coding()
virtual void redraw()
Definition: ZtColoredMatrix.H:57
ZPerTraceProc per_trace_proc
Definition: ZtSeismicView.H:130
virtual void explore_seismic()
int get_pixel_height() const
Definition: FloatAr.H:15
float fGlobalAmax
Definition: ZtSeismicView.H:156
virtual void get_palette(ZScaledPalette &zspal) const
Definition: ZtObject.H:57
void set_per_trace_proc(ZPerTraceProc zptp, void *pUserData)
Definition: ZScaledPalette.H:15
void compute_palette(ZScaledPalette &pal, float mm[2])
ZSeismicStream * seismic
Definition: ZtSeismicView.H:126
virtual void attach_seismic(ZSeismicStream *sstream)
virtual const ZSVOptions & get_options() const
Definition: ZSeismicStream.H:15
Definition: ZNaturalCoord.H:88
void set_global_amax(float gamax)
virtual void detach_seismic()
ZtSeismicView(ZtMain *pManager, ZGroupId pxid_int, ZGroupId pyid_int, ZGroupId pxid_ext, ZGroupId pyid_ext, ZGroupId nxid, ZGroupId nyid)
virtual const char * class_id() const