Browse Source
support for transient assignments in locations, changed assignment to jani::variable, notice that (already broken) prism-to-jani is disabled as long as we reshape jani code
support for transient assignments in locations, changed assignment to jani::variable, notice that (already broken) prism-to-jani is disabled as long as we reshape jani code
Former-commit-id:main9bf2f68c7c
[formerly2a1181a603
] Former-commit-id:d487b0fc74
6 changed files with 84 additions and 12 deletions
-
26src/parser/JaniParser.cpp
-
14src/storage/jani/Assignment.cpp
-
18src/storage/jani/Assignment.h
-
15src/storage/jani/Location.cpp
-
19src/storage/jani/Location.h
-
4src/storage/prism/Program.cpp
@ -1,25 +1,42 @@ |
|||
#pragma once |
|||
|
|||
#include <string> |
|||
#include <vector> |
|||
#include "src/storage/jani/Assignment.h" |
|||
|
|||
namespace storm { |
|||
namespace jani { |
|||
|
|||
/** |
|||
* Jani Location: |
|||
* |
|||
* Whereas Jani Locations also support invariants, we do not have support for them (as we do not support any of the allowed model types) |
|||
*/ |
|||
class Location { |
|||
public: |
|||
/*! |
|||
* Creates a new location. |
|||
*/ |
|||
Location(std::string const& name); |
|||
Location(std::string const& name, std::vector<Assignment> const& transientAssignments = {}); |
|||
|
|||
/*! |
|||
* Retrieves the name of the location. |
|||
*/ |
|||
std::string const& getName() const; |
|||
|
|||
/*! |
|||
* |
|||
*/ |
|||
std::vector<Assignment> const& getTransientAssignments() const; |
|||
|
|||
/*! |
|||
* Checks whether the location is valid, that is, whether the assignments are indeed all transient assignments. |
|||
*/ |
|||
void checkValid() const; |
|||
private: |
|||
// The name of the location. |
|||
std::string name; |
|||
std::vector<Assignment> transientAssignments; |
|||
}; |
|||
|
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue