Itasca C++ Interface
Toggle main menu visibility
Loading...
Searching...
No Matches
imodellist.h
1
#pragma once
2
3
#include "
base/src/variant.h
"
4
5
namespace
itasca
{
6
7
class
IModelList
{
8
public
:
9
// Information to describe a property in a model.
10
struct
PropInfo
{
11
string
name_;
12
base::Property::Type type_ = base::Property::Type::Double;
13
bool
multiple_ =
false
;
14
bool
advanced_ =
false
;
15
bool
readOnly_ =
false
;
16
};
17
// the string signifying no model assignment
18
static
const
char
*noModelAssigned() {
return
"unassigned"
; }
19
// Information to describe a model.
20
struct
ModelInfo
{
21
string
keyword_;
22
string
fullName_;
23
bool
creep_ =
false
;
24
bool
liquefaction_ =
false
;
25
bool
withOrietation_ =
false
;
26
bool
withKGEv_ =
false
;
27
std::vector<PropInfo> properties_;
28
StringList
states_;
29
};
30
// Used to return info about model/prop info and values in a region of the model.
31
struct
ModelQueryInfo
{
32
double
density_ = 0.0;
33
string
keyword_;
// QString() if more than one model found.
34
ModelInfo
modelInfo_;
35
//std::vector<PropInfo> properties_; // empty if more than one model found.
36
std::vector<base::Property> values_;
//
37
38
void
clear() { density_ = 0.0; keyword_ = string(); modelInfo_.properties_.clear(); values_.clear(); }
39
};
40
virtual
StringList
getAllModelKeywords()
const
=0;
41
virtual
ModelInfo
getModelInfo(
const
string
&keyword)
const
=0;
42
};
43
44
}
// namespace itasca
45
// EoF
46
StringList
Definition
basestring.h:71
itasca::IModelList
Definition
imodellist.h:7
itasca
namespace Itasca
Definition
basememory.cpp:14
itasca::IModelList::ModelInfo
Definition
imodellist.h:20
itasca::IModelList::ModelQueryInfo
Definition
imodellist.h:31
itasca::IModelList::PropInfo
Definition
imodellist.h:10
variant.h
A simpler (and slightly faster) version of a QVariant, added for interfaces that do not use Qt.
common
modelsutil
interface
imodellist.h
Generated by
1.18.0