TABLEMODEL

List of Classes and Methods Implemented so far:
Ball class:
    Ball();  // constructor
    virtual ~Ball(); / destructor
     int IsStripe(char *); // returns 1 if specified ball is a stripe, 0 otherwise
     BallState * State(char *); // returns a state object for the specified ball
     Image * SampleOf(char *); // returns a sample image of the ball
                                                // requested
     COLOR ColorOf(char *); // returns the color of the ball with specified
                                                // if ball unknown, returns NULL
 BallState class:
     BallState(); // constructor
     BallState(char *); // constructor - sets label
     virtual ~BallState(); // destructor
     char * GetLabel(void);  // returns label of ball
                                         // sets <name of function> data member
                                        // setting x or y marks ball as on table when set
     void SetX(float);
     void SetY(float);
     void SetMoveX(float);
     void SetMoveY(float);
     // returns <name of function> data member
     // if ball not on table, return NULL
         float GetX(void);
         float GetY(void);
         float GetMoveX(void);
         float GetMoveY(void);
         int OffTable(void);  // returns 1 if ball is not on table
    // returns 0 if ball on table
         void SetOffTable(void);  // marks the ball as being off the table

Table class:
    Table(); // constructor
     virtual ~Table(); // destructor
     // all methods return NaN (if float), NULL (if pointer) or -1 (if int) if requested ball is not in use
     // all methods return 1 for success if int specified for return value
     BallState * State(char *); // returns the current state of the ball
                                            // requested
     // sets same as BallState class
     int SetX(char *, float);
     int SetY(char *, float);
     int SetMoveX(char *, float);
     int SetMoveY(char *, float);
     // marks specified ball as being off the table
     int SetOffTable(char *);
     // returns same as BallState class
    float GetX(char *);
    float GetY(char *);
    float GetMoveX(char *);
    float GetMoveY(char *);
    int OffTable(char *); // returns 1 if ball is not on table
                                    // returns 0 if ball on table