OpendTect  6.6
uisip.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Bert
8  Date: Oct 2008
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uiiomod.h"
15 #include "uidialog.h"
16 #include "uigroup.h"
17 #include "ranges.h"
18 
19 class LatLong;
20 class SurveyInfo;
21 class TrcKeyZSampling;
22 class uiDialog;
23 
24 
25 /*\brief Interface for survey info provider
26 
27  The survey setup can be delivered by scanning files (SEG-Y) or by querying
28  data stores like SeisWorks, Petrel, .... Another idea not implemented may be
29  to read a simple ascii file. In any case, this is the interface. The
30  implementation should be added to the factory using
31  uiSurveyInfoEditor::addInfoProvider.
32 
33  The logic is:
34 
35  * User gets list showing - if isAvailable() - your usrText() and icon
36  * User fills in your dialog
37  * On OK, getInfo is called
38  * If getInfo returns true, then you can stuff your own things in the
39  new SurveyInfo's IOPar if you define fillPar().
40 
41  In some cases, the provider can also allow actual data import. After
42  setting up the survey, the user can be automatically put into an import
43  facility. If that is the case, you have to return an IOPar by getImportPars()
44  that, when the time comes, will be used to call startImport().
45 
46  This class delivers everything in SI units.
47 
48  */
49 
51 {
52 public:
53 
54  virtual const char* usrText() const = 0;
55  virtual uiDialog* dialog(uiParent*) = 0;
57  Coord crd[3]) = 0;
58  virtual bool getLatLongAnchor(Coord&,LatLong&)
59  { return false; }
60  virtual bool getSRD(float&) { return false; }
62 
63  virtual void fillPar(IOPar&) const {}
64  virtual void fillLogPars(IOPar&) const;
65  virtual bool isAvailable() const { return true; }
66 
67  enum TDInfo { Uknown, Time, Depth, DepthFeet };
68  virtual TDInfo tdInfo() const { return Uknown; }
69  virtual bool xyInFeet() const { return false; }
70  virtual const char* iconName() const { return 0; }
71 
72  virtual IOPar* getImportPars() const { return 0; }
73  virtual void startImport(uiParent*,const IOPar&) {}
74  virtual const char* importAskQuestion() const
75  { return "Proceed to import?"; }
76 
77  virtual IOPar* getCoordSystemPars() const { return 0; }
78 
79 };
80 
81 
uiSurvInfoProvider::tdInfo
virtual TDInfo tdInfo() const
Definition: uisip.h:68
sKey::Time
FixedString Time()
Definition: keystrs.h:163
uiSurvInfoProvider::getInfo
virtual bool getInfo(uiDialog *, TrcKeyZSampling &, Coord crd[3])=0
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiSurvInfoProvider::TDInfo
TDInfo
Definition: uisip.h:67
uiSurvInfoProvider::fillPar
virtual void fillPar(IOPar &) const
Definition: uisip.h:63
uiSurvInfoProvider::fillLogPars
virtual void fillLogPars(IOPar &) const
uiSurvInfoProvider::iconName
virtual const char * iconName() const
Definition: uisip.h:70
uigroup.h
TrcKeyZSampling
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
Coord
A cartesian coordinate in 2D space.
Definition: coord.h:25
uiSurvInfoProvider::getImportPars
virtual IOPar * getImportPars() const
Definition: uisip.h:72
uiSurvInfoProvider
Definition: uisip.h:51
uiSurvInfoProvider::importAskQuestion
virtual const char * importAskQuestion() const
Definition: uisip.h:74
uidialog.h
uiSurvInfoProvider::xyInFeet
virtual bool xyInFeet() const
Definition: uisip.h:69
sKey::Depth
FixedString Depth()
Definition: keystrs.h:60
LatLong
Geographical coordinates in Decimal Degrees but with conv to deg, min, sec.
Definition: latlong.h:27
uiSurvInfoProvider::getCoordSystemPars
virtual IOPar * getCoordSystemPars() const
Definition: uisip.h:77
uiSurvInfoProvider::Uknown
@ Uknown
Definition: uisip.h:67
uiParent
Definition: uiparent.h:26
uiSurvInfoProvider::usrText
virtual const char * usrText() const =0
uiSurvInfoProvider::startImport
virtual void startImport(uiParent *, const IOPar &)
Definition: uisip.h:73
ranges.h
uiDialog
Definition: uidialog.h:42
uiSurvInfoProvider::isAvailable
virtual bool isAvailable() const
Definition: uisip.h:65
uiSurvInfoProvider::getSRD
virtual bool getSRD(float &)
return value must be in SI units (meters)
Definition: uisip.h:60
uiSurvInfoProvider::getLatLongAnchor
virtual bool getLatLongAnchor(Coord &, LatLong &)
Definition: uisip.h:58
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
SurveyInfo
Holds survey general information.
Definition: survinfo.h:45
uiSurvInfoProvider::dialog
virtual uiDialog * dialog(uiParent *)=0

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021