OpenM++ runtime library (libopenm)
metaHolder.h
Go to the documentation of this file.
1
5
// Copyright (c) 2013-2015 OpenM++
6
// This code is licensed under the MIT license (see LICENSE.txt for details)
7
8
#ifndef META_HOLDER_H
9
#define META_HOLDER_H
10
11
#include "
libopenm/db/dbMetaRow.h
"
12
#include "
dbMetaTable.h
"
13
14
using namespace
std;
15
16
namespace
openm
17
{
19
struct
MetaHolder
20
{
21
public
:
23
const
ModelDicRow
*
modelRow
;
24
26
unique_ptr<IModelDicTable>
modelTable
;
27
29
unique_ptr<ITypeDicTable>
typeDic
;
30
32
unique_ptr<ITypeEnumLstTable>
typeEnumLst
;
33
35
unique_ptr<IParamDicTable>
paramDic
;
36
38
unique_ptr<IParamDimsTable>
paramDims
;
39
41
unique_ptr<IParamImportTable>
paramImport
;
42
44
unique_ptr<ITableDicTable>
tableDic
;
45
47
unique_ptr<ITableDimsTable>
tableDims
;
48
50
unique_ptr<ITableAccTable>
tableAcc
;
51
53
unique_ptr<ITableExprTable>
tableExpr
;
54
56
unique_ptr<ILangLstTable>
langLst
;
57
59
unique_ptr<IEntityDicTable>
entityDic
;
60
62
unique_ptr<IEntityAttrTable>
entityAttr
;
63
65
unique_ptr<IGroupLstTable>
groupLst
;
66
68
unique_ptr<IGroupPcTable>
groupPc
;
69
71
unique_ptr<IRunOptionTable>
runOptionTable
;
72
74
MetaHolder
(
void
) :
modelRow
(nullptr) { }
75
77
size_t
typeEnumsSize
(
int
i_modelId,
int
i_typeId)
const
;
78
80
size_t
parameterSize
(
const
ParamDicRow
& paramRow)
const
;
81
83
size_t
accumulatorSize
(
const
TableDicRow
& i_tableRow)
const
;
84
};
85
}
86
87
#endif
// META_HOLDER_H
dbMetaRow.h
OpenM++ data library: db rows of model metadata tables.
dbMetaTable.h
OpenM++ data library: db tables for model metadata.
openm
openM++ namespace
Definition:
log.h:32
openm::MetaHolder
Holder for model metadata core part (not include model text).
Definition:
metaHolder.h:20
openm::MetaHolder::groupLst
unique_ptr< IGroupLstTable > groupLst
group_lst table rows
Definition:
metaHolder.h:65
openm::MetaHolder::entityDic
unique_ptr< IEntityDicTable > entityDic
entity_dic table rows
Definition:
metaHolder.h:59
openm::MetaHolder::groupPc
unique_ptr< IGroupPcTable > groupPc
group_pc table rows
Definition:
metaHolder.h:68
openm::MetaHolder::typeEnumLst
unique_ptr< ITypeEnumLstTable > typeEnumLst
type_enum_lst table rows
Definition:
metaHolder.h:32
openm::MetaHolder::paramDims
unique_ptr< IParamDimsTable > paramDims
param_dims table rows
Definition:
metaHolder.h:38
openm::MetaHolder::modelTable
unique_ptr< IModelDicTable > modelTable
model_dic table rows
Definition:
metaHolder.h:26
openm::MetaHolder::langLst
unique_ptr< ILangLstTable > langLst
lang_lst table rows
Definition:
metaHolder.h:56
openm::MetaHolder::parameterSize
size_t parameterSize(const ParamDicRow ¶mRow) const
return input parameter size of single sub value: total number of values in the parameter as product o...
Definition:
metaHolder.cpp:12
openm::MetaHolder::paramDic
unique_ptr< IParamDicTable > paramDic
param_dic table rows
Definition:
metaHolder.h:35
openm::MetaHolder::tableAcc
unique_ptr< ITableAccTable > tableAcc
table_acc table rows
Definition:
metaHolder.h:50
openm::MetaHolder::entityAttr
unique_ptr< IEntityAttrTable > entityAttr
entity_attr table rows
Definition:
metaHolder.h:62
openm::MetaHolder::modelRow
const ModelDicRow * modelRow
model_dic row for the model
Definition:
metaHolder.h:23
openm::MetaHolder::runOptionTable
unique_ptr< IRunOptionTable > runOptionTable
run_option table rows
Definition:
metaHolder.h:71
openm::MetaHolder::MetaHolder
MetaHolder(void)
create empty model metadata holder
Definition:
metaHolder.h:74
openm::MetaHolder::paramImport
unique_ptr< IParamImportTable > paramImport
model_parameter_import table rows
Definition:
metaHolder.h:41
openm::MetaHolder::tableExpr
unique_ptr< ITableExprTable > tableExpr
table_expr table rows
Definition:
metaHolder.h:53
openm::MetaHolder::accumulatorSize
size_t accumulatorSize(const TableDicRow &i_tableRow) const
return accumulator size: total number of accumulator values as product of dimensions size,...
Definition:
metaHolder.cpp:35
openm::MetaHolder::typeDic
unique_ptr< ITypeDicTable > typeDic
type_dic table rows
Definition:
metaHolder.h:29
openm::MetaHolder::typeEnumsSize
size_t typeEnumsSize(int i_modelId, int i_typeId) const
return type enums size: number of enums for that type or zero if no enums found (most of built-in typ...
Definition:
metaHolder.cpp:52
openm::MetaHolder::tableDims
unique_ptr< ITableDimsTable > tableDims
table_dims table rows
Definition:
metaHolder.h:47
openm::MetaHolder::tableDic
unique_ptr< ITableDicTable > tableDic
table_dic table rows
Definition:
metaHolder.h:44
openm::ModelDicRow
model_dic table row.
Definition:
dbMetaRow.h:112
openm::ParamDicRow
parameter_dic join to model_parameter_dic table row.
Definition:
dbMetaRow.h:473
openm::TableDicRow
table_dic table row.
Definition:
dbMetaRow.h:741
include
metaHolder.h
Generated on Mon Oct 21 2024 23:02:25 for OpenM++ runtime library (libopenm) by
1.9.4