/// <summary> /// Basic constructor /// </summary> /// <param name="parentControlUnit">Control unit the event is triggered, i.e. the unit the staff member enters or leaves</param> /// <param name="isEnter">Flag if the event is called for an entering or leaving staff member</param> /// <param name="staff">The staff member that is entering or leaving</param> /// <param name="del">Delegate resposnible for the staff movement</param> /// <param name="staffArea">Possible waiting area the staff members waits in after arrival</param> public EventControlUnitStaffEnterLeave(ControlUnit parentControlUnit, bool isEnter, EntityStaff staff, IDelegate del, EntityWaitingArea staffArea = null) : base(EventType.Standalone, parentControlUnit) { _isEnter = isEnter; _staff = staff; _incomingDelegate = del; _staffWaitingArea = staffArea; } // end of EventInpatientStaffEnterLeave
} // end of StructuralArea /// <summary> /// Basic constructor intializing all types of resources /// </summary> /// <param name="identifier">Identifier of structural area</param> /// <param name="waitingAreaPatients">List of waiting areas in the structural area to be used by patients</param> /// <param name="multiplePatientsTreatmentFacilities">Treatment facilities of type EntityMultiplePatientTreatmentFacility</param> /// <param name="treatmentFacilities">Treatment facilities that are not for multiple patients</param> /// <param name="staffWaitingRoom">Staff waiting area, currently only one allowed per structural area</param> public StructuralArea(string identifier, List <EntityWaitingArea> waitingAreaPatients, List <EntityMultiplePatientTreatmentFacility> multiplePatientsTreatmentFacilities, List <EntityTreatmentFacility> treatmentFacilities, EntityWaitingArea staffWaitingRoom) { _identifier = identifier; _waitingAreaPatients = waitingAreaPatients; _multiplePatientsTreatmentFacilities = multiplePatientsTreatmentFacilities; _treatmentFacilities = treatmentFacilities; _staffWaitingArea = staffWaitingRoom; } // end of StructuralArea
} // end of CreatePatient #endregion #region CreateWaitingRoom /// <summary> /// Creates a waiting room drawing object /// <param name="entity">Treatment facility entity</param> /// <returns>A drawing object visualizing a waiting room</returns> public DrawingObject CreateWaitingRoom(Entity entity) { EntityWaitingArea waitingArea = (EntityWaitingArea)entity; return(new DrawDynamicHoldingEntity(waitingArea, waitingArea.Position, waitingArea.Size, PersonSize, Colors.Gray)); } // end of CreatePatient