Typedefs for the library datatypes and related symbolic constants. More...
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. | |
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... | |
| enum | ppl_enum_Bounded_Integer_Type_Width { PPL_BITS_8, PPL_BITS_16, PPL_BITS_32, PPL_BITS_64, PPL_BITS_128 } |
Widths of bounded integer types. More... | |
| enum | ppl_enum_Bounded_Integer_Type_Representation { PPL_UNSIGNED, PPL_SIGNED_2_COMPLEMENT } |
Representation of bounded integer types. More... | |
| enum | ppl_enum_Bounded_Integer_Type_Overflow { PPL_OVERFLOW_WRAPS, PPL_OVERFLOW_UNDEFINED, PPL_OVERFLOW_IMPOSSIBLE } |
Overflow behavior of bounded integer types. 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_asprint_variable (char **strp, ppl_dimension_type var) |
Pretty-prints var to a malloc-allocated string, a pointer to which is returned via strp. | |
| 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. | |
| char * | ppl_io_wrap_string (const char *src, unsigned indent_depth, unsigned preferred_first_line_length, unsigned preferred_line_length) |
| Utility function for the wrapping of lines of text. | |
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. | |
Typedefs for the library datatypes and related symbolic constants.
The datatypes provided by the library should be manipulated by means of the corresponding opaque pointer types and the functions working on them.
| typedef size_t ppl_dimension_type |
| 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.
Overflow behavior of bounded integer types.
Describes the relations represented by a constraint.
| int ppl_io_asprint_variable | ( | char ** | strp, | |
| ppl_dimension_type | var | |||
| ) |
Pretty-prints var to a malloc-allocated string, a pointer to which is returned via strp.
Definition at line 2608 of file ppl_c_implementation_common.cc.
References PPL_ERROR_OUT_OF_MEMORY, and PPL_STDIO_ERROR.
| int ppl_io_fprint_variable | ( | FILE * | stream, | |
| ppl_dimension_type | var | |||
| ) |
Pretty-prints var to the given output stream.
Definition at line 2599 of file ppl_c_implementation_common.cc.
References PPL_STDIO_ERROR.
| 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.
Definition at line 2672 of file ppl_c_implementation_common.cc.
| int ppl_io_print_variable | ( | ppl_dimension_type | var | ) |
Pretty-prints var to stdout.
Definition at line 2590 of file ppl_c_implementation_common.cc.
References PPL_STDIO_ERROR.
| 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.
Definition at line 2664 of file ppl_c_implementation_common.cc.
| char* ppl_io_wrap_string | ( | const char * | src, | |
| unsigned | indent_depth, | |||
| unsigned | preferred_first_line_length, | |||
| unsigned | preferred_line_length | |||
| ) |
Utility function for the wrapping of lines of text.
| src | The source string holding the text to wrap. | |
| indent_depth | The indentation depth. | |
| preferred_first_line_length | The preferred length for the first line of text. | |
| preferred_line_length | The preferred length for all the lines but the first one. |
Definition at line 2653 of file ppl_c_implementation_common.cc.
| int ppl_max_space_dimension | ( | ppl_dimension_type * | m | ) |
Writes to m the maximum space dimension this library can handle.
Definition at line 383 of file ppl_c_implementation_common.cc.
| int ppl_not_a_dimension | ( | ppl_dimension_type * | m | ) |
Writes to m a value that does not designate a valid dimension.
Definition at line 390 of file ppl_c_implementation_common.cc.
References not_a_dimension().
| unsigned int PPL_COMPLEXITY_CLASS_ANY |
Code of the universal complexity class.
Definition at line 149 of file ppl_c_implementation_common.cc.
| unsigned int PPL_COMPLEXITY_CLASS_POLYNOMIAL |
Code of the worst-case polynomial complexity class.
Definition at line 147 of file ppl_c_implementation_common.cc.
| unsigned int PPL_COMPLEXITY_CLASS_SIMPLEX |
Code of the worst-case exponential but typically polynomial complexity class.
Definition at line 148 of file ppl_c_implementation_common.cc.
| unsigned int PPL_POLY_CON_RELATION_IS_DISJOINT |
Individual bit saying that the polyhedron and the set of points satisfying the constraint are disjoint.
Definition at line 140 of file ppl_c_implementation_common.cc.
| unsigned int PPL_POLY_CON_RELATION_IS_INCLUDED |
Individual bit saying that the polyhedron is included in the set of points satisfying the constraint.
Definition at line 142 of file ppl_c_implementation_common.cc.
| unsigned int PPL_POLY_CON_RELATION_SATURATES |
Individual bit saying that the polyhedron is included in the set of points saturating the constraint.
Definition at line 143 of file ppl_c_implementation_common.cc.
| 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.
Definition at line 141 of file ppl_c_implementation_common.cc.
| unsigned int PPL_POLY_GEN_RELATION_SUBSUMES |
Individual bit saying that adding the generator would not change the polyhedron.
Definition at line 145 of file ppl_c_implementation_common.cc.
1.6.3