OpendTect  6.6
voxelconnectivityfilter.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: Kristofer Tingdahl
8  Date: May 2011
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "voxelconnectivityfiltermod.h"
15 #include "volprocchain.h"
16 #include "enums.h"
17 
18 namespace VolProc
19 {
20 
23 public:
24 
27  "VoxelConnectivityFilter",
28  tr("Voxel Connectivity Filter") );
29 
30  enum Connectivity { Faces, Edges, Corners };
32 
33  enum AcceptOutput { Ranking, BodySize, Value, Transparent };
35 
36  void setConnectivity(Connectivity val){connectivity_ = val;}
38  Connectivity getConnectivity() const { return connectivity_;}
39 
40  void setMinimumBodySize(od_int64 val){ minbodysize_ = val; }
41  od_int64 getMinimumBodySize() const { return minbodysize_; }
42 
43  void setAcceptRange(const Interval<float>& v) { range_ = v; }
49  const Interval<float>& getAcceptRange() const { return range_; }
50 
51  void setRejectValue(float v) { rejectvalue_ = v; }
52  float getRejectValue() const { return rejectvalue_; }
53 
54  void setAcceptOutput(AcceptOutput v) {acceptoutput_=v;}
55  AcceptOutput getAcceptOutput() const { return acceptoutput_; }
56 
57  void setAcceptValue(float val) { acceptvalue_ = val; }
58  float getAcceptValue() const { return acceptvalue_; }
59 
60 
61  void fillPar(IOPar&) const;
62  bool usePar(const IOPar&);
63 
64  bool needsInput() const { return true; }
65  bool canInputAndOutputBeSame() const { return true; }
66  bool needsFullVolume() const { return true; }
67  bool areSamplesIndependent() const { return false; }
68  virtual uiString errMsg() const { return errmsg_; }
69 
71 
73  { return 0; }
74 
76  const StepInterval<int>&) const;
77 
78 protected:
79 
82 
83  static const char* sKeyRange() { return "Range"; }
84  static const char* sKeyConnectivity() { return "Connectivity"; }
85  static const char* sKeyMinimumSize() { return "Minimum size"; }
86  static const char* sKeyRejectValue() { return "Rejected Value"; }
87  static const char* sKeyAcceptOutput() { return "Accepted Output"; }
88  static const char* sKeyAcceptValue() { return "Accepted Value"; }
89 
92  float rejectvalue_;
94  float acceptvalue_;
96 };
97 
98 }; //namespace
99 
TrcKeySampling
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:35
VolProc::VoxelConnectivityFilter::AcceptOutput
AcceptOutput
Definition: voxelconnectivityfilter.h:33
VolProc::VoxelConnectivityFilter::needsFullVolume
bool needsFullVolume() const
Definition: voxelconnectivityfilter.h:66
VolProc::VoxelConnectivityFilter::needsInput
bool needsInput() const
Definition: voxelconnectivityfilter.h:64
VolProc::VoxelConnectivityFilter::getAcceptRange
const Interval< float > & getAcceptRange() const
Definition: voxelconnectivityfilter.h:49
VolProc::VoxelConnectivityFilter
Definition: voxelconnectivityfilter.h:22
VolProc
Adapter for a VolProc chain to external attribute calculation.
Definition: seisdatapackwriter.h:24
VolProc::VoxelConnectivityFilter::sKeyMinimumSize
static const char * sKeyMinimumSize()
Definition: voxelconnectivityfilter.h:85
VolProc::VoxelConnectivityFilter::setAcceptValue
void setAcceptValue(float val)
Definition: voxelconnectivityfilter.h:57
od_int64
#define od_int64
Definition: plftypes.h:35
VolProc::VoxelConnectivityFilter::acceptvalue_
float acceptvalue_
Definition: voxelconnectivityfilter.h:94
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
VolProc::VoxelConnectivityFilter::Faces
@ Faces
Definition: voxelconnectivityfilter.h:30
VolProc::VoxelConnectivityFilter::sKeyConnectivity
static const char * sKeyConnectivity()
Definition: voxelconnectivityfilter.h:84
VolProc::VoxelConnectivityFilter::errMsg
virtual uiString errMsg() const
Definition: voxelconnectivityfilter.h:68
VolProc::VoxelConnectivityFilter::getConnectivity
Connectivity getConnectivity() const
Definition: voxelconnectivityfilter.h:38
VolProc::VoxelConnectivityFilter::setAcceptRange
void setAcceptRange(const Interval< float > &v)
Definition: voxelconnectivityfilter.h:43
VolProc::VoxelConnectivityFilter::mDeclareEnumUtils
mDeclareEnumUtils(Connectivity)
VolProc::VoxelConnectivityFilter::sKeyAcceptValue
static const char * sKeyAcceptValue()
Definition: voxelconnectivityfilter.h:88
VolProc::VoxelConnectivityFilter::mDeclareEnumUtils
mDeclareEnumUtils(AcceptOutput)
VolProc::VoxelConnectivityFilter::Connectivity
Connectivity
Definition: voxelconnectivityfilter.h:30
VolProc::VoxelConnectivityFilter::minbodysize_
od_int64 minbodysize_
Definition: voxelconnectivityfilter.h:90
VolProc::VoxelConnectivityFilter::~VoxelConnectivityFilter
~VoxelConnectivityFilter()
VolProc::VoxelConnectivityFilter::sKeyRejectValue
static const char * sKeyRejectValue()
Definition: voxelconnectivityfilter.h:86
VolProc::VoxelConnectivityFilter::setRejectValue
void setRejectValue(float v)
Definition: voxelconnectivityfilter.h:51
StepInterval< int >
VolProc::VoxelConnectivityFilter::mDefaultFactoryInstantiation
mDefaultFactoryInstantiation(Step, VoxelConnectivityFilter, "VoxelConnectivityFilter", tr("Voxel Connectivity Filter"))
VolProc::VoxelConnectivityFilter::acceptoutput_
AcceptOutput acceptoutput_
Definition: voxelconnectivityfilter.h:93
VolProc::VoxelConnectivityFilter::areSamplesIndependent
bool areSamplesIndependent() const
Definition: voxelconnectivityfilter.h:67
VolProc::VoxelConnectivityFilter::connectivity_
Connectivity connectivity_
Definition: voxelconnectivityfilter.h:95
VolProc::VoxelConnectivityFilter::range_
Interval< float > range_
Definition: voxelconnectivityfilter.h:91
VolProc::VoxelConnectivityFilter::VoxelConnectivityFilter
VoxelConnectivityFilter()
Task
Generalization of something (e.g. a computation) that needs to be done in multiple steps.
Definition: task.h:28
VolProc::VoxelConnectivityFilter::getProcTimeExtraMemory
virtual mDeprecatedDef od_int64 getProcTimeExtraMemory() const
Definition: voxelconnectivityfilter.h:72
VolProc::VoxelConnectivityFilter::sKeyAcceptOutput
static const char * sKeyAcceptOutput()
Definition: voxelconnectivityfilter.h:87
VolProc::VoxelConnectivityFilter::setAcceptOutput
void setAcceptOutput(AcceptOutput v)
Definition: voxelconnectivityfilter.h:54
VolProc::VoxelConnectivityFilter::setConnectivity
void setConnectivity(Connectivity val)
Definition: voxelconnectivityfilter.h:36
VolProc::VoxelConnectivityFilter::getRejectValue
float getRejectValue() const
Definition: voxelconnectivityfilter.h:52
VolProc::Step
An algorithm/calculation/transformation that takes one scalar volume as input, processes it,...
Definition: volprocstep.h:42
VolProc::VoxelConnectivityFilter::createTask
Task * createTask()
VolProc::VoxelConnectivityFilter::fillPar
void fillPar(IOPar &) const
VolProc::VoxelConnectivityFilter::setMinimumBodySize
void setMinimumBodySize(od_int64 val)
Definition: voxelconnectivityfilter.h:40
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
VolProc::VoxelConnectivityFilter::extraMemoryUsage
od_int64 extraMemoryUsage(OutputSlotID, const TrcKeySampling &, const StepInterval< int > &) const
enums.h
VolProc::VoxelConnectivityFilter::usePar
bool usePar(const IOPar &)
MPE::errmsg_
BufferString errmsg_
Definition: horizontracker.h:118
VolProc::VoxelConnectivityFilter::getAcceptOutput
AcceptOutput getAcceptOutput() const
Definition: voxelconnectivityfilter.h:55
VolProc::VoxelConnectivityFilter::Value
@ Value
Definition: voxelconnectivityfilter.h:33
VolProc::VoxelConnectivityFilter::rejectvalue_
float rejectvalue_
Definition: voxelconnectivityfilter.h:92
VolProc::VoxelConnectivityFilter::getMinimumBodySize
od_int64 getMinimumBodySize() const
Definition: voxelconnectivityfilter.h:41
VolProc::VoxelConnectivityFilter::sKeyRange
static const char * sKeyRange()
Definition: voxelconnectivityfilter.h:83
mDeprecatedDef
#define mDeprecatedDef
Definition: plfdefs.h:216
VolProc::Step::OutputSlotID
int OutputSlotID
Definition: volprocstep.h:46
VolProc::VoxelConnectivityFilter::mODTextTranslationClass
mODTextTranslationClass(VoxelConnectivityFilter)
Interval
Interval of values.
Definition: commontypes.h:30
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
volprocchain.h
VolProc::VoxelConnectivityFilter::canInputAndOutputBeSame
bool canInputAndOutputBeSame() const
Definition: voxelconnectivityfilter.h:65
VolProc::VoxelConnectivityFilter::getAcceptValue
float getAcceptValue() const
Definition: voxelconnectivityfilter.h:58

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