/*//////
//
// pong.h
//
*/

#ifndef _PONG_H_
#define _PONG_H_

/* YES, and NO for clarity in function returns */
#define	YES	1
#define	NO	0

/* Error handling for fatal errors */
#define oops(errStr)  { perror(errStr); exit(1); }

#include        <unistd.h>
#include        <varargs.h>
#include	<curses.h>
#include	<stdio.h>
#include	<sys/time.h>
#include	<signal.h>


struct court  {int   left;
               int   top;
               int   right;
               int   bottom; };

#include        "alarmlib.h"
#include	"ball.h"
#include	"paddle.h"


/*
//     predefine all functions for smooth compile
*/     
void   set_up();
void   wrap_up();
void   update();
void   hideCursor();
void   drawCourt();
double getGravity();
void   hLine(int x, int y, int x2, char symbol);
void   vLine(int x, int y, int y2, char symbol);
double randomInt(int min, int max);
void   fatal(char *errStr);
int    getCourtRight();
int    getTopLimit();
int    getBottomLimit();
int    getLeftLimit();
int    getRightLimit();
int    getMidCourtX();
int    getMidCourtY();

#endif /* _PONG_H_ */
