data structures for construction intervals More...
Go to the source code of this file.
Data Structures | |
| struct | pmm_interval |
| struct | pmm_interval_list |
Typedefs | |
| typedef enum pmm_interval_type | PMM_Interval_Type |
| typedef struct pmm_interval | PMM_Interval |
| typedef struct pmm_interval_list | PMM_Interval_List |
Enumerations | |
| enum | pmm_interval_type { IT_NULL, IT_BOUNDARY_COMPLETE, IT_GBBP_EMPTY, IT_GBBP_CLIMB, IT_GBBP_BISECT, IT_GBBP_INFLECT, IT_POINT, IT_COMPLETE } |
Functions | |
| struct pmm_interval * | new_interval () |
| struct pmm_interval_list * | new_interval_list () |
| int | isempty_interval_list (struct pmm_interval_list *l) |
| void | print_interval_list (const char *output, struct pmm_interval_list *l) |
| struct pmm_interval * | read_top_interval (struct pmm_interval_list *l) |
| int | add_top_interval (struct pmm_interval_list *l, struct pmm_interval *i) |
| int | add_bottom_interval (struct pmm_interval_list *l, struct pmm_interval *i) |
| int | remove_top_interval (struct pmm_interval_list *l) |
| int | remove_interval (struct pmm_interval_list *l, struct pmm_interval *i) |
| void | print_interval (const char *output, struct pmm_interval *i) |
| struct pmm_interval * | init_interval (int plane, int n_p, enum pmm_interval_type type, int *start, int *end) |
| void | free_interval_list (struct pmm_interval_list **il) |
| void | free_interval (struct pmm_interval **i) |
data structures for construction intervals
Construction intervals describe constructed and unconstructed regions of the model. They are essential in the model building algorithms.
Definition in file pmm_interval.h.
| typedef struct pmm_interval PMM_Interval |
structure describing the construction status of an interval of a model
| typedef struct pmm_interval_list PMM_Interval_List |
structure holding the interval list/stack
| typedef enum pmm_interval_type PMM_Interval_Type |
enumeration of possible model construction interval types
| enum pmm_interval_type |
enumeration of possible model construction interval types
Definition at line 35 of file pmm_interval.h.
| int add_bottom_interval | ( | struct pmm_interval_list * | l, |
| struct pmm_interval * | i | ||
| ) |
Add an interval to the bottom of the interval list
| l | pointer to the interval list |
| i | pointer to the interval |
Definition at line 343 of file pmm_interval.c.
| int add_top_interval | ( | struct pmm_interval_list * | l, |
| struct pmm_interval * | i | ||
| ) |
link the interval into interval list at the top/front
| l | pointer to interval list |
| i | pointer to interval to add to list |
Definition at line 311 of file pmm_interval.c.
| void free_interval | ( | struct pmm_interval ** | i | ) |
frees an interval structure and members it contains
| i | pointer to address of the interval |
Definition at line 188 of file pmm_interval.c.
| void free_interval_list | ( | struct pmm_interval_list ** | il | ) |
frees an interval list structure and members it contains
| il | pointer to address of the interval list |
Definition at line 63 of file pmm_interval.c.
|
read |
Initialize an interval with parameters passed.
Function maybe be used with _INFLECT and _BISECT intervals and with _POINT intervals if the start parameter is set to the point. May also be used to on initial IT_GBBP_CLIMB but not once climb_step is non-zero
| plane | plane that the interval belongs to (defunct) |
| n_p | number of parameters of the interval points |
| type | interval tyle |
| start | pointer to the start parameter array |
| end | pointer to the end parameter array |
Definition at line 147 of file pmm_interval.c.
| int isempty_interval_list | ( | struct pmm_interval_list * | l | ) |
determine if interval list is empty
| l | pointer to interval list |
Definition at line 89 of file pmm_interval.c.
|
read |
Allocate and return an interval structure with default, zero parameter values
Definition at line 105 of file pmm_interval.c.
|
read |
Allocate and return an interval list structure
Definition at line 44 of file pmm_interval.c.
| void print_interval | ( | const char * | output, |
| struct pmm_interval * | i | ||
| ) |
print interval
| output | output stream to print to |
| i | interval to print |
Definition at line 431 of file pmm_interval.c.
| void print_interval_list | ( | const char * | output, |
| struct pmm_interval_list * | l | ||
| ) |
print interval list
| output | output stream to print to |
| l | interval list to print |
Definition at line 374 of file pmm_interval.c.
|
read |
Definition at line 205 of file pmm_interval.c.
| int remove_interval | ( | struct pmm_interval_list * | l, |
| struct pmm_interval * | i | ||
| ) |
Removes and deletes an interval from an interval list
| l | pointer to interval list |
| i | pointer to the interval to remove |
Definition at line 271 of file pmm_interval.c.
| int remove_top_interval | ( | struct pmm_interval_list * | l | ) |
Removes and deletes the top interval on an interval list
| l | pointer to the interval list |
Definition at line 225 of file pmm_interval.c.
1.8.1.2