00001 #ifndef COMMISSION_WORKER_CLASS_HEADER_INCLUDED 00002 #define COMMISSION_WORKER_CLASS_HEADER_INCLUDED 00003 00004 #include "itemly.h" 00005 #include "weekly.h" 00006 #include <iostream> 00007 00008 class CommissionWorker : public WeeklyWorker, public ItemlyWorker<long> { 00009 00010 public: 00011 CommissionWorker(const char first[] = "", const char last[] = "", 00012 double sal_per_week = 0.0, 00013 double commission = 0.0, long quant_sold = 0); 00014 CommissionWorker(const CommissionWorker & worker); 00015 virtual ~CommissionWorker(); 00016 00017 CommissionWorker & operator = (const CommissionWorker & worker); 00018 00019 void set_commission(double commission); 00020 00021 virtual double earnings(void) const; 00022 virtual void print(std::ostream & out) const; 00023 }; 00024 00025 #endif