/// <summary>
        /// Initializes a new instance of the <see cref="Room2DEnergyPropertiesAbridged" /> class.
        /// </summary>
        /// <param name="constructionSet">Name of a ConstructionSet to specify all constructions for the Room2D. If None, the Room2D will use the Story or Building construction_set or the Model global_construction_set. Any ConstructionSet assigned here will override those assigned to these objects..</param>
        /// <param name="programType">Name of a ProgramType to specify all schedules and loads for the Room2D. If None, the Room2D will have no loads or setpoints..</param>
        /// <param name="hvac">An optional identifier of a HVAC system (such as an IdealAirSystem) that specifies how the Room2D is conditioned. If None, it will be assumed that the Room2D is not conditioned..</param>
        /// <param name="windowVentControl">An optional VentilationControl object to dictate the opening of windows. If None, the windows will never open..</param>
        /// <param name="windowVentOpening">An optional VentilationOpening to specify the operable portion of all windows of the Room2D. If None, the windows will never open..</param>
        public Room2DEnergyPropertiesAbridged
        (
            // Required parameters
            string constructionSet = default, string programType = default, string hvac = default, VentilationControlAbridged windowVentControl = default, VentilationOpening windowVentOpening = default // Optional parameters
        ) : base()                                                                                                                                                                                        // BaseClass
        {
            this.ConstructionSet   = constructionSet;
            this.ProgramType       = programType;
            this.Hvac              = hvac;
            this.WindowVentControl = windowVentControl;
            this.WindowVentOpening = windowVentOpening;

            // Set non-required readonly properties with defaultValue
            this.Type = "Room2DEnergyPropertiesAbridged";
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="Room2DEnergyPropertiesAbridged" /> class.
        /// </summary>
        /// <param name="constructionSet">Name of a ConstructionSet to specify all constructions for the Room2D. If None, the Room2D will use the Story or Building construction_set or the Model global_construction_set. Any ConstructionSet assigned here will override those assigned to these objects..</param>
        /// <param name="programType">Name of a ProgramType to specify all schedules and loads for the Room2D. If None, the Room2D will have no loads or setpoints..</param>
        /// <param name="hvac">An optional identifier of a HVAC system (such as an IdealAirSystem) that specifies how the Room2D is conditioned. If None, it will be assumed that the Room2D is not conditioned..</param>
        /// <param name="shw">An optional identifier of a Service Hot Water (SHW) system that specifies how the hot water load of the Room is met. If None, the hot water load will be met with a generic system that only measures thermal loadand does not account for system efficiencies..</param>
        /// <param name="windowVentControl">An optional VentilationControl object to dictate the opening of windows. If None, the windows will never open..</param>
        /// <param name="windowVentOpening">An optional VentilationOpening to specify the operable portion of all windows of the Room2D. If None, the windows will never open..</param>
        /// <param name="processLoads">An optional list of of Process objects for process loads within the room. These can represent kilns, manufacturing equipment, and various industrial processes. They can also be used to represent wood burning fireplaces or certain pieces of equipment to be separated from the other end uses..</param>
        public Room2DEnergyPropertiesAbridged
        (
            // Required parameters
            string constructionSet = default, string programType = default, string hvac = default, string shw = default, VentilationControlAbridged windowVentControl = default, VentilationOpening windowVentOpening = default, List <ProcessAbridged> processLoads = default // Optional parameters
        ) : base()                                                                                                                                                                                                                                                             // BaseClass
        {
            this.ConstructionSet   = constructionSet;
            this.ProgramType       = programType;
            this.Hvac              = hvac;
            this.Shw               = shw;
            this.WindowVentControl = windowVentControl;
            this.WindowVentOpening = windowVentOpening;
            this.ProcessLoads      = processLoads;

            // Set non-required readonly properties with defaultValue
            this.Type = "Room2DEnergyPropertiesAbridged";

            // check if object is valid
            if (this.GetType() == typeof(Room2DEnergyPropertiesAbridged))
            {
                this.IsValid(throwException: true);
            }
        }