1#ifndef STORM_STORAGE_GEOMETRY_NATIVEPOLYTOPECONVERSION_HYPERPLANEENUMERATION_H_
2#define STORM_STORAGE_GEOMETRY_NATIVEPOLYTOPECONVERSION_HYPERPLANEENUMERATION_H_
11template<
typename ValueType>
14 typedef Eigen::Matrix<ValueType, Eigen::Dynamic, Eigen::Dynamic>
EigenMatrix;
15 typedef Eigen::Matrix<ValueType, Eigen::Dynamic, 1>
EigenVector;
31 bool generateRelevantHyperplanesAndVertexSets);
56 std::vector<EigenVector> resultVertices;
59 std::vector<std::vector<uint_fast64_t>> vertexSets;
static bool linearDependenciesFilter(std::vector< uint_fast64_t > const &subset, uint_fast64_t const &item, EigenMatrix const &A)
std::vector< EigenVector > & getResultVertices()
void generateVerticesFromConstraints(EigenMatrix const &constraintMatrix, EigenVector const &constraintVector, bool generateRelevantHyperplanesAndVertexSets)
EigenMatrix & getRelevantMatrix()
Returns the set of halfspaces which are not redundant.
std::vector< std::vector< uint_fast64_t > > & getVertexSets()
Returns for each hyperplane the set of vertices that lie on that hyperplane.
virtual ~HyperplaneEnumeration()=default
HyperplaneEnumeration()=default
Eigen::Matrix< ValueType, Eigen::Dynamic, Eigen::Dynamic > EigenMatrix
EigenVector & getRelevantVector()
Eigen::Matrix< ValueType, Eigen::Dynamic, 1 > EigenVector