diff options
Diffstat (limited to 'position_stack.h')
-rw-r--r-- | position_stack.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/position_stack.h b/position_stack.h new file mode 100644 index 0000000..fe93e8c --- /dev/null +++ b/position_stack.h @@ -0,0 +1,28 @@ +#ifndef POSITION_STACK_H +#define POSITION_STACK_H + +#define STACK_ERR_OVERFLOW 0xFFF01 +#define STACK_ERR_UNDERFLOW 0xFFF02 + +struct Position +{ + int x; + int y; +}; + +struct PositionStack +{ + int max_size; + int top; + struct Position *items; +}; + +struct PositionStack *create_pos_stack(int capacity); + +void pos_stack_push(struct PositionStack *stack_pt, struct Position pos); + +struct Position pos_stack_peek(struct PositionStack *stack_pt); + +struct Position pos_stack_pop(struct PositionStack *stack_pt); + +#endif
\ No newline at end of file |