types.h File Reference

#include <gmp.h>
#include <limits.h>

Go to the source code of this file.

Classes

struct  Vector
struct  matrix
struct  polyhedron
struct  interval
struct  _Param_Vertex
struct  _Param_Domain
struct  _Param_Polyhedron
struct  _evalue
struct  _enode
struct  _enumeration
struct  LatticeUnion
struct  ZPolyhedron

Defines

#define FIRST_PARAMETER_NAME   'P'
#define PCHAR   (FIRST_PARAMETER_NAME-1)
#define MAXNOOFRAYS   200
#define P_VALUE_FMT   "%4s "
#define LB_INFINITY   1
#define UB_INFINITY   2
#define MSB   ((unsigned)(((unsigned)1)<<(sizeof(int)*8-1)))
#define TOP   ((int)(MSB-1))
#define NEXT(j, b)   { if (!((b)>>=1)) { (b)=MSB; (j)++; } }
#define POL_HIGH_BIT   (UINT_MAX - (UINT_MAX >> 1))
#define POL_NO_DUAL   (POL_HIGH_BIT | 0x0001)
#define POL_INTEGER   (POL_HIGH_BIT | 0x0002)
#define POL_ISSET(flags, f)   ((flags & f) == f)
#define FL_INIT(l, f)   (l) = (f)
#define FL_SET(l, f)   ((l) |= (f))
#define FL_CLR(l, f)   ((l) &= ~(f))
#define FL_ISSET(l, f)   ((l) & (f))
#define F_INIT(p, f)   FL_INIT((p)->flags, f)
#define F_SET(p, f)   FL_SET((p)->flags, f)
#define F_CLR(p, f)   FL_CLR((p)->flags, f)
#define F_ISSET(p, f)   FL_ISSET((p)->flags, f)
#define POL_INEQUALITIES   0x00000001
#define POL_FACETS   0x00000002
#define POL_POINTS   0x00000004
#define POL_VERTICES   0x00000008
#define POL_VALID   0x00000010
#define emptyQ(P)
#define universeQ(P)   (P->Dimension==P->NbBid)
#define FORALL_PVertex_in_ParamPolyhedron(_V, _D, _P)
#define END_FORALL_PVertex_in_ParamPolyhedron
#define POLY_UNION_OR_STRUCT   union
#define FOREVER   for(;;)

Typedefs

typedef struct matrix Matrix
typedef struct polyhedron Polyhedron
typedef struct interval Interval
typedef struct _Param_Vertex Param_Vertices
typedef struct _Param_Domain Param_Domain
typedef struct _Param_Polyhedron Param_Polyhedron
typedef struct _evalue evalue
typedef struct _enode enode
typedef struct _enumeration Enumeration
typedef Matrix Lattice

Enumerations

enum  enode_type { polynomial, periodic, evector }
enum  Bool { False = 0, True = 1 }

Variables

int Pol_status

Define Documentation

#define emptyQ (  ) 
#define END_FORALL_PVertex_in_ParamPolyhedron
Value:
}                                \
              NEXT(_ix, _bx);                  \
      }                                        \
}

Definition at line 173 of file types.h.

Referenced by main().

#define F_CLR ( p,
 )     FL_CLR((p)->flags, f)

Definition at line 106 of file types.h.

Referenced by p_simplify_constraints().

#define F_INIT ( p,
 )     FL_INIT((p)->flags, f)

Definition at line 104 of file types.h.

#define F_ISSET ( p,
 )     FL_ISSET((p)->flags, f)

Definition at line 107 of file types.h.

Referenced by align_context(), Polyhedron_Compute_Dual(), and Polyhedron_Remove_parm_eqs().

#define F_SET ( p,
 )     FL_SET((p)->flags, f)
#define FIRST_PARAMETER_NAME   'P'

Definition at line 44 of file types.h.

#define FL_CLR ( l,
 )     ((l) &= ~(f))

Definition at line 101 of file types.h.

#define FL_INIT ( l,
 )     (l) = (f)

Definition at line 99 of file types.h.

Referenced by Polyhedron_Remove_parm_eqs().

#define FL_ISSET ( l,
 )     ((l) & (f))

Definition at line 102 of file types.h.

#define FL_SET ( l,
 )     ((l) |= (f))

Definition at line 100 of file types.h.

#define FORALL_PVertex_in_ParamPolyhedron ( _V,
_D,
_P   ) 
Value:
{     int _i, _ix;                                   \
      unsigned _bx;                                  \
      for( _i=0, _ix=0, _bx=MSB, _V=_P->V ;            \
           _V && (_i<_P->nbV) ; _i++, _V=_V->next )      \
      {       if (_D->F[_ix] & _bx)                   \
              {

Definition at line 165 of file types.h.

Referenced by main().

#define FOREVER   for(;;)

Definition at line 248 of file types.h.

Referenced by main().

#define LB_INFINITY   1

Definition at line 65 of file types.h.

Referenced by cherche_min(), lower_upper_bounds(), and P_Enum().

#define MAXNOOFRAYS   200
#define MSB   ((unsigned)(((unsigned)1)<<(sizeof(int)*8-1)))
#define NEXT ( j,
 )     { if (!((b)>>=1)) { (b)=MSB; (j)++; } }
#define P_VALUE_FMT   "%4s "
#define PCHAR   (FIRST_PARAMETER_NAME-1)

Definition at line 49 of file types.h.

Referenced by Read_ParamNames().

#define POL_FACETS   0x00000002
#define POL_HIGH_BIT   (UINT_MAX - (UINT_MAX >> 1))

Definition at line 81 of file types.h.

#define POL_INEQUALITIES   0x00000001
#define POL_INTEGER   (POL_HIGH_BIT | 0x0002)

Definition at line 83 of file types.h.

Referenced by Constraints2Polyhedron().

#define POL_ISSET ( flags,
 )     ((flags & f) == f)
#define POL_NO_DUAL   (POL_HIGH_BIT | 0x0001)
#define POL_POINTS   0x00000004
#define POL_VALID   0x00000010
#define POL_VERTICES   0x00000008
#define POLY_UNION_OR_STRUCT   union

Definition at line 186 of file types.h.

#define TOP   ((int)(MSB-1))

Definition at line 73 of file types.h.

#define UB_INFINITY   2

Definition at line 66 of file types.h.

Referenced by cherche_min(), lower_upper_bounds(), and P_Enum().

#define universeQ (  )     (P->Dimension==P->NbBid)

Definition at line 139 of file types.h.


Typedef Documentation

typedef struct _enode enode
typedef struct _enumeration Enumeration
typedef struct _evalue evalue
typedef struct interval Interval
typedef Matrix Lattice

Definition at line 235 of file types.h.

typedef struct matrix Matrix
typedef struct _Param_Domain Param_Domain
typedef struct _Param_Vertex Param_Vertices
typedef struct polyhedron Polyhedron

Enumeration Type Documentation

enum Bool
Enumerator:
False 
True 

Definition at line 234 of file types.h.

enum enode_type
Enumerator:
polynomial 
periodic 
evector 

Definition at line 181 of file types.h.


Variable Documentation

Definition at line 89 of file polyhedron.c.


Generated on Wed Nov 25 17:45:27 2009 for polylib by  doxygen 1.6.1