You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
1.2 KiB

  1. #ifndef STORM_STORAGE_SPARSE_STATEVALUATIONS_H_
  2. #define STORM_STORAGE_SPARSE_STATEVALUATIONS_H_
  3. #include <cstdint>
  4. #include <string>
  5. #include "storm/storage/sparse/StateType.h"
  6. #include "storm/storage/expressions/SimpleValuation.h"
  7. #include "storm/models/sparse/StateAnnotation.h"
  8. namespace storm {
  9. namespace storage {
  10. namespace sparse {
  11. // A structure holding information about the reachable state space that can be retrieved from the outside.
  12. struct StateValuations : public storm::models::sparse::StateAnnotation {
  13. /*!
  14. * Constructs a state information object for the given number of states.
  15. */
  16. StateValuations(state_type const& numberOfStates);
  17. virtual ~StateValuations() = default;
  18. // A mapping from state indices to their variable valuations.
  19. std::vector<storm::expressions::SimpleValuation> valuations;
  20. virtual std::string stateInfo(state_type const& state) const override;
  21. };
  22. }
  23. }
  24. }
  25. #endif /* STORM_STORAGE_SPARSE_STATEVALUATIONS_H_ */