OpenStudio:model
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Related Functions | List of all members
openstudio::model::Construction Class Reference

#include <Construction.hpp>

+ Inheritance diagram for openstudio::model::Construction:

Public Member Functions

Construction reverseConstruction () const
 Searches the model for a layered construction with layers which are the reverse of this one. More...
 
Constructors and Destructors
 Construction (const Model &model)
 
 Construction (const std::vector< OpaqueMaterial > &opaqueMaterials)
 
 Construction (const std::vector< FenestrationMaterial > &fenestrationMaterials)
 
 Construction (const ModelPartitionMaterial &modelPartitionMaterial)
 
virtual ~Construction ()
 
- Public Member Functions inherited from openstudio::model::LayeredConstruction
virtual ~LayeredConstruction ()
 
std::vector< Materiallayers () const
 Returns the material layers that make up this construction. More...
 
Material getLayer (unsigned layerIndex) const
 Get the Material at layerIndex, where layerIndex is between 0 and numLayers() - 1. More...
 
bool eraseLayer (unsigned layerIndex)
 Erases the Material at layerIndex, if possible. More...
 
bool insertLayer (unsigned layerIndex, const Material &material)
 Insert opaqueMaterial at layerIndex, if possible. More...
 
bool setLayer (unsigned layerIndex, const Material &material)
 Set the layer at layerIndex to opaqueMaterial, if possible. More...
 
bool setLayers (const std::vector< Material > &materials)
 Set the construction to use opaqueMaterials as its layers, if layersAreValid(opaqueMaterials). More...
 
bool setLayer (const ModelPartitionMaterial &modelPartitionMaterial)
 Sets the construction to use modelPartitionMaterial. More...
 
bool isSymmetric () const
 Returns true if this is a symmetric layered construction. More...
 
bool equalLayers (const LayeredConstruction &other) const
 Returns true if this construction has the same layers as other one. More...
 
bool reverseEqualLayers (const LayeredConstruction &other) const
 Returns true if this construction has the same layers but in reverse order as other one. More...
 
std::vector< unsigned > nullLayers () const
 Returns layer indices that do not actually point to a Material. More...
 
unsigned numLayers () const
 Returns the number of non-null layers in this construction. More...
 
std::vector< unsigned > getLayerIndices (const Material &material) const
 Returns the indices from which this construction points to material. More...
 
boost::optional< OpaqueMaterialinsulation () const
 Returns the layer designated as insulation, if such a designation has been made. More...
 
bool setInsulation (const OpaqueMaterial &insulationLayer)
 Notes that insulationLayer is the perturbable insulation layer. More...
 
void resetInsulation ()
 Removes any existing insulation layer designations. More...
 
void ensureUniqueLayers ()
 Ensures that all materials in this construction are used by this construction only. More...
 
- Public Member Functions inherited from openstudio::model::ConstructionBase
boost::optional< double > exteriorVisibleAbsorbtance () const
 
boost::optional< double > exteriorVisibleAbsorptance () const
 Get the visible absorptance of the exterior side of this construction (dimensionless). More...
 
double getNetArea () const
 Returns the sum of the surface area of all planar surfaces that use this construction (m^2). More...
 
boost::optional< double > heatCapacity () const
 Get the heat capacity of this construction (J/m^2*K). More...
 
boost::optional< double > interiorVisibleAbsorbtance () const
 
boost::optional< double > interiorVisibleAbsorptance () const
 Get the visible absorptance of the interior side of this construction (dimensionless). More...
 
bool isFenestration () const
 
bool isGreenRoof () const
 Returns true if the construction has RoofVegetation as the outer layer. More...
 
bool isModelPartition () const
 
bool isOpaque () const
 
bool isSolarDiffusing () const
 Returns true if isFenestration and any material layers are solar diffusing. More...
 
boost::optional< RenderingColorrenderingColor () const
 Returns the rendering color. More...
 
void resetRenderingColor ()
 Resets the rendering color. More...
 
