Teuchos - Trilinos Tools Package Version of the Day
Loading...
Searching...
No Matches
Teuchos_Condition.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Teuchos: Common Tools Package
4//
5// Copyright 2004 NTESS and the Teuchos contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef TEUCHOS_CONDITION_HPP_
11#define TEUCHOS_CONDITION_HPP_
12
17
18#include "Teuchos_Dependency.hpp"
19#include "Teuchos_Describable.hpp"
20
21namespace Teuchos {
22
28class TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT Condition : public Describable{
29public:
30
33
38
39 typedef Teuchos::Array<Teuchos::RCP<const Condition> > ConstConditionList;
40
42
45
50
54 virtual ~Condition(){}
55
57
58
61
63 virtual bool isConditionTrue() const = 0;
64
72 virtual bool containsAtLeasteOneParameter() const = 0;
73
79
83 virtual std::string getTypeAttributeValue() const = 0;
84
86 static const std::string& getXMLTagName(){
87 static const std::string xmlTagName = "Condition";
88 return xmlTagName;
89 }
90
92
93};
94
95}
96#endif //TEUCHOS_CONDITION_HPP_
Replacement for std::vector that is compatible with the Teuchos Memory Management classes.
Condition()
Constructs a Condition.
virtual ~Condition()
Destructs a condition.
virtual Dependency::ConstParameterEntryList getAllParameters() const =0
Gets all of the parameters that are evaluated in this condition.
virtual bool containsAtLeasteOneParameter() const =0
Determines whether or not the evaluation of a parameter occurs somewhere in this condition.
virtual bool isConditionTrue() const =0
Determins whether or not a condition is true.
Teuchos::Array< Teuchos::RCP< Condition > > ConditionList
Convenience typedef for defining a list of conditions.
static const std::string & getXMLTagName()
virtual std::string getTypeAttributeValue() const =0
Get the value that should be used for the condition type attribute when converting a condition to XML...
std::set< RCP< const ParameterEntry >, RCPConstComp > ConstParameterEntryList
A list of dependents.
Base class for all objects that can describe themselves.
The Teuchos namespace contains all of the classes, structs and enums used by Teuchos,...