package create;

import resources.instructor.Instructor;
import resources.room.Room;
import admin.DayPattern;
import admin.TimeDuration;
import resources.course.Course;

/**
 * The object class Section has all the fields needed to build a university
 * section of a course. A Section object is made up of an Instructor, Room,
 * Course, TimeDuration, id, capacity, and DayPatten.
 * 
 * @author chasedreszer
 * 
 */
public abstract class Section {
   public Instructor instructor;
   public Room room;
   public Course course;
   public TimeDuration time;
   public int sectionNumber;
   public int classNumber;
   public DayPattern pattern;

   /**
    * Constructs a new section from the given instructor, room, course, 
    * time, capacity, and pattern.
    * 
    */ 
   public abstract Section generateSection(Instructor instructor,
                                    Room room,
                                    Course course,
                                    TimeDuration time,
                                    int classNumber,
                                    int sectionNumber,
                                    int capacity,
                                    DayPattern pattern);
  
}