OpendTect  6.3
uiwellpartserv.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: Nanne Hemstra
8  Date: August 2003
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uiwellmod.h"
14 #include "uiapplserv.h"
15 #include "notify.h"
16 #include "bufstringset.h"
17 #include "dbkey.h"
18 #include "uistring.h"
19 
20 namespace Well { class Data; class LogDisplayParSet; }
21 
22 class DBKeySet;
24 class uiBulkLogImport;
25 class uiBulkMarkerImport;
26 class uiBulkTrackImport;
27 class uiD2TMLogSelDlg;
28 class uiD2TModelGen;
31 class uiWellDispPropDlg;
32 class uiWellImportAsc;
33 class uiWellMan;
34 
42 public:
45 
46  const char* name() const { return "Wells"; }
47 
48  // Services
49  void importTrack();
50  void importLogs();
51  void importMarkers();
52  void bulkImportTrack();
53  void bulkImportLogs();
54  void bulkImportMarkers();
55  void bulkImportD2TModel();
56 
57  void manageWells();
58  void launchRockPhysics();
59  bool selectWells(DBKeySet&);
60 
61  bool hasLogs(const DBKey&) const;
62  void getLogNames(const DBKey&,
63  BufferStringSet&) const;
64 
65  bool editDisplayProperties(const DBKey&);
66  void displayIn2DViewer(const DBKey&);
67 
68  bool dispLineOnCreation(){ return disponcreation_; }
69  DBKey getRandLineDBKey() { return dbkey_; }
70  void selectWellCoordsForRdmLine();
71  void getRdmLineCoordinates(TypeSet<Coord>&);
72  void sendPreviewEvent();
73  void closePropDlg(const DBKey&);
76  void setPreviewIds( const TypeSet<int>& ids )
77  { previewids_ = ids; }
78  TypeSet<int>& getPreviewIds() { return previewids_; }
79 
80  void createSimpleWells() { simpImp(0); }
81  const DBKeySet& createdWellIDs() { return crwellids_; }
82 
83  void doLogTools();
84 
85  void createWellFromPicks();
86  const char* askWellName();
87  bool setupNewWell(BufferString&,Color&);
88  bool storeWell(const TypeSet<Coord3>&,const char* nm,
89  DBKey&,bool addwellhead=false);
90 
91  static int evPreviewRdmLine();
92  static int evCleanPreview();
93  static int evDisplayWell();
94 
95 protected:
96 
100  uiD2TModelGen* uid2tmgen_;
101  uiD2TMLogSelDlg* uid2tmlogseldlg_;
109 
110  DBKeySet crwellids_; // for uiSimpleMultiWellCreate
111 
115 
116  void importReadyCB(CallBacker*);
117  void rdmlnDlgDeleted(CallBacker*);
118  void rdmlnDlgClosed(CallBacker*);
119  void wellPropDlgClosed(CallBacker*);
120  void saveWellDispProps(const Well::Data*);
121  void applyAll(CallBacker*);
122  void simpImp(CallBacker*);
123  void survChangedCB(CallBacker*);
124  int getPropDlgIndex(const DBKey&);
125 
126 };
#define mExpClass(module)
Definition: commondefs.h:157
Well display properties dialog box.
Definition: uiwelldisppropdlg.h:26
TypeSet< int > & getPreviewIds()
Definition: uiwellpartserv.h:78
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
uiWell2RandomLineDlg * rdmlinedlg_
Definition: uiwellpartserv.h:98
const char * name() const
Definition: uiwellpartserv.h:46
uiD2TModelGen * uid2tmgen_
Definition: uiwellpartserv.h:100
Notifier< uiWellPartServer > uiwellpropDlgClosed
Definition: uiwellpartserv.h:75
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
uiBulkTrackImport * impbulktrackdlg_
Definition: uiwellpartserv.h:103
Definition: dbkey.h:98
const DBKeySet & createdWellIDs()
Definition: uiwellpartserv.h:81
void createSimpleWells()
Definition: uiwellpartserv.h:80
Definition: uibulkwellimp.h:79
uiSimpleMultiWellCreate * impsimpledlg_
Definition: uiwellpartserv.h:102
Definition: uibulkwellimp.h:45
Set of BufferString objects.
Definition: bufstringset.h:25
DBKey dbkey_
Definition: uiwellpartserv.h:113
bool allapplied_
Definition: uiwellpartserv.h:114
Definition: uisimplemultiwell.h:19
void importLogs(CallBacker *)
Part Server for Wells.
Definition: uiwellpartserv.h:40
Notifier< uiWellPartServer > randLineDlgClosed
Definition: uiwellpartserv.h:74
uiD2TMLogSelDlg * uid2tmlogseldlg_
Definition: uiwellpartserv.h:101
Set of (small) copyable elements.
Definition: commontypes.h:26
uiBulkMarkerImport * impbulkmrkrdlg_
Definition: uiwellpartserv.h:105
DBKeySet crwellids_
Definition: uiwellpartserv.h:110
Definition: uiwellman.h:26
Definition: wellcommon.h:16
Dialog for well import from Ascii.
Definition: uiwellimpasc.h:32
uiBulkLogImport * impbulklogdlg_
Definition: uiwellpartserv.h:104
TypeSet< int > previewids_
Definition: uiwellpartserv.h:108
DBKey getRandLineDBKey()
Definition: uiwellpartserv.h:69
Definition: repos.h:23
uiBulkD2TModelImport * impbulkd2tdlg_
Definition: uiwellpartserv.h:106
: setup a dialog where the user can select throught which wells (s)he wants to make a random line pat...
Definition: uiwellrdmlinedlg.h:82
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
bool disponcreation_
Definition: uiwellpartserv.h:112
Definition: uibulkwellimp.h:61
Services from application level to &#39;Part servers&#39;.
Definition: uiapplserv.h:22
bool dispLineOnCreation()
Definition: uiwellpartserv.h:68
Definition: uibulkwellimp.h:23
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:24
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
Makes available certain services that are needed on a higher level.
Definition: uiapplserv.h:46
The holder of all data concerning a certain well.
Definition: welldata.h:36
void setPreviewIds(const TypeSet< int > &ids)
Definition: uiwellpartserv.h:76
uiWellImportAsc * uiwellimpdlg_
Definition: uiwellpartserv.h:97
uiWellMan * manwelldlg_
Definition: uiwellpartserv.h:107
ObjectSet< uiWellDispPropDlg > wellpropdlgs_
Definition: uiwellpartserv.h:99

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