OpendTect  6.6
jobdescprov.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: A.H.Bril
8  Date: Apr 2002
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "mmprocmod.h"
15 #include "ranges.h"
16 #include "bufstringset.h"
17 #include "typeset.h"
18 #include "od_iosfwd.h"
19 
20 
27 {
28 public:
29 
30  JobDescProv(const IOPar&);
31  virtual ~JobDescProv();
32 
33  virtual int nrJobs() const = 0;
34  virtual void getJob(int,IOPar&) const = 0;
35  virtual const char* objType() const = 0;
36  virtual const char* objName(int) const = 0;
37  virtual void dump(od_ostream&) const = 0;
38 
39  const IOPar& pars() const { return inpiopar_; }
40 
41 protected:
42 
45 
46 };
47 
48 
54 {
55 public:
56  KeyReplaceJobDescProv(const IOPar&,const char* key,
57  int nrjobs);
58 
59  virtual int nrJobs() const { return nrjobs_; }
60  virtual void getJob(int,IOPar&) const;
61  virtual const char* objType() const { return objtyp_.buf(); }
62  virtual const char* objName(int) const;
63  virtual void dump(od_ostream&) const;
64 
66 
67 protected:
68 
69  const int nrjobs_;
71  virtual const char* gtObjName(int) const = 0;
72 
73 };
74 
75 
79 {
80 public:
81  StringKeyReplaceJobDescProv(const IOPar&,const char* ky,
82  const BufferStringSet& nms);
84 
85 protected:
86 
88  virtual const char* gtObjName(int) const;
89 
90 };
91 
92 
96 {
97 public:
98  IDKeyReplaceJobDescProv(const IOPar&,const char* ky,
99  const StepInterval<int>& idrg);
101 
102  virtual void dump(od_ostream&) const;
103 
104 protected:
105 
107  virtual const char* gtObjName(int) const;
108 
109 };
110 
111 
121 {
122 public:
125  const TypeSet<int>&);
127 
128  virtual int nrJobs() const;
129  virtual void getJob(int,IOPar&) const;
130  virtual const char* objType() const { return "inline"; }
131  virtual const char* objName(int) const;
132  virtual void dump(od_ostream&) const;
133 
135  int getNrInlsPerJob() { return ninlperjob_; }
136  void setNrInlsPerJob(const int nr) { ninlperjob_ = nr; }
137 
138  static const char* sKeyMaxInlRg();
139  static const char* sKeyMaxCrlRg();
140 
141  static int defaultNrInlPerJob();
142  static void setDefaultNrInlPerJob(int);
143 
144 protected:
145 
148 
151 
152  int firstInlNr(int) const;
153  int lastInlNr(int) const;
154 
155 };
156 
157 
171 {
172 public:
174  const char* subselkey);
175 
176  virtual int nrJobs() const { return subselpars_.size(); }
177  virtual void getJob(int,IOPar&) const;
178  virtual void dump(od_ostream&) const;
179 
180 protected:
181 
184 
185 };
186 
187 
192 {
193 public:
195 
196  const char* objType() const { return "Line"; }
197  const char* objName(int) const;
198 };
199 
InlineSplitJobDescProv::defaultNrInlPerJob
static int defaultNrInlPerJob()
JobDescProv::objnm_
BufferString objnm_
Definition: jobdescprov.h:44
InlineSplitJobDescProv::setNrInlsPerJob
void setNrInlsPerJob(const int nr)
Definition: jobdescprov.h:136
JobDescProv::~JobDescProv
virtual ~JobDescProv()
KeyReplaceJobDescProv::nrJobs
virtual int nrJobs() const
Definition: jobdescprov.h:59
JobDescProv
Interface for providing parameter files for jobs (job descriptions). Two implementations are pre-cook...
Definition: jobdescprov.h:27
StringKeyReplaceJobDescProv
KeyReplaceJobDescProv where the values are in a string set.
Definition: jobdescprov.h:79
KeyReplaceJobDescProv::objName
virtual const char * objName(int) const
InlineSplitJobDescProv::jobs_
TypeSet< int > jobs_
Definition: jobdescprov.h:150
KeyReplaceJobDescProv
Simple implementation of JobDescProv based on replacing a value in the IOPar with another.
Definition: jobdescprov.h:54
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
InlineSplitJobDescProv::sKeyMaxInlRg
static const char * sKeyMaxInlRg()
absolute limit - will override
JobDescProv::JobDescProv
JobDescProv(const IOPar &)
InlineSplitJobDescProv::getRange
void getRange(StepInterval< int > &) const
JobDescProv::nrJobs
virtual int nrJobs() const =0
JobDescProv::objName
virtual const char * objName(int) const =0
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
Line2DSubselJobDescProv::objType
const char * objType() const
Definition: jobdescprov.h:196
KeyReplaceJobDescProv::key_
BufferString key_
Definition: jobdescprov.h:70
StringKeyReplaceJobDescProv::StringKeyReplaceJobDescProv
StringKeyReplaceJobDescProv(const IOPar &, const char *ky, const BufferStringSet &nms)
IOPar, key and bufstringset will be copied.
IDKeyReplaceJobDescProv::dump
virtual void dump(od_ostream &) const
typeset.h
JobDescProv::getJob
virtual void getJob(int, IOPar &) const =0
InlineSplitJobDescProv::dump
virtual void dump(od_ostream &) const
ManagedObjectSet< IOPar >
ParSubselJobDescProv::getJob
virtual void getJob(int, IOPar &) const
KeyReplaceJobDescProv::getJob
virtual void getJob(int, IOPar &) const
IDKeyReplaceJobDescProv
KeyReplaceJobDescProv where the values taken from a range of IDs.
Definition: jobdescprov.h:96
StepInterval< int >
InlineSplitJobDescProv::~InlineSplitJobDescProv
~InlineSplitJobDescProv()
KeyReplaceJobDescProv::objtyp_
BufferString objtyp_
Definition: jobdescprov.h:65
ParSubselJobDescProv::nrJobs
virtual int nrJobs() const
Definition: jobdescprov.h:176
InlineSplitJobDescProv::ninlperjob_
int ninlperjob_
Definition: jobdescprov.h:149
KeyReplaceJobDescProv::KeyReplaceJobDescProv
KeyReplaceJobDescProv(const IOPar &, const char *key, int nrjobs)
JobDescProv::dump
virtual void dump(od_ostream &) const =0
InlineSplitJobDescProv::lastInlNr
int lastInlNr(int) const
ParSubselJobDescProv::subselpars_
ManagedObjectSet< IOPar > subselpars_
Definition: jobdescprov.h:183
ParSubselJobDescProv
IOPar driven implementation of JobDescProv where splitting is based on IOPar subselection with a part...
Definition: jobdescprov.h:171
InlineSplitJobDescProv::objName
virtual const char * objName(int) const
JobDescProv::objType
virtual const char * objType() const =0
IDKeyReplaceJobDescProv::IDKeyReplaceJobDescProv
IDKeyReplaceJobDescProv(const IOPar &, const char *ky, const StepInterval< int > &idrg)
IOPar, key and bufstringset will be copied.
KeyReplaceJobDescProv::gtObjName
virtual const char * gtObjName(int) const =0
InlineSplitJobDescProv::InlineSplitJobDescProv
InlineSplitJobDescProv(const IOPar &)
InlineSplitJobDescProv::setDefaultNrInlPerJob
static void setDefaultNrInlPerJob(int)
IDKeyReplaceJobDescProv::gtObjName
virtual const char * gtObjName(int) const
KeyReplaceJobDescProv::objType
virtual const char * objType() const
Definition: jobdescprov.h:61
JobDescProv::inpiopar_
IOPar & inpiopar_
Definition: jobdescprov.h:43
InlineSplitJobDescProv::objType
virtual const char * objType() const
Definition: jobdescprov.h:130
IDKeyReplaceJobDescProv::idrg_
const StepInterval< int > idrg_
Definition: jobdescprov.h:106
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
ParSubselJobDescProv::ParSubselJobDescProv
ParSubselJobDescProv(const IOPar &, const char *subselkey)
StringKeyReplaceJobDescProv::gtObjName
virtual const char * gtObjName(int) const
bufstringset.h
InlineSplitJobDescProv::getNrInlsPerJob
int getNrInlsPerJob()
Definition: jobdescprov.h:135
InlineSplitJobDescProv::inls_
TypeSet< int > * inls_
Definition: jobdescprov.h:147
InlineSplitJobDescProv::getJob
virtual void getJob(int, IOPar &) const
KeyReplaceJobDescProv::nrjobs_
const int nrjobs_
Definition: jobdescprov.h:69
od_iosfwd.h
ParSubselJobDescProv::dump
virtual void dump(od_ostream &) const
Line2DSubselJobDescProv::objName
const char * objName(int) const
ParSubselJobDescProv::subselkey_
BufferString subselkey_
Definition: jobdescprov.h:182
InlineSplitJobDescProv
Implementation of JobDescProv based upon splitting the inlines in the IOPar.
Definition: jobdescprov.h:121
Line2DSubselJobDescProv
Special case of ParSubselJobDescProv where each job refers to a 2D Line. The subselkey in this case i...
Definition: jobdescprov.h:192
InlineSplitJobDescProv::inlrg_
StepInterval< int > inlrg_
Definition: jobdescprov.h:146
Line2DSubselJobDescProv::Line2DSubselJobDescProv
Line2DSubselJobDescProv(const IOPar &)
ranges.h
InlineSplitJobDescProv::sKeyMaxCrlRg
static const char * sKeyMaxCrlRg()
absolute limit - will override
MMProc
Distributed Computing.
Definition: mmassetmgr.h:23
InlineSplitJobDescProv::nrJobs
virtual int nrJobs() const
od_ostream
OD class for stream write common access to the user log file, or std::cout in other than od_main.
Definition: od_ostream.h:26
StringKeyReplaceJobDescProv::names_
BufferStringSet names_
Definition: jobdescprov.h:87
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
KeyReplaceJobDescProv::dump
virtual void dump(od_ostream &) const
TypeSet< int >
InlineSplitJobDescProv::firstInlNr
int firstInlNr(int) const
InlineSplitJobDescProv::InlineSplitJobDescProv
InlineSplitJobDescProv(const IOPar &, const TypeSet< int > &)
JobDescProv::pars
const IOPar & pars() const
Definition: jobdescprov.h:39

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