Template Class StateDescription

Class Documentation

template<typename StateType, typename ValueType>
class StateDescription

Class representing a single state of the model.

Template Parameters:
  • StateType – Can be either the State ID or a CompressedState description

  • ValueType – The type to use for the rewards and the probability (normally double)

Public Functions

inline StateDescription()

Constructor for the StateDescription class.

Parameters:
  • state_info – The information about the state

  • reward – The reward associated to the state

inline void setStateInfo(const state_properties::StateInfoType state_info)
inline void setReward(const ValueType reward)
inline void setCompressedState(const storm::generator::CompressedState &compressed_state)
inline void addAction(std::vector<std::pair<ValueType, StateType>> &action_transitions, const ValueType action_reward)

Add a new action to the state.

Parameters:
  • action_transitions – The transitions associated to the action

  • action_reward – The reward associated to the action

inline const state_properties::StateInfoType getStateInfo() const

Get the information associated to the state.

Returns:

The state information

inline const ValueType getReward() const

Get the reward associated to the state.

Returns:

The reward

inline const std::vector<std::pair<ActionTransitions, ValueType>> &getActions() const

Get the transitions associated to the action.

Parameters:

action_id – The ID of the action

Returns:

The transitions

inline const storm::generator::CompressedState &getCompressedState() const

Protected Types

typedef std::vector<std::pair<ValueType, StateType>> ActionTransitions

Protected Attributes

std::optional<storm::generator::CompressedState> _compressed_state = std::nullopt
state_properties::StateInfoType _state_info = state_properties::state_info::NO_INFO
ValueType _reward = 0.0
std::vector<std::pair<ActionTransitions, ValueType>> _actions