bool setConductance (double value)
 Set the conductance of this surface in W/m^2*K, if possible. More...
 
bool setConductance (double value, double filmResistance)
 Set the conductance of this surface in W/m^2*K, if possible. More...
 
bool setRenderingColor (const RenderingColor &renderingColor)
 Sets the rendering color. More...
 
bool setUFactor (double value)
 Set the u-factor of this surface in W/m^2*K, if possible. More...
 
bool setUFactor (double value, double filmResistance)
 Set the u-factor of this surface in W/m^2*K, if possible. More...
 
boost::optional< double > thermalConductance () const
 Get the thermal conductance of this construction (W/m^2*K). More...
 
boost::optional< double > thermalConductance (double filmResistance) const
 Get the thermal conductance of this construction (W/m^2*K). More...
 
boost::optional< double > uFactor () const
 Get the u-factor of this construction (W/m^2*K). More...
 
boost::optional< double > uFactor (double filmResistance) const
 Get the u-factor of this construction (W/m^2*K). More...
 
boost::optional< double > visibleTransmittance () const
 Get the visible transmittance of this construction (dimensionless). More...
 
virtual ~ConstructionBase ()
 
StandardsInformationConstruction standardsInformation () const
 Returns this construction's standards information, constructing a new object if necessary. More...
 
- Public Member Functions inherited from openstudio::model::ResourceObject
unsigned directUseCount (bool excludeChildren=false) const
 Returns the number of objects that use this resource directly. More...
 
unsigned nonResourceObjectUseCount (bool excludeChildren=false) const
 Returns the number of non-ResourceObjects that use this resource either directly or indirectly. More...
 
virtual ~ResourceObject ()
 
- Public Member Functions inherited from openstudio::model::ParentObject
std::vector< IddObjectType > allowableChildTypes () const
 Returns a vector of allowable children types. More...
 
std::vector< ModelObjectchildren () const
 Return direct child objects in the Model. More...
 
virtual ~ParentObject ()
 
- Public Member Functions inherited from openstudio::model::ModelObject
virtual ~ModelObject ()
 
ModelObject clone () const
 Creates a deep copy of this object, placing it in this object's model(). More...
 
ModelObject clone (Model model) const
 Creates a deep copy of this object, placing it in model. More...
 
Component createComponent () const
 Method for creating sharable Model snippets. More...
 
Model model () const
 Returns the Model that contains this object. More...
 
boost::optional< ParentObjectparent () const
 Return this object's parent in the hierarchy, if it has one. More...
 
std::vector< ResourceObjectresources () const
 Get the resources directly used by this ModelObject. More...
 
template<typename T >
std::vector< T > getModelObjectSources () const
 Get all objects of type T that point to this object. More...
 
template<typename T >
std::vector< T > getModelObjectSources (IddObjectType iddObjectType) const
 Get all objects of type T that point to this object. More...
 
template<typename T >
boost::optional< T > getModelObjectTarget (unsigned index) const
 Get the object of type T pointed to by this object from field index. More...
 
template<typename T >
std::vector< T > getModelObjectTargets () const
 Get all objects of type T to which this object points. More...
 
const std::vector< std::string > & outputVariableNames () const
 Get all output variables names that could be associated with this object. More...
 
std::vector< OutputVariableoutputVariables () const
 Get all output variables associated with this object, must run simulation to generate data. More...
 
boost::optional
< openstudio::TimeSeries > 
getData (const OutputVariable &variable, const std::string &envPeriod) const
 Get data associated with this output variable and this object. More...
 
std::vector< LifeCycleCostlifeCycleCosts () const
 Returns the list of all LifeCycleCosts that refer to this object. More...
 
std::vector< IdfObject > removeLifeCycleCosts ()
 Removes all LifeCycleCosts that refer to this object. More...
 
IddObjectType iddObjectType () const
 This is a virtual function that will tell you the type of iddObject you are dealing with. More...
 
AdditionalProperties additionalProperties () const
 Returns this object's additional properties, constructing a new object if necessary. More...
 
bool hasAdditionalProperties () const
 Returns true if this object has additional properties. More...
 
std::vector< IdfObject > removeAdditionalProperties ()
 Removes all additional properties that refer to this object. More...
 
bool setParent (ParentObject &newParent)
 set the parent, child may have to call non-const methods on the parent More...
 
bool operator< (const ModelObject &right) const
 
bool operator== (const ModelObject &other) const
 equality test More...
 
bool operator!= (const ModelObject &other) const
 inequality test More...
 
std::vector< ScheduleTypeKeygetScheduleTypeKeys (const Schedule &schedule) const
 Return the ScheduleTypeKeys indicating how schedule is used in this object. More...
 
boost::optional< double > getAutosizedValue (std::string valueName, std::string unitString) const
 Gets the autosized component value from the sql file. More...
 
virtual std::vector
< EMSActuatorNames
emsActuatorNames () const
 Return the names of the available ems actuators. More...
 
virtual std::vector< std::string > emsInternalVariableNames () const
 Return the names of the available ems internal variables. More...
 
boost::optional< ModelObjectconnectedObject (unsigned port) const
 
boost::optional< unsigned > connectedObjectPort (unsigned port) const
 

Static Public Member Functions

Static Methods
static IddObjectType iddObjectType ()
 
- Static Public Member Functions inherited from openstudio::model::LayeredConstruction
static bool layersAreValid (const std::vector< Material > &materials)
 Returns true if materials defines a valid EnergyPlus construction. More...
 
static bool layersAreValid (const std::vector< OpaqueMaterial > &opaqueMaterials)
 
static bool layersAreValid (const std::vector< FenestrationMaterial > &fenestrationMaterials)
 

Related Functions

(Note that these are not member functions.)

typedef std::vector< ConstructionConstructionVector
 
typedef boost::optional
< Construction
OptionalConstruction
 

Additional Inherited Members

- Protected Types inherited from openstudio::model::ModelObject
typedef detail::ModelObject_Impl ImplType
 
- Protected Member Functions inherited from openstudio::model::ResourceObject
 ResourceObject (IddObjectType type, const Model &model)
 Constructs a new PlanarSurface object in the model. More...
 
- Protected Member Functions inherited from openstudio::model::ParentObject
 ParentObject (IddObjectType type, const Model &model)
 Constructs a new ParentObject object in the model. More...
 
- Protected Member Functions inherited from openstudio::model::ModelObject
 ModelObject (IddObjectType type, const Model &model, bool fastName=false)
 
 ModelObject (std::shared_ptr< detail::ModelObject_Impl > impl)
 

Detailed Description

Construction is a LayeredConstruction that wraps the EnergyPlus IDD object 'Construction'.

A Construction consists of a number of material layers, each of which should belong to the same base class: OpaqueMaterial, FenestrationMaterial, or ModelPartitionMaterial. In addition the layers must satisfy some restrictions in order to form a valid EnergyPlus construction, see the documentation for LayeredConstruction.

Constructor & Destructor Documentation

openstudio::model::Construction::Construction ( const Model model)
explicit
openstudio::model::Construction::Construction ( const std::vector< OpaqueMaterial > &  opaqueMaterials)
explicit
openstudio::model::Construction::Construction ( const std::vector< FenestrationMaterial > &  fenestrationMaterials)
explicit
openstudio::model::Construction::Construction ( const ModelPartitionMaterial modelPartitionMaterial)
explicit
virtual openstudio::model::Construction::~Construction ( )
inlinevirtual

Member Function Documentation

static IddObjectType openstudio::model::Construction::iddObjectType ( )
static
Construction openstudio::model::Construction::reverseConstruction ( ) const

Searches the model for a layered construction with layers which are the reverse of this one.

Returns that construction if found, creates one if not.

Friends And Related Function Documentation

typedef std::vector<Construction> ConstructionVector
related
typedef boost::optional<Construction> OptionalConstruction
related