#ifndef _SYNCHPROBS_H_ #define _SYNCHPROBS_H_ /* enumerated type, for the road intersection problem */ enum Directions { north = 0, east = 1, south = 2, west = 3 }; typedef enum Directions Direction; /* student-implemented functions for the road intersection problem */ void intersection_sync_init(void); void intersection_sync_cleanup(void); void intersection_before_entry(Direction origin, Direction destination); void intersection_after_exit(Direction origin, Direction destination); /* student-implemented functions for the cat/mouse problem */ void cat_before_eating(unsigned int bowl); void cat_after_eating(unsigned int bowl); void mouse_before_eating(unsigned int bowl); void mouse_after_eating(unsigned int bowl); void catmouse_sync_init(int bowls); void catmouse_sync_cleanup(int bowls); void print_state_on(void); void print_state_off(void); #endif /* _SYNCHPROBS_H_ */