1 #ifndef uivispartserv_h 2 #define uivispartserv_h 47 namespace Attrib {
class SelSpec; }
48 namespace FlatView {
class DataDispPars; }
49 namespace Threads {
class Mutex; }
50 namespace visBase {
class DataObject;
class EventCatcher; }
52 namespace ColTab {
class Sequence;
class MapperSetup; }
53 namespace ZDomain {
class Info; }
69 const char* name()
const;
80 int highestID()
const;
83 void shareObject(
int sceneid,
int id);
87 void removeObject(
int id,
int sceneid);
88 void setObjectName(
int,
const uiString&);
95 void removeSelection();
101 void removeScene(
int);
103 bool clickablesInScene(
const char* trackertype,
113 bool hasAttrib(
int)
const;
130 AttribFormat getAttributeFormat(
int id,
int attrib)
const;
131 bool canHaveMultipleAttribs(
int id)
const;
132 bool canAddAttrib(
int id,
int nrattribstoadd=1)
const;
133 bool canRemoveAttrib(
int id)
const;
134 bool canRemoveDisplay(
int id)
const;
135 int addAttrib(
int id);
136 void removeAttrib(
int id,
int attrib);
137 int getNrAttribs(
int id)
const;
138 void getAttribPosName(
int id,
int attrib,
uiString&)
const;
140 bool swapAttribs(
int id,
int attrib0,
int attrib1);
141 void showAttribTransparencyDlg(
int id,
int attrib);
142 unsigned char getAttribTransparency(
int id,
int attrib)
const;
143 void setAttribTransparency(
int id,
int attrib,
unsigned char);
148 void setSelSpecs(
int id,
int attrib,
151 bool interpolationEnabled(
int id)
const;
154 void enableInterpolation(
int id,
bool yn);
157 bool isAngle(
int id,
int attrib)
const;
159 void setAngleFlag(
int id,
int attrib,
bool yn);
161 bool isAttribEnabled(
int id,
int attrib)
const;
162 void enableAttrib(
int id,
int attrib,
bool yn);
163 bool hasSingleColorFallback(
int id)
const;
164 void setTranslation(
int visid,
const Coord3& shift);
165 Coord3 getTranslation(
int visid)
const;
170 bool setCubeData(
int id,
int attrib,
175 DataPack::ID getDisplayedDataPackID(
int id,
int attrib)
const;
177 int currentVersion(
int id,
int attrib)
const;
185 void getRandomPosCache(
int visid,
int attrib,
187 void setRandomPosData(
int visid,
int attrib,
190 bool hasMaterial(
int id)
const;
191 void setMaterial(
int id);
192 bool hasColor(
int id)
const;
193 void setColor(
int id,
const Color&);
195 bool blockMouseSelection(
bool yn);
198 bool disabMenus(
bool yn);
200 void createToolBars();
201 bool disabToolBars(
bool yn);
204 bool showMenu(
int id,
int menutype=0,
const TypeSet<int>* =0,
216 int getSelObjectId()
const;
217 int getSelAttribNr()
const;
218 void setSelObjectId(
int visid,
int attrib=-1);
219 void setCurInterObjID(
int visid);
220 int getCurInterObjID()
const;
221 int getSceneID(
int visid)
const;
230 int getEventObjId()
const;
232 int getEventAttrib()
const;
235 static int evUpdateTree();
236 void triggerTreeUpdate();
238 static int evSelection();
241 static int evDeSelection();
244 static int evGetNewData();
249 void calculateAllAttribs();
250 void calculateAllAttribs(
int);
251 bool calculateAttrib(
int id,
int attrib,
bool newsel,
252 bool ignorelocked=
false);
253 bool calcManipulatedAttribs(
int id);
257 bool canHaveMultipleTextures(
int)
const;
258 int nrTextures(
int id,
int attrib)
const;
259 void selectTexture(
int id,
int attrib,
int texture);
260 int selectedTexture(
int id,
int attrib)
const;
262 static int evMouseMove();
263 Coord3 getMousePos()
const;
269 static int evKeyboardEvent();
272 static int evMouseEvent();
275 void setSceneEventHandled();
277 static int evSelectAttrib();
279 static int evInteraction();
285 static int evViewAll();
286 static int evToHomePos();
289 void fillDispPars(
int id,
int attrib,
292 int version=
mUdf(
int))
const;
293 void setColTabMapperSetup(
int id,
int attrib,
296 bool canSetColTabSequence(
int id)
const;
297 void setColTabSequence(
int id,
int attrib,
299 bool canHandleColTabSeqTrans(
int id,
int attr)
const;
303 void displayMapperRangeEditForAttrbs(
int id);
304 void displayMapperRangeEditForAttribs(
int id,
307 static int evColorTableChange();
308 void displaySceneColorbar(
bool);
309 void manageSceneColorbar(
int);
310 bool sceneColorbarDisplayed();
312 Color getSceneAnnotCol(
int);
315 bool deleteAllObjects();
317 void setDirectionalLight();
318 bool setWorkingArea();
319 void setOnlyAtSectionsDisplay(
int id,
bool);
320 bool displayedOnlyAtSections(
int id)
const;
321 static int evViewModeChange();
322 void setViewMode(
bool yn,
bool notify=
true);
324 bool isSoloMode()
const;
325 bool isViewMode()
const;
327 void setWorkMode(WorkMode,
bool notify=
true);
328 WorkMode getWorkMode()
const;
332 void turnSelectionModeOn(
bool);
333 bool isSelectionModeOn()
const;
341 void turnOn(
int,
bool,
bool doclean=
false);
342 bool isOn(
int)
const;
343 void updateDisplay(
bool,
int,
int refid=-1);
344 void setTopBotImg(
int sceneid);
346 bool canDuplicate(
int)
const;
347 int duplicateObject(
int id,
int sceneid);
351 void turnSeedPickingOn(
bool yn);
352 static int evPickingStatusChange();
353 static int evDisableSelTracker();
354 static int evShowMPESetupDlg();
355 static int evShowMPEParentPath();
357 void reportTrackingSetupActive(
bool yn);
358 bool isTrackingSetupActive()
const;
360 bool isPicking()
const;
367 static int evShowSetupGroupOnTop();
368 bool showSetupGroupOnTop(
const char* grpnm);
369 const char* getTopSetupGroupName()
const;
372 static int evStoreEMObject();
373 static int evStoreEMObjectAs();
374 void storeEMObject(
bool storeas);
377 {
return slicepostools_; }
379 bool writeSceneToFile(
int id,
385 bool canBDispOn2DViewer(
int id)
const;
386 bool isVerticalDisp(
int id)
const;
388 void lock(
int id,
bool yn);
389 bool isLocked(
int id)
const;
391 bool sendVisEvent(
int);
392 void setMoreObjectsToDoHint(
int sceneid,
bool yn);
393 bool getMoreObjectsToDoHint(
int sceneid)
const;
405 bool selectAttrib(
int id,
int attrib);
412 bool isManipulated(
int id)
const;
413 void acceptManipulation(
int id);
414 bool resetManipulation(
int id);
416 void setUpConnections(
int id);
418 void removeConnections(
int id);
420 void updateDraggers();
421 int getTypeSetIdx(
int);
479 static const char* sKeyWorkArea();
480 static const char* sKeyAppVel();
491 void triggerObjectMoved(
int id);
Definition: uivispartserv.h:114
int seltype_
Definition: uivispartserv.h:454
MouseEvent mouseevent_
Definition: uivispartserv.h:439
#define mExpClass(module)
Definition: commondefs.h:160
Definition: trckeyvalue.h:27
Threads::Mutex & eventmutex_
Definition: uivispartserv.h:447
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
void turnOn(int flag)
Overrides the envirnonment variable.
uiTreeItemTBHandler * toolbar_
Definition: uivispartserv.h:426
Definition: menuhandler.h:187
MenuItem resmnuitem_
Definition: uivispartserv.h:475
Set of data points with group selection.
Definition: datapointset.h:48
const MouseEvent & getMouseEvent() const
Definition: uivispartserv.h:274
Surface info name/attribname with an ID (usually the EM-ID).
Definition: surfaceinfo.h:21
int eventattrib_
Definition: uivispartserv.h:449
Definition: uivispickretriever.h:22
MenuItem changematerialmnuitem_
Definition: uivispartserv.h:474
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Maps from [0,1] -> Color.
Definition: coltabsequence.h:37
int eventobjid_
Definition: uivispartserv.h:448
BufferString mouseposval_
Definition: uivispartserv.h:436
SelectionMode selectionmode_
Definition: uivispartserv.h:455
The Visualization Part Server.
Definition: uivispartserv.h:60
Interface class for Notifier. See comments there.
Definition: callback.h:161
ObjectSet< visSurvey::Scene > scenes_
Definition: uivispartserv.h:423
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
DataObject is the base class off all objects that are used in Visualization and ought to be shared in...
Definition: visdata.h:65
PickSet
Definition: picksetfact.h:19
uiDirLightDlg * dirlightdlg_
Definition: uivispartserv.h:489
bool issolomode_
Definition: uivispartserv.h:446
uiVisPartServer & visserv
Definition: uivispartserv.h:507
int ID
Each Mgr has its own ID.
Definition: datapack.h:147
Keyboard event.
Definition: keyboardevent.h:23
Definition: uimenuhandler.h:89
Definition: uimapperrangeeditordlg.h:27
uiSlicePos3DDisp * getUiSlicePos() const
Definition: uivispartserv.h:376
static const Coord3 & udf()
int selattrib_
Definition: uivispartserv.h:450
SeisDataPack for 2D and 3D seismic data.
Definition: seisdatapack.h:28
Definition: uistring.h:89
Set of BufferString objects.
Definition: bufstringset.h:28
MenuItem resetmanipmnuitem_
Definition: uivispartserv.h:473
int ID
Definition: datapack.h:38
Used for displaying a polyline, preview for a random line created throught well path.
Definition: visarrowdisplay.h:20
Definition: mouseevent.h:202
int mapperrgeditordisplayid_
Definition: uivispartserv.h:451
FixedString None()
Definition: keystrs.h:90
Data display parameters.
Definition: flatview.h:187
Definition: uimenuhandler.h:27
bool blockmenus_
Definition: uivispartserv.h:483
uiSlicePos3DDisp * slicepostools_
Definition: uivispartserv.h:429
~uiVisModeMgr()
Definition: uivispartserv.h:501
Notifier< uiVisPartServer > nrscenesChange
Definition: uivispartserv.h:485
interface to threads that should be portable.
Definition: atomic.h:28
Coord3 xytmousepos_
Definition: uivispartserv.h:434
uiMenuHandler & menu_
Definition: uivispartserv.h:425
KeyboardEvent kbevent_
Definition: uivispartserv.h:438
bool allowTurnOn(int, bool)
NotifierAccess & nrScenesChange()
Definition: uivispartserv.h:102
visSurvey::Scene * sceneeventsrc_
Definition: uivispartserv.h:440
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
Toolbar for setting slice position _ 3D visualization display.
Definition: uivisslicepos3d.h:28
bool isOn(int flag=0xffff)
Class that can execute a task.
Definition: task.h:169
Definition: uivisdirlightdlg.h:28
FixedString Cube()
Definition: keystrs.h:51
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:272
Notifier< uiVisPartServer > keyEvent
Definition: uivispartserv.h:270
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
uiMultiMapperRangeEditWin * multirgeditwin_
Definition: uivispartserv.h:431
Notifier< uiVisPartServer > mouseEvent
Definition: uivispartserv.h:273
uiVisPickRetriever * pickretriever_
Definition: uivispartserv.h:484
const char * topsetupgroupname_
Definition: uivispartserv.h:443
AttribFormat
Definition: uivispartserv.h:114
Database for 3D objects.
Definition: vissurvscene.h:76
int curinterpobjid_
Definition: uivispartserv.h:452
WorkMode workmode_
Definition: uivispartserv.h:445
int zFactor() const
Definition: uivispartserv.h:264
Interface for classes that select on basis of a key.
Definition: selector.h:25
Setup class for colortable Mapper.
Definition: coltabmapper.h:35
MouseCursorExchange * mousecursorexchange_
Definition: uivispartserv.h:487
WorkMode
Definition: uivispartserv.h:326
uiVisModeMgr * vismgr_
Definition: uivispartserv.h:482
bool mapperrgeditinact_
Definition: uivispartserv.h:432
bool tracksetupactive_
Definition: uivispartserv.h:442
BufferString getMousePosString() const
Definition: uivispartserv.h:266
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
A cartesian coordinate in 3D space.
Definition: coord.h:72
Index_Type GeomID
Definition: commontypes.h:52
BufferString mouseposstr_
Definition: uivispartserv.h:437
Definition: visannot.h:43
TypeSet< TypeSet< int > > displayids_
Definition: uivispartserv.h:477
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
Notifier< uiVisPartServer > selectionmodeChange
Definition: uivispartserv.h:334
uiMPEMan * mpetools_
Definition: uivispartserv.h:428
Services from application level to 'Part servers'.
Definition: uiapplserv.h:24
Is a lock that allows a thread to have exlusive rights to something.
Definition: thread.h:43
SelectionMode
Definition: uivispartserv.h:329
Notifier< uiVisPartServer > planeMovedEvent
Definition: uivispartserv.h:394
Definition: picklocation.h:21
uiVisModeMgr(uiVisPartServer *)
CNotifier< uiVisPartServer, int > objectRemoved
Definition: uivispartserv.h:93
set of seismic traces.
Definition: seisbuf.h:31
Color Table
Definition: coltab.h:22
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:45
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:26
Dialog for tracking properties.
Definition: uimpeman.h:38
const KeyboardEvent & getKeyboardEvent() const
Definition: uivispartserv.h:271
const ObjectSet< visSurvey::Scene > & getAllScenes() const
Definition: uivispartserv.h:105
bool viewmode_
Definition: uivispartserv.h:444
Makes available certain services that are needed on a higher level.
Definition: uiapplserv.h:48
#define mClass(module)
Definition: commondefs.h:164
Definition: seistype.h:26
CNotifier< uiVisPartServer, int > objectAdded
Definition: uivispartserv.h:92
int zfactor_
Definition: uivispartserv.h:435
Definition: bitmap2rgb.h:18
Definition: uivispartserv.h:497
Definition: mouseevent.h:73
Definition: visevent.h:87
Information of z-domain.
Definition: zdomain.h:91
Compound key consisting of ints.
Definition: multiid.h:25
Semblance Attribute.
Definition: attribdataholder.h:25