Skip to content

Instantly share code, notes, and snippets.

@CryZe
Created February 6, 2017 14:49
Show Gist options
  • Select an option

  • Save CryZe/d02198caf50be10fc27c05a93b253665 to your computer and use it in GitHub Desktop.

Select an option

Save CryZe/d02198caf50be10fc27c05a93b253665 to your computer and use it in GitHub Desktop.
#ifndef _LIVESPLIT_H_
#define _LIVESPLIT_H_
struct Segment_s;
typedef struct Segment_s const *SegmentConstRef;
typedef struct Segment_s *SegmentRef;
typedef struct Segment_s *Segment;
extern Segment Segment_new(char const *name);
struct SegmentList_s;
typedef struct SegmentList_s const *SegmentListConstRef;
typedef struct SegmentList_s *SegmentListRef;
typedef struct SegmentList_s *SegmentList;
extern SegmentList SegmentList_new(void);
extern void SegmentList_push(SegmentListRef self, Segment segment);
struct Run_s;
typedef struct Run_s const *RunConstRef;
typedef struct Run_s *RunRef;
typedef struct Run_s *Run;
extern Run Run_new(SegmentList segments);
extern void Run_set_game(RunRef self, char const *game);
extern void Run_set_category(RunRef self, char const *category);
struct Timer_s;
typedef struct Timer_s const *TimerConstRef;
typedef struct Timer_s *TimerRef;
typedef struct Timer_s *Timer;
extern Timer Timer_new(Run run);
extern void Timer_drop(Timer self);
extern void Timer_start(TimerRef self);
extern void Timer_split(TimerRef self);
extern void Timer_skip_split(TimerRef self);
extern void Timer_undo_split(TimerRef self);
extern void Timer_reset(TimerRef self, bool update_splits);
extern void Timer_pause(TimerRef self);
extern void Timer_print_debug(TimerConstRef self);
extern char const *Timer_save_run_as_lss(TimerConstRef self);
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment