/*----
  header file for class: ColorPoint

  a ColorPoint represents a point in a 2-dimensional
      coordinate space that has a color

  by: Sharon Tuttle
  last modified: 2022-11-08 [note: ColorPoint.cpp NOT YET COMPLETE]
----*/

#ifndef COLORPOINT_H
#define COLORPOINT_H

#include <string>
#include "Point.h"
using namespace std;

class ColorPoint: public Point
{
    public:    
        // constructors

        ColorPoint();
        ColorPoint(double init_x, double init_y,
                   string init_color);

        // overloaded == operator

        bool operator==(const ColorPoint& rhs);

        // accessors

        string get_color() const;

        // mutators

        void set_color(string new_color);

        // these happen to be redefined versions of the
        //    inherited display and to_string methods

        void display() const;

        string to_string() const;

    private:
        string color;
        
};

#endif