FRED
Manager.h
00001 /*
00002  Copyright 2009 by the University of Pittsburgh
00003  Licensed under the Academic Free License version 3.0
00004  See the file "LICENSE" for more information
00005  */
00006 
00007 //
00008 //
00009 // File: Manager.h
00010 //
00011 
00012 #ifndef _FRED_MANAGER_H
00013 #define _FRED_MANAGER_H
00014 
00015 #include <iostream>
00016 #include <vector>
00017 
00018 class Policy;
00019 class Population;
00020 class Person;
00021 class Person;
00022 class Decision;
00023 
00024 using namespace std;
00025 
00032 class Manager{
00033 
00034 protected:
00035   vector <Policy * > policies;   // vector to hold the policies this manager can apply
00036   vector < int > results;        // DEPRICATE holds the results of the policies
00037   Population *pop;               // Population in which this manager is tied to
00038   int current_policy;            // The current policy this manager is using
00039   
00040 public:
00041 
00045   Manager();
00046 
00050   Manager(Population *_pop);
00051   ~Manager();
00052 
00062   virtual int poll_manager(Person* p, int disease, int day); //member to allow someone to see if they fit the current policy
00063   
00064   // Parameters
00068   Population* get_population() const { return pop;}
00069 
00073   int get_current_policy() const { return current_policy; } 
00074   
00075   //Utility Members
00081   virtual void update(int day) { };
00082 
00086   virtual void reset() { };
00087 
00091   virtual void print() { };
00092   
00093 };
00094 
00095 #endif
 All Classes Functions