Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SparseItemLabelingParser.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <boost/optional.hpp>
4
#include <cstdint>
5
#include <string>
6
7
#include "
storm-parsers/parser/MappedFile.h
"
8
#include "
storm/models/sparse/ChoiceLabeling.h
"
9
#include "
storm/models/sparse/StateLabeling.h
"
10
11
namespace
storm
{
12
namespace
parser {
13
17
class
SparseItemLabelingParser
{
18
public
:
26
static
storm::models::sparse::StateLabeling
parseAtomicPropositionLabeling
(uint_fast64_t stateCount, std::string
const
& filename);
27
37
static
storm::models::sparse::ChoiceLabeling
parseChoiceLabeling
(
38
uint_fast64_t choiceCount, std::string
const
& filename, boost::optional<std::vector<uint_fast64_t>>
const
& nondeterministicChoiceIndices = boost::none);
39
40
private
:
45
static
void
checkSyntax(std::string
const
& filename,
storm::parser::MappedFile
const
& file);
46
53
static
void
parseLabelNames(std::string
const
& filename,
storm::models::sparse::ItemLabeling
& labeling,
char
const
*& buf);
54
62
static
void
parseDeterministicLabelAssignments(std::string
const
& filename,
storm::models::sparse::ItemLabeling
& labeling,
char
const
*& buf);
63
73
static
void
parseNonDeterministicLabelAssignments(std::string
const
& filename,
storm::models::sparse::ChoiceLabeling
& labeling,
74
std::vector<uint_fast64_t>
const
& nondeterministicChoiceIndices,
char
const
*& buf);
75
};
76
77
}
// namespace parser
78
}
// namespace storm
ChoiceLabeling.h
MappedFile.h
StateLabeling.h
storm::models::sparse::ChoiceLabeling
This class manages the labeling of the choice space with a number of (atomic) labels.
Definition
ChoiceLabeling.h:12
storm::models::sparse::ItemLabeling
A base class managing the labeling of items with a number of (atomic) labels.
Definition
ItemLabeling.h:21
storm::models::sparse::StateLabeling
This class manages the labeling of the state space with a number of (atomic) labels.
Definition
StateLabeling.h:19
storm::parser::MappedFile
Opens a file and maps it to memory providing a char* containing the file content.
Definition
MappedFile.h:33
storm::parser::SparseItemLabelingParser
This class can be used to parse a labeling file.
Definition
SparseItemLabelingParser.h:17
storm::parser::SparseItemLabelingParser::parseChoiceLabeling
static storm::models::sparse::ChoiceLabeling parseChoiceLabeling(uint_fast64_t choiceCount, std::string const &filename, boost::optional< std::vector< uint_fast64_t > > const &nondeterministicChoiceIndices=boost::none)
Parses the given file and returns the resulting choice labeling.
Definition
SparseItemLabelingParser.cpp:38
storm::parser::SparseItemLabelingParser::parseAtomicPropositionLabeling
static storm::models::sparse::StateLabeling parseAtomicPropositionLabeling(uint_fast64_t stateCount, std::string const &filename)
Parses the given file and returns the resulting state labeling.
Definition
SparseItemLabelingParser.cpp:19
storm
LabParser.cpp.
Definition
cli.cpp:18
src
storm-parsers
parser
SparseItemLabelingParser.h
Generated by
1.9.8