libmonaa  0.5.2
common_types.hh
1 #pragma once
2 
3 #include <cstdint>
4 #include <memory>
5 #include <vector>
6 
7 typedef char Alphabet;
8 typedef uint8_t ClockVariables;
9 
13 template <class State> struct Automaton {
14  struct TATransition;
15 
17  std::vector<std::shared_ptr<State>> states;
19  std::vector<std::shared_ptr<State>> initialStates;
20 
22  inline std::size_t stateSize() const { return states.size(); }
23 
24  inline bool operator==(const Automaton<State> A) const {
25  return initialStates == A.initialStates && states == A.states;
26  }
27 };
An automaton.
Definition: common_types.hh:13
std::size_t stateSize() const
Returns the number of the states.
Definition: common_types.hh:22
std::vector< std::shared_ptr< State > > states
The states of this automaton.
Definition: common_types.hh:14
std::vector< std::shared_ptr< State > > initialStates
The initial states of this automaton.
Definition: common_types.hh:19
A state of timed automata.
Definition: timed_automaton.hh:42