123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /***************************************************************/
- /* */
- /* insert2Ha.c in ~/rsc.src/spread */
- /* */
- /* This routine creates a queue (linked list) of cell_ptr */
- /* data structures. It allocates memory for the cell to */
- /* be inserted, assigns given coordinates to the structure */
- /* attributes, then it insert the new cell into the list. */
- /* */
- /***************************************************************/
- #include <grass/gis.h>
- #include "cell_ptrHa.h"
- #include "local_proto.h"
- void
- insert2Ha(struct cell_ptrHa **front_cell,
- struct cell_ptrHa **rear_cell, float angle, int row, int col)
- {
- struct cell_ptrHa *temp_cell, *temp_cell2;
- temp_cell = (struct cell_ptrHa *)(G_malloc(sizeof(struct cell_ptrHa)));
- temp_cell->angle = angle;
- temp_cell->row = row;
- temp_cell->col = col;
- if (*front_cell == NULL) {
- *front_cell = temp_cell;
- *rear_cell = temp_cell;
- temp_cell->next = NULL;
- }
- else {
- temp_cell2 = *rear_cell;
- temp_cell2->next = temp_cell;
- *rear_cell = temp_cell;
- temp_cell->next = NULL;
- }
- return;
- }
- /**************** END OF FUNCTION "INSERT2HA" *********************/
|