// ******************************************************
// *                                                    *
// *  bend.h (MP1)                                      *
// *                                                    *
// *  Interface for a class which models a              *
// *    bend-shaped tubing piece                        *
// *                                                    *
// *  Written 28 Jan 1999 by Jason Zych                 *
// *                                                    *
// ******************************************************


class Bend
{
public:
   
   // Bend
   //    - default constructor
   //    - initializes object to default values
   Bend(); 


   // OpenEntrance
   //    - parameters : enterNum - the number of the entrance
   //                     we wish to open
   //    - if enterNum is a legal entrance number, open the 
   //        entrance; otherwise, say it is illegal and return
   void OpenEntrance(int enterNum);


   // CloseEntrance
   //    - parameters : enterNum - the number of the entrance
   //                     we wish to close 
   //    - if enterNum is a legal entrance number, close the 
   //        entrance; otherwise, say it is illegal and return
   void CloseEntrance(int enterNum);


   // Imprint
   //    - parameters : picArray - array to which we write the appropriate
   //                       symbols to represent this tubing type 
   //                 : rLoc - row Coord of this object in placement array
   //                 : cLoc - column Coord of this object in placement array 
   //    - writes the character group which represents this type to
   //        the appropriate location in the picture array 
   void Imprint(char picArray[9][9], int rLoc, int cLoc); 

 
   // Rotate
   //    - rotates object to next orientation point -- in 
   //       this case, 90 degrees counter-clockwise. 
   void Rotate(); 


   void Print();

private:

   char drawArray[3][3];
   int entrance[2];
   int orientation; 

};


