// file: cylinderComposition.h // CylinderComposition class derived from class CircleComposition // adds private height to radius and [x,y] coordinates of base class #ifndef CYLINDERCOMPOSITION_H #define CYLINDERCOMPOSITION_H #include "circleComposition.h" // CircleComposition class definition class CylinderComposition { public: // default constructor CylinderComposition( double = 0, double = 0, double = 0.0, double = 0.0 ); //center member of type Point setter and getter void setX( double xValue); // set x in coordinate pair double getX() const; // return x from coordinate pair void setY( double yValue); // set y in coordinate pair double getY() const; // return y from coordinate pair //base member of type CircleComposition setter and getter void setRadius( double ); // set radius double getRadius() const; // return radius double getDiameter() const; // return diameter double getCircumference() const; // return circumference double getBaseArea() const; // return area of cylinder base //new setter and getter void setHeight( double ); // set CylinderComposition's height double getHeight() const; // return CylinderComposition's height double getArea() const; // return CylinderComposition's area double getVolume() const; // return CylinderComposition's volume void print() const; // output CylinderComposition private: double height; // CylinderComposition's height CircleComposition base; //base of CylinderComposition of type CircleComposition }; // end class CylinderComposition #endif /* to complement the example from Chapter 9, Deitel & Deitel: C++ How to Program. Fourth edition. * Prentice Hall, 2003. */