Typedefs | |
typedef size_t | ppl_dimension_type |
An unsigned integral type for representing space dimensions. | |
typedef const char * | ppl_io_variable_output_function_type (ppl_dimension_type var) |
The type of output functions used for printing variables. | |
typedef struct ppl_Coefficient_tag * | ppl_Coefficient_t |
Opaque pointer. | |
typedef struct ppl_Coefficient_tag const * | ppl_const_Coefficient_t |
Opaque pointer to const object. | |
typedef struct ppl_Linear_Expression_tag * | ppl_Linear_Expression_t |
Opaque pointer. | |
typedef struct ppl_Linear_Expression_tag const * | ppl_const_Linear_Expression_t |
Opaque pointer to const object. | |
typedef struct ppl_Constraint_tag * | ppl_Constraint_t |
Opaque pointer. | |
typedef struct ppl_Constraint_tag const * | ppl_const_Constraint_t |
Opaque pointer to const object. | |
typedef struct ppl_Constraint_System_tag * | ppl_Constraint_System_t |
Opaque pointer. | |
typedef struct ppl_Constraint_System_tag const * | ppl_const_Constraint_System_t |
Opaque pointer to const object. | |
typedef struct ppl_Constraint_System_const_iterator_tag * | ppl_Constraint_System_const_iterator_t |
Opaque pointer. | |
typedef struct ppl_Constraint_System_const_iterator_tag const * | ppl_const_Constraint_System_const_iterator_t |
Opaque pointer to const object. | |
typedef struct ppl_Generator_tag * | ppl_Generator_t |
Opaque pointer. | |
typedef struct ppl_Generator_tag const * | ppl_const_Generator_t |
Opaque pointer to const object. | |
typedef struct ppl_Generator_System_tag * | ppl_Generator_System_t |
Opaque pointer. | |
typedef struct ppl_Generator_System_tag const * | ppl_const_Generator_System_t |
Opaque pointer to const object. | |
typedef struct ppl_Generator_System_const_iterator_tag * | ppl_Generator_System_const_iterator_t |
Opaque pointer. | |
typedef struct ppl_Generator_System_const_iterator_tag const * | ppl_const_Generator_System_const_iterator_t |
Opaque pointer to const object. | |
typedef struct ppl_Congruence_tag * | ppl_Congruence_t |
Opaque pointer. | |
typedef struct ppl_Congruence_tag const * | ppl_const_Congruence_t |
Opaque pointer to const object. | |
typedef struct ppl_Congruence_System_tag * | ppl_Congruence_System_t |
Opaque pointer. | |
typedef struct ppl_Congruence_System_tag const * | ppl_const_Congruence_System_t |
Opaque pointer to const object. | |
typedef struct ppl_Congruence_System_const_iterator_tag * | ppl_Congruence_System_const_iterator_t |
Opaque pointer. | |
typedef struct ppl_Congruence_System_const_iterator_tag const * | ppl_const_Congruence_System_const_iterator_t |
Opaque pointer to const object. | |
typedef struct ppl_Grid_Generator_tag * | ppl_Grid_Generator_t |
Opaque pointer. | |
typedef struct ppl_Grid_Generator_tag const * | ppl_const_Grid_Generator_t |
Opaque pointer to const object. | |
typedef struct ppl_Grid_Generator_System_tag * | ppl_Grid_Generator_System_t |
Opaque pointer. | |
typedef struct ppl_Grid_Generator_System_tag const * | ppl_const_Grid_Generator_System_t |
Opaque pointer to const object. | |
typedef struct ppl_Grid_Generator_System_const_iterator_tag * | ppl_Grid_Generator_System_const_iterator_t |
Opaque pointer. | |
typedef struct ppl_Grid_Generator_System_const_iterator_tag const * | ppl_const_Grid_Generator_System_const_iterator_t |
Opaque pointer to const object. | |
typedef struct ppl_MIP_Problem_tag * | ppl_MIP_Problem_t |
Opaque pointer. | |
typedef struct ppl_MIP_Problem_tag const * | ppl_const_MIP_Problem_t |
Opaque pointer to const object. | |
typedef struct ppl_Polyhedron_tag * | ppl_Polyhedron_t |
Opaque pointer. | |
typedef struct ppl_Polyhedron_tag const * | ppl_const_Polyhedron_t |
Opaque pointer to const object. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_tag * | ppl_Pointset_Powerset_C_Polyhedron_t |
Opaque pointer. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_tag const * | ppl_const_Pointset_Powerset_C_Polyhedron_t |
Opaque pointer to const object. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_iterator_tag * | ppl_Pointset_Powerset_C_Polyhedron_iterator_t |
Opaque pointer. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_iterator_tag const * | ppl_const_Pointset_Powerset_C_Polyhedron_iterator_t |
Opaque pointer to const object. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_const_iterator_tag * | ppl_Pointset_Powerset_C_Polyhedron_const_iterator_t |
Opaque pointer. | |
typedef struct ppl_Pointset_Powerset_C_Polyhedron_const_iterator_tag const * | ppl_const_Pointset_Powerset_C_Polyhedron_const_iterator_t |
Opaque pointer to const object. | |
Enumerations | |
enum | ppl_enum_Constraint_Type { PPL_CONSTRAINT_TYPE_LESS_THAN, PPL_CONSTRAINT_TYPE_LESS_OR_EQUAL, PPL_CONSTRAINT_TYPE_EQUAL, PPL_CONSTRAINT_TYPE_GREATER_OR_EQUAL, PPL_CONSTRAINT_TYPE_GREATER_THAN } |
Describes the relations represented by a constraint. More... | |
enum | ppl_enum_Generator_Type { PPL_GENERATOR_TYPE_LINE, PPL_GENERATOR_TYPE_RAY, PPL_GENERATOR_TYPE_POINT, PPL_GENERATOR_TYPE_CLOSURE_POINT } |
Describes the different kinds of generators. More... | |
enum | ppl_enum_Grid_Generator_Type { PPL_GRID_GENERATOR_TYPE_LINE, PPL_GRID_GENERATOR_TYPE_PARAMETER, PPL_GRID_GENERATOR_TYPE_POINT } |
Describes the different kinds of grid generators. More... | |
Functions | |
int | ppl_max_space_dimension (ppl_dimension_type *m) |
Writes to m the maximum space dimension this library can handle. | |
int | ppl_not_a_dimension (ppl_dimension_type *m) |
Writes to m a value that does not designate a valid dimension. | |
int | ppl_io_print_variable (ppl_dimension_type var) |
Pretty-prints var to stdout . | |
int | ppl_io_fprint_variable (FILE *stream, ppl_dimension_type var) |
Pretty-prints var to the given output stream . | |
int | ppl_io_set_variable_output_function (ppl_io_variable_output_function_type *p) |
Sets the output function to be used for printing variables to p . | |
int | ppl_io_get_variable_output_function (ppl_io_variable_output_function_type **pp) |
Writes a pointer to the current variable output function to pp . | |
Variables | |
unsigned int | PPL_COMPLEXITY_CLASS_POLYNOMIAL |
Code of the worst-case polynomial complexity class. | |
unsigned int | PPL_COMPLEXITY_CLASS_SIMPLEX |
Code of the worst-case exponential but typically polynomial complexity class. | |
unsigned int | PPL_COMPLEXITY_CLASS_ANY |
Code of the universal complexity class. | |
unsigned int | PPL_POLY_CON_RELATION_IS_DISJOINT |
Individual bit saying that the polyhedron and the set of points satisfying the constraint are disjoint. | |
unsigned int | PPL_POLY_CON_RELATION_STRICTLY_INTERSECTS |
Individual bit saying that the polyhedron intersects the set of points satisfying the constraint, but it is not included in it. | |
unsigned int | PPL_POLY_CON_RELATION_IS_INCLUDED |
Individual bit saying that the polyhedron is included in the set of points satisfying the constraint. | |
unsigned int | PPL_POLY_CON_RELATION_SATURATES |
Individual bit saying that the polyhedron is included in the set of points saturating the constraint. | |
unsigned int | PPL_POLY_GEN_RELATION_SUBSUMES |
Individual bit saying that adding the generator would not change the polyhedron. |
The datatypes provided by the library should be manipulated by means of the corresponding opaque pointer types and the functions working on them.
typedef const char* ppl_io_variable_output_function_type(ppl_dimension_type var) |
The type of output functions used for printing variables.
An output function for variables must write a textual representation for var
to a character buffer, null-terminate it, and return a pointer to the beginning of the buffer. In case the operation fails, 0 should be returned and perhaps errno
should be set in a meaningful way. The library does nothing with the buffer, besides printing its contents.
Describes the relations represented by a constraint.