////////////////////////////////////////////////////////////////////// // Project 2 for CS 1704 Spring 2004 // // Programmer: Michael Tuozzo // OS: Windows XP Professional // System: Mobile Pentium 4, 1.2/2.2 GHz, 512 MB Memory // Compiler: Visual C++ 6.0, Service Pack 4 // Last modified: February 18, 2004 // // Class Name - mmcontroller // Description - This class is a multimedia organizer class. It // maintains a list of students and a list of items // supports insertion, deletion, and printing of info // stored in the lists. // // Attributes: // enum entrystatus // struct studentry // student data // entrystatus status // struct mediaentry // multimedia data // entrystatus status // ifstream studentsin, mediain // ofstream output // studentry studentlist[] // mediaentry medialist[] // Behaviors: // mmcontroller() - default constructor // mmcontroller(const mmcontroller&) - copy constructor // void print_students() - print all students // void print_items() - print all items // void print(string) - print specified student // void quit() - quit program, print "quit" to output file // bool insert_student(student, bool) - add student to list // bool insert_item(multimedia, bool) - add item to list // bool delete_student(string) - remove student (and associated items) from list // student inputstudent(ifstream&) - input formatted student info from file // multimedia inputitem(ifstream&) - input formatted multimedia info from file // ~mmcontroller() - destructor // /////////////////////////////////////////////////////////////////////////////// #ifndef CONTROLLER_H #define CONTROLLER_H #define MAXBUF 100 #include #include #include #include #include #include #include "student.h" #include "multimedia.h" using namespace std; class mmcontroller{ private: enum entrystatus{ occupied, vacant }; struct studentry{ student data; entrystatus status; }; struct mediaentry{ multimedia data; entrystatus status; }; ifstream studentsin, mediain; ofstream output; studentry studentlist[MAXBUF]; mediaentry medialist[MAXBUF]; public: mmcontroller(); //default constructor mmcontroller(const mmcontroller &tocopy); //copy constructor //formatted output void print_students(); void print_items(); void print(string email); void quit(){output << "quit";} bool insert_student(student toinsert, bool print = true); bool insert_item(multimedia toinsert, bool print = true); bool delete_student(string email); bool inputstudent(ifstream &ifile, student &tempstudent); bool inputitem(ifstream &ifile, multimedia &tempmedia); ~mmcontroller(); //destructor }; #endif