9#ifndef Tempus_TimeEventListIndex_decl_hpp
10#define Tempus_TimeEventListIndex_decl_hpp
14#include "Teuchos_Time.hpp"
15#include "Teuchos_ParameterList.hpp"
17#include "Tempus_config.hpp"
38 std::string name =
"TimeEventListIndex");
52 virtual bool isIndex(
int index)
const;
86 virtual void describe(Teuchos::FancyOStream &out,
87 const Teuchos::EVerbosityLevel verbLevel)
const;
102 virtual void setIndexList(std::vector<int> indexList,
bool sort =
true);
148template<
class Scalar>
149Teuchos::RCP<TimeEventListIndex<Scalar> >
This class defines time events which can be used to "trigger" an action.
TimeEventListIndex specifies a list of index events.
TimeEventListIndex()
Default constructor.
virtual bool eventInRangeIndex(int index1, int index2) const
Test if an event occurs within the index range.
std::vector< int > indexList_
virtual ~TimeEventListIndex()
Destructor.
virtual void setIndexList(std::vector< int > indexList, bool sort=true)
Set the vector of event indices.
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
Describe member data.
virtual void addIndex(int index)
Add the index to event vector.
virtual bool isIndex(int index) const
Test if index is a time event.
virtual void clearIndexList()
Clear the vector of all events.
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Return a valid ParameterList with current settings.
virtual std::vector< int > getIndexList() const
Return a vector of event indices.
virtual int indexToNextEvent(int index) const
How many indices until the next event.
virtual int indexOfNextEvent(int index) const
Return the index of the next event following the input index.
Teuchos::RCP< TimeEventListIndex< Scalar > > createTimeEventListIndex(Teuchos::RCP< Teuchos::ParameterList > pList)
Nonmember Constructor via ParameterList.