OGS
FemCondition.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <string>
7
8namespace DataHolderLib
9{
11{
12 std::string name;
13 std::size_t order;
14 std::size_t components;
15};
16
17enum class BaseObjType
18{
19 MESH = 0,
21};
22
23enum class ParameterType
24{
25 NONE = 0,
28};
29
32{
33public:
34 FemCondition(ProcessVariable const& process_var,
35 std::string const& param_name);
36 virtual ~FemCondition() = default;
37
39 std::string const getProcessVarName() const { return _process_var.name; }
40
42 ProcessVariable const& getProcessVar() const { return _process_var; }
43
45 std::string const getParamName() const { return _param_name; }
46
49
51 std::string getBaseObjName() const { return _base_obj_name; }
52
54 std::string const getObjName() const { return _obj_name; }
55
57 void setMesh(std::string const& mesh_name);
58
60 virtual void setGeoObject(std::string const& geo_name,
61 std::string const& obj_name);
62
64 virtual std::string const getConditionClassStr() const = 0;
65
66private:
69 std::string _param_name;
70 std::string _base_obj_name;
71 std::string _obj_name;
72};
73
74} // namespace DataHolderLib
virtual void setGeoObject(std::string const &geo_name, std::string const &obj_name)
Sets a geometric object as corresponding object for the condition.
virtual std::string const getConditionClassStr() const =0
Returns the type of condition for displaying purposes.
std::string getBaseObjName() const
Returns the name of the base object (i.e. geometry or mesh)
virtual ~FemCondition()=default
void setMesh(std::string const &mesh_name)
Sets a mesh as corresponding object for the condition.
BaseObjType getBaseObjType() const
Specifies if the condition is set a geometry or on a mesh.
std::string const getObjName() const
Returns the name of the geometric object.
FemCondition(ProcessVariable const &process_var, std::string const &param_name)
std::string const getProcessVarName() const
Returns the name of the associated process variable.
ProcessVariable _process_var
ProcessVariable const & getProcessVar() const
Returns the numerical order of the process variable.
std::string const getParamName() const
Returns the name of the parameter associated with the condition.