/*
 * course.cpp
 *
 * Implementation of the Registrar_DB class. See header file for 
 * function descriptions.
 *
 * Note to CS70 students: this is an incomplete source file.  You must
 * complete it as you feel appropriate.  Search for "ADD STUFF" to
 * find places you *MAY* need to change.
 *
 * Note that many comments are missing.  We have not provided "ADD
 * STUFF" hints for missing comments.
 */

#include "course.hpp"
#include "regdb.hpp" 
#include "student.hpp"

#include <iostream>
#include <string>
using namespace std;

Registrar_DB::Registrar_DB(
    int                 maxStudents,
    int                 maxCourses)
    : // ADD STUFF (PSEUDOCODE NOT NEEDED)
      numCourses_(0)
{
    // ADD PSEUDOCODE
}

Registrar_DB::~Registrar_DB()
{
    // ADD STUFF (PSEUDOCODE NOT NEEDED)
}

bool Registrar_DB::canAcceptStudents()  // True if room for more students
    const
{
    // ADD STUFF (PSEUDOCODE NOT NEEDED)
    return false;			// Dummy code as placeholder.	
}

bool Registrar_DB::canAcceptCourses()   // True if room for more courses
    const
{
    // ADD STUFF (PSEUDOCODE NOT NEEDED)
    return false;			// Dummy code as placeholder.	
}

bool Registrar_DB::newStudent(
    const string&       firstName,
    const string&       lastName,
    const string&       hairColor)
{
    // ADD PSEUDOCODE
    return false;			// Dummy code as placeholder.	
}

bool Registrar_DB::newCourse(
    const string&       department,
    int                 courseNumber,
    const string&       meetingTime,
    int                 maxEnrollment)
{
    // ADD PSEUDOCODE
    return false;			// Dummy code as placeholder.	
}

Student* Registrar_DB::findStudentByName(
    const string&       firstName,
    const string&       lastName)
    const
{
    // ADD PSEUDOCODE
    return NULL;			// Dummy code as placeholder.
}

Course* Registrar_DB::findCourseByName(
    const string&       department,
    int                 courseNumber)
    const
{
    // ADD PSEUDOCODE
    return NULL;			// Dummy code as placeholder.
}

ostream& Registrar_DB::showStudents(    // Display all students
    ostream&            out)
{
    // ADD STUFF (PSEUDOCODE NOT NEEDED)
    return out;
}

ostream& Registrar_DB::showCourses(             // Display all courses
    ostream&            out)
{
    // ADD STUFF (PSEUDOCODE NOT NEEDED)
    return out;
}


/* Junk to make emacs use the right C++ style when editing this code:
 *   Local Variables:
 *   c-file-style: "stroustrup"
 *   End:
 */
