14 #include "generalmod.h" 46 DBDir(
const char* dirname);
52 bool isOutdated()
const;
53 DirID
dirID()
const {
return dirid_; }
54 const char*
dirName()
const {
return dirname_; }
58 size_type size()
const;
59 bool isEmpty()
const {
return size() < 1; }
61 bool isPresent(ObjID)
const;
62 bool isPresent(
const DBKey&)
const;
65 IOObj* getEntry(ObjID)
const;
66 IOObj* getEntryByName(
const char* nm,
67 const char* trgrpnm=0)
const;
68 IOObj* getEntryByIdx(IdxType)
const;
70 bool commitChanges(
const IOObj&);
71 bool permRemove(ObjID);
73 DBKey newTmpKey()
const;
87 mutable ObjNrType curnr_ = 0;
94 void fromDirID(DirID,
bool);
95 bool readFromFile(
bool);
97 bool writeToFile()
const;
99 const IOObj* gtObjByName(
const char*,
const char*)
const;
100 IdxType gtIdx(ObjID)
const;
101 bool gtIsOutdated()
const;
102 bool setObj(
IOObj*,
bool writeafter);
103 bool addAndWrite(
IOObj*);
108 DBKey gtNewKey(
const ObjNrType&)
const;
109 void setObjDirName(
IOObj&);
115 bool reRead(
bool force)
const;
117 bool prepObj(
IOObj&)
const;
124 {
return obj ? commitChanges(*obj) :
false; }
164 const char* translator_globexpr=0);
166 const char*
name()
const {
return name_; }
167 size_type
size()
const {
return entries_.size(); }
168 bool isEmpty()
const {
return entries_.isEmpty(); }
170 void fill(
const char* nmfiltglobexpr=0);
171 IdxType
indexOf(
const char*)
const;
173 const IOObj&
ioobj( IdxType idx )
const {
return *entries_[idx]; }
#define mExpClass(module)
Definition: commondefs.h:157
bool isEmpty() const
Definition: dbdir.h:59
const char * name() const
Definition: dbdir.h:166
size_type size() const
Definition: dbdir.h:167
const DirID dirid_
Definition: dbdir.h:84
BufferString name_
Definition: dbdir.h:183
DBKey::ObjNrType ObjNrType
Definition: dbdir.h:42
OD class for stream write common access to the user log file, or std::cout in batch progs...
Definition: od_ostream.h:25
int ChangeType
Definition: monitorable.h:80
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
DBKey::ObjID ObjID
Definition: dbdir.h:44
#define od_int64
Definition: plftypes.h:34
Definition: sharedobject.h:18
virtual size_type size() const
Definition: dbdir.h:140
ObjectSet< IOObj >::size_type size_type
Definition: dbdir.h:159
od_int64 readTime() const
Definition: dbdir.h:55
ObjectSet< IOObj >::size_type size_type
Definition: dbdir.h:40
GroupID DirID
Definition: dbkey.h:40
Definition: uistring.h:88
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:173
int ObjNrType
Definition: groupedid.h:39
#define mDeclMonitorableAssignment(clss)
like mDeclAbstractMonitorableAssignment but for non-abstract subclasses. Implements the clone() metho...
Definition: monitor.h:111
OD class for stream read.
Definition: od_istream.h:23
size_type IdxType
Definition: dbdir.h:41
Holds constraints on IOObj selection.
Definition: ioobjctxt.h:27
Set of pointers to objects.
Definition: commontypes.h:28
Group of Translators. Has a static factory.
Definition: transl.h:54
static ChangeType cEntryChanged()
Definition: dbdir.h:75
StdSelType
Definition: ioobjctxt.h:66
ObjectSet< IOObj > objs_
Definition: dbdir.h:83
const IOObj & ioobj(IdxType idx) const
Definition: dbdir.h:173
IdxType size_type
Definition: monitoriter.h:36
const char * dirName() const
Definition: dbdir.h:54
DBKey::DirID DirID
Definition: dbdir.h:43
manages the 'Meta-'data store for the IOObj's. This info is read from the .omf files. The 'workhorse is the DBDir object.
Definition: dbman.h:32
#define mDefNoAssignmentOper(clss)
Definition: commondefs.h:131
DBDir::ObjID ObjID
Definition: dbdir.h:135
DirID dirID() const
Definition: dbdir.h:53
static ObjNrType tmpObjNrStart()
Definition: ioobj.h:127
const BufferString dirname_
Definition: dbdir.h:85
static ChangeType cEntryAdded()
Definition: dbdir.h:76
uiString errmsg_
Definition: dbdir.h:89
const DBDir & dbDir() const
#define mDeprecated
Definition: plfdefs.h:213
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
void sort(ObjectSet< T > &os)
Sort ObjectSet. Must have operator > defined for elements.
Definition: objectset.h:224
mDeprecated bool commitChanges(const IOObj *obj)
Definition: dbdir.h:123
static ChangeType cEntryRemoved()
Definition: dbdir.h:78
BufferString errmsg_
Definition: horizontracker.h:117
const IOObj & ioObj() const
bool isEmpty() const
Definition: dbdir.h:168
ObjectSet< IOObj > entries_
Definition: dbdir.h:181
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
uiString errMsg() const
Definition: dbdir.h:56
base class for Monitorable iterators. Inherit from one of its subclasses.
Definition: monitoriter.h:31
size_type IdxType
Definition: dbdir.h:160
list of DBDir entries, sorted by name, conforming to a context. Can be Filtered using GlobExpr...
Definition: dbdir.h:155
bool isok_
Definition: dbdir.h:82
static ChangeType cEntryToBeRemoved()
Definition: dbdir.h:77
IOObjContext & ctxt_
Definition: dbdir.h:182
Holds the context for selecting and/or creating IOObjs.
Definition: ioobjctxt.h:59