diff --git a/src/examples/IfcParseExamples.cpp b/src/examples/IfcParseExamples.cpp index 2bdb84957f..3e729553a7 100644 --- a/src/examples/IfcParseExamples.cpp +++ b/src/examples/IfcParseExamples.cpp @@ -29,10 +29,11 @@ int main(int argc, char** argv) { } // Redirect the output (both progress and log) to stdout - Ifc::SetOutput(&std::cout,&std::cout); + Logger::SetOutput(&std::cout,&std::cout); // Parse the IFC file provided in argv[1] - if ( ! Ifc::Init(argv[1]) ) { + IfcParse::IfcFile file; + if ( ! file.Init(argv[1]) ) { std::cout << "Unable to parse .ifc file" << std::endl; return 1; } @@ -53,12 +54,7 @@ int main(int argc, char** argv) { // we need to cast them to IfcWindows. Since these properties // are optional we need to make sure the properties are // defined for the window in question before accessing them. - // - // Since we are accessing properties that represent a length - // measure we can multiply the value by Ifc::LengthUnit, which - // contains the ratio of the unit defined in the IfcUnitAssignment - // to the standard SI Unit, the meter. - IfcBuildingElement::list elements = Ifc::EntitiesByType(); + IfcBuildingElement::list elements = file.EntitiesByType(); std::cout << "Found " << elements->Size() << " elements in " << argv[1] << ":" << std::endl; @@ -71,8 +67,8 @@ int main(int argc, char** argv) { const IfcWindow::ptr window = reinterpret_pointer_cast(element); if ( window->hasOverallWidth() && window->hasOverallHeight() ) { - const float area = window->OverallWidth()*window->OverallHeight() * (Ifc::LengthUnit*Ifc::LengthUnit); - std::cout << "This window has an area of " << area << "m2" << std::endl; + const double area = window->OverallWidth()*window->OverallHeight(); + std::cout << "The area of this window is " << area << std::endl; } } diff --git a/src/ifcexpressparser/IfcExpressParser.py b/src/ifcexpressparser/IfcExpressParser.py index 436054b795..bae465920b 100644 --- a/src/ifcexpressparser/IfcExpressParser.py +++ b/src/ifcexpressparser/IfcExpressParser.py @@ -1,4 +1,4 @@ -header = """ +header = """ /******************************************************************************** * * * This file is part of IfcOpenShell. * @@ -103,7 +103,8 @@ argument_names_and_types = {} entity_map = {} # -# Since inherited arguments of Express entities are placed in sequence before the non-inherited once, we need to keep track of how many inherited arguments exist +# Since inherited arguments of Express entities are placed in sequence before the +# non-inherited ones, we need to keep track of how many inherited arguments exist # def argument_start(c): if c not in parent_relations: return 0 @@ -123,6 +124,19 @@ def parent_arguments(c): if not (c in parent_relations): break return [] +# +# Every constructor also initializes their parent class members, hence they +# need be stored as well. +# +def parent_arguments(c): + if c not in parent_relations: return [] + l = [] + while True: + c = parent_relations[c] + i += argument_count[c] if c in argument_count else 0 + if not (c in parent_relations): break + return [] + # # Several classes to generate code from Express types and entities # @@ -236,11 +250,12 @@ class Argument(object): def type_str(self): if self.type.is_select_list(): # This is extremely hackish indeed - return "IfcEntities" + return "optional" if self.optional else "IfcEntities" elif str(self.type) in entity_names: return "%(type)s*"%self.__dict__ else: - return "%(type)s::%(type)s"%self.__dict__ if self.is_enum() else self.type + t = "%(type)s::%(type)s"%self.__dict__ if self.is_enum() else self.type + return "optional<%s>"%t if self.optional else t class ArgumentList: def __init__(self,l): self.l = [Argument(a) for a in l] @@ -350,10 +365,21 @@ class Classdef: i = len(s) + 1 b = 0 for a in self.arguments.l: + is_enumeration = str(a.type) in enumerations + # boost::optional is not used for pointer types, because they are set to NULL using 0 + use_boost_optional = a.optional and str(a.type) not in entity_names + # boost::optional types need to be dereferenced before passing to the writable entity + dereference = "*" if use_boost_optional else "" generalize = "->generalize()" if (isinstance(a.type,ArrayType) and a.type.is_shared_ptr() and not a.type.is_select_list()) else "" if isinstance(a.type,BinaryType) or (isinstance(a.type,ArrayType) and isinstance(a.type.type,BinaryType)): continue - s.append("e->setArgument(%d,v%d_%s%s)"%(b+i-1,b+i,a.name,generalize)) + if is_enumeration: + impl = "e->setArgument(%d,%sv%d_%s,%s::ToString(%sv%d_%s))"%(b+i-1,dereference,b+i,a.name,str(a.type),dereference,b+i,a.name) + else: + impl = "e->setArgument(%d,(%sv%d_%s)%s)"%(b+i-1,dereference,b+i,a.name,generalize) + if use_boost_optional: + s.append("if (v%d_%s) { %s; } else { e->setArgument(%d); } "%(b+i,a.name,impl,b+i-1)) + else: s.append(impl) b += 1 return s#"; ".join(s) def __str__(self): @@ -384,7 +410,7 @@ class Classdef: "\nType::Enum %(class_name)s::type() const { return Type::%(class_name)s; }"+ "\nType::Enum %(class_name)s::Class() { return Type::%(class_name)s; }"+ "\n%(class_name)s::%(class_name)s(IfcAbstractEntityPtr e) { if (!is(Type::%(class_name)s)) throw IfcException(\"Unable to find find keyword in schema\"); entity = e; }"+ - ("\n%(class_name)s::%(class_name)s(%(constructor_args)s) { IfcWritableEntity* e = new IfcWritableEntity(Class()); %(constructor_implementation)s; entity = e; }" if len(self.constructor_args_list) else "") + ("\n%(class_name)s::%(class_name)s(%(constructor_args)s) { IfcWritableEntity* e = new IfcWritableEntity(Class()); %(constructor_implementation)s; entity = e; EntityBuffer::Add(this); }" if len(self.constructor_args_list) else "") )%self.__dict__)%self.__dict__ @@ -475,12 +501,15 @@ print >>h_file, """#ifndef %(schema_upper)s_H #include #include +#include + #include "../ifcparse/IfcUtil.h" #include "../ifcparse/IfcException.h" #include "../ifcparse/%(schema)senum.h" using namespace IfcUtil; using IfcParse::IfcException; +using boost::optional; #define RETURN_INVERSE(T) \\ IfcEntities e = entity->getInverse(T::Class()); \\ diff --git a/src/ifcgeom/IfcGeom.h b/src/ifcgeom/IfcGeom.h index 9c6b55a917..c750cdd0f2 100644 --- a/src/ifcgeom/IfcGeom.h +++ b/src/ifcgeom/IfcGeom.h @@ -47,16 +47,32 @@ namespace IfcGeom { // Tolerances and settings for various geometrical operations: enum GeomValue { // Specifies the deflection of the mesher + // Default: 0.001m / 1mm GV_DEFLECTION_TOLERANCE, // Specifies the tolerance of the wire builder, most notably for trimmed curves + // Defailt: 0.0001m / 0.1mm GV_WIRE_CREATION_TOLERANCE, // Specifies the minimal area of a face to be included in an IfcConnectedFaceset + // Default: 0.000001m 0.01cm2 GV_MINIMAL_FACE_AREA, // Specifies the treshold distance under which cartesian points are deemed equal + // Default: 0.00001m / 0.01mm GV_POINT_EQUALITY_TOLERANCE, // Specifies maximum number of faces for a shell to be sewed. Sewing shells // that consist of many faces is really detrimental for the performance. - GV_MAX_FACES_TO_SEW + // Default: 1000 + GV_MAX_FACES_TO_SEW, + // By default singular faces have no explicitly defined orientation, to + // force faces to be defined CounterClockWise, set this value greater than zero. + GV_FORCE_CCW_FACE_ORIENTATION, + // The length unit used the creation of TopoDS_Shapes, primarily affects the + // interpretation of IfcCartesianPoints and IfcVector magnitudes + // DefaultL 1.0 + GV_LENGTH_UNIT, + // The plane angle unit used for the creation of TopoDS_Shapes, primarily affects + // the interpretation of IfcParamaterValues of IfcTrimmedCurves + // Default: -1.0 (= not set, fist try degrees, then radians) + GV_PLANEANGLE_UNIT, }; bool convert_wire_to_face(const TopoDS_Wire& wire, TopoDS_Face& face); @@ -80,7 +96,7 @@ namespace IfcGeom { double face_area(const TopoDS_Face& f); void SetValue(GeomValue var, double value); double GetValue(GeomValue var); - + namespace Cache { void Purge(); void PurgeShapeCache(); diff --git a/src/ifcgeom/IfcGeomCurves.cpp b/src/ifcgeom/IfcGeomCurves.cpp index 443b734b49..37b2297b63 100644 --- a/src/ifcgeom/IfcGeomCurves.cpp +++ b/src/ifcgeom/IfcGeomCurves.cpp @@ -78,7 +78,7 @@ #include "../ifcgeom/IfcGeom.h" bool IfcGeom::convert(const Ifc2x3::IfcCircle::ptr l, Handle(Geom_Curve)& curve) { - const double r = l->Radius() * Ifc::LengthUnit; + const double r = l->Radius() * IfcGeom::GetValue(GV_LENGTH_UNIT); if ( r <= 0.0f ) { return false; } gp_Trsf trsf; Ifc2x3::IfcAxis2Placement placement = l->Position(); @@ -94,8 +94,8 @@ bool IfcGeom::convert(const Ifc2x3::IfcCircle::ptr l, Handle(Geom_Curve)& curve) return true; } bool IfcGeom::convert(const Ifc2x3::IfcEllipse::ptr l, Handle(Geom_Curve)& curve) { - double x = l->SemiAxis1() * Ifc::LengthUnit; - double y = l->SemiAxis2() * Ifc::LengthUnit; + double x = l->SemiAxis1() * IfcGeom::GetValue(GV_LENGTH_UNIT); + double y = l->SemiAxis2() * IfcGeom::GetValue(GV_LENGTH_UNIT); if ( x == 0.0f || y == 0.0f || y > x ) { return false; } gp_Trsf trsf; Ifc2x3::IfcAxis2Placement placement = l->Position(); diff --git a/src/ifcgeom/IfcGeomFaces.cpp b/src/ifcgeom/IfcGeomFaces.cpp index 1b7ac98cb6..7a206d7f96 100644 --- a/src/ifcgeom/IfcGeomFaces.cpp +++ b/src/ifcgeom/IfcGeomFaces.cpp @@ -74,6 +74,7 @@ #include #include +#include #include "../ifcgeom/IfcGeom.h" @@ -81,15 +82,15 @@ bool IfcGeom::convert(const Ifc2x3::IfcFace::ptr l, TopoDS_Face& face) { Ifc2x3::IfcFaceBound::list bounds = l->Bounds(); Ifc2x3::IfcFaceBound::it it = bounds->begin(); Ifc2x3::IfcLoop::ptr loop = (*it)->Bound(); - TopoDS_Wire wire; - if ( ! IfcGeom::convert_wire(loop,wire) ) return false; - BRepBuilderAPI_MakeFace mf (wire); + TopoDS_Wire outer_wire; + if ( ! IfcGeom::convert_wire(loop,outer_wire) ) return false; + BRepBuilderAPI_MakeFace mf (outer_wire); BRepBuilderAPI_FaceError er = mf.Error(); if ( er == BRepBuilderAPI_NotPlanar ) { ShapeFix_ShapeTolerance FTol; - FTol.SetTolerance(wire, 0.01, TopAbs_WIRE); + FTol.SetTolerance(outer_wire, 0.01, TopAbs_WIRE); mf.~BRepBuilderAPI_MakeFace(); - new (&mf) BRepBuilderAPI_MakeFace(wire); + new (&mf) BRepBuilderAPI_MakeFace(outer_wire); er = mf.Error(); } if ( er != BRepBuilderAPI_FaceDone ) return false; @@ -116,6 +117,65 @@ bool IfcGeom::convert(const Ifc2x3::IfcFace::ptr l, TopoDS_Face& face) { return false; } } + + if ( IfcGeom::GetValue(GV_FORCE_CCW_FACE_ORIENTATION)>0 ) { + // Check the orientation of the face by comparing the + // normal of the topological surface to the Newell's Method's + // normal. Newell's Method is used for the normal calculation + // as a simple edge cross product can give opposite results + // for a concave face boundary. + // Reference: Graphics Gems III p. 231 + BRepGProp_Face prop(face); + gp_Vec normal_direction; + gp_Pnt center; + double u1,u2,v1,v2; + prop.Bounds(u1,u2,v1,v2); + prop.Normal((u1+u2)/2.0,(v1+v2)/2.0,center,normal_direction); + gp_Dir face_normal1 = gp_Dir(normal_direction.XYZ()); + + double x = 0, y = 0, z = 0; + gp_Pnt current, previous, first; + int n = 0; + // Iterate over the vertices of the outer wire (discarding + // any potential holes) + for ( TopExp_Explorer exp(outer_wire,TopAbs_VERTEX);; exp.Next()) { + unsigned has_more = exp.More(); + if ( has_more ) { + const TopoDS_Vertex& v = TopoDS::Vertex(exp.Current()); + current = BRep_Tool::Pnt(v); + } else { + current = first; + } + if ( n ) { + const double& xn = previous.X(); + const double& yn = previous.Y(); + const double& zn = previous.Z(); + const double& xn1 = current.X(); + const double& yn1 = current.Y(); + const double& zn1 = current.Z(); + x += (yn-yn1)*(zn+zn1); + y += (xn+xn1)*(zn-zn1); + z += (xn-xn1)*(yn+yn1); + } else { + first = current; + } + if ( !has_more ) { + break; + } + previous = current; + ++n; + } + + // If Newell's normal does not point in the same direction + // as the topological face normal the face orientation is + // reversed + gp_Vec face_normal2(x,y,z); + if ( face_normal1.Dot(face_normal2) < 0 ) { + TopAbs_Orientation o = face.Orientation(); + face.Orientation(o == TopAbs_FORWARD ? TopAbs_REVERSED : TopAbs_FORWARD); + } + } + // It might be a good idea to globally discard faces // smaller than a certain treshold value. But for now // only when processing IfcConnectedFacesets the small @@ -145,11 +205,11 @@ bool IfcGeom::convert(const Ifc2x3::IfcArbitraryProfileDefWithVoids::ptr l, Topo return true; } bool IfcGeom::convert(const Ifc2x3::IfcRectangleProfileDef::ptr l, TopoDS_Face& face) { - const double x = l->XDim() / 2.0f * Ifc::LengthUnit; - const double y = l->YDim() / 2.0f * Ifc::LengthUnit; + const double x = l->XDim() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double y = l->YDim() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); if ( x == 0.0f || y == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } @@ -159,18 +219,18 @@ bool IfcGeom::convert(const Ifc2x3::IfcRectangleProfileDef::ptr l, TopoDS_Face& return IfcGeom::profile_helper(4,coords,0,0,0,trsf2d,face); } bool IfcGeom::convert(const Ifc2x3::IfcIShapeProfileDef::ptr l, TopoDS_Face& face) { - const double x = l->OverallWidth() / 2.0f * Ifc::LengthUnit; - const double y = l->OverallDepth() / 2.0f * Ifc::LengthUnit; - const double d1 = l->WebThickness() / 2.0f * Ifc::LengthUnit; - const double d2 = l->FlangeThickness() * Ifc::LengthUnit; + const double x = l->OverallWidth() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double y = l->OverallDepth() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double d1 = l->WebThickness() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double d2 = l->FlangeThickness() * IfcGeom::GetValue(GV_LENGTH_UNIT); bool doFillet = l->hasFilletRadius(); double f; if ( doFillet ) { - f = l->FilletRadius() * Ifc::LengthUnit; + f = l->FilletRadius() * IfcGeom::GetValue(GV_LENGTH_UNIT); } if ( x == 0.0f || y == 0.0f || d1 == 0.0f || d2 == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } @@ -183,19 +243,19 @@ bool IfcGeom::convert(const Ifc2x3::IfcIShapeProfileDef::ptr l, TopoDS_Face& fac return IfcGeom::profile_helper(12,coords,doFillet ? 4 : 0,fillets,radii,trsf2d,face); } bool IfcGeom::convert(const Ifc2x3::IfcCShapeProfileDef::ptr l, TopoDS_Face& face) { - const double x = l->Depth() / 2.0f * Ifc::LengthUnit; - const double y = l->Width() / 2.0f * Ifc::LengthUnit; - const double d1 = l->WallThickness() * Ifc::LengthUnit; - const double d2 = l->Girth() * Ifc::LengthUnit; + const double x = l->Depth() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double y = l->Width() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double d1 = l->WallThickness() * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double d2 = l->Girth() * IfcGeom::GetValue(GV_LENGTH_UNIT); bool doFillet = l->hasInternalFilletRadius(); double f1,f2; if ( doFillet ) { - f1 = l->InternalFilletRadius() * Ifc::LengthUnit; + f1 = l->InternalFilletRadius() * IfcGeom::GetValue(GV_LENGTH_UNIT); f2 = f1 + d1; } if ( x == 0.0f || y == 0.0f || d1 == 0.0f || d2 == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } @@ -208,21 +268,21 @@ bool IfcGeom::convert(const Ifc2x3::IfcCShapeProfileDef::ptr l, TopoDS_Face& fac return IfcGeom::profile_helper(12,coords,doFillet ? 8 : 0,fillets,radii,trsf2d,face); } bool IfcGeom::convert(const Ifc2x3::IfcLShapeProfileDef::ptr l, TopoDS_Face& face) { - const double y = l->Depth() / 2.0f * Ifc::LengthUnit; - const double x = l->Width() / 2.0f * Ifc::LengthUnit; - const double d = l->Thickness() * Ifc::LengthUnit; + const double y = l->Depth() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double x = l->Width() / 2.0f * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double d = l->Thickness() * IfcGeom::GetValue(GV_LENGTH_UNIT); bool doEdgeFillet = l->hasEdgeRadius(); bool doFillet = l->hasFilletRadius(); double f1 = 0.0f; double f2 = 0.0f; if (doFillet) { - f1 = l->FilletRadius() * Ifc::LengthUnit; + f1 = l->FilletRadius() * IfcGeom::GetValue(GV_LENGTH_UNIT); } if ( doEdgeFillet) { - f2 = l->EdgeRadius() * Ifc::LengthUnit; + f2 = l->EdgeRadius() * IfcGeom::GetValue(GV_LENGTH_UNIT); } if ( x == 0.0f || y == 0.0f || d == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } @@ -235,9 +295,9 @@ bool IfcGeom::convert(const Ifc2x3::IfcLShapeProfileDef::ptr l, TopoDS_Face& fac return IfcGeom::profile_helper(6,coords,doFillet ? 3 : 0,fillets,radii,trsf2d,face); } bool IfcGeom::convert(const Ifc2x3::IfcCircleProfileDef::ptr l, TopoDS_Face& face) { - const double r = l->Radius() * Ifc::LengthUnit; + const double r = l->Radius() * IfcGeom::GetValue(GV_LENGTH_UNIT); if ( r == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } @@ -252,11 +312,11 @@ bool IfcGeom::convert(const Ifc2x3::IfcCircleProfileDef::ptr l, TopoDS_Face& fac return IfcGeom::convert_wire_to_face(w,face); } bool IfcGeom::convert(const Ifc2x3::IfcCircleHollowProfileDef::ptr l, TopoDS_Face& face) { - const double r = l->Radius() * Ifc::LengthUnit; - const double t = l->WallThickness() * Ifc::LengthUnit; + const double r = l->Radius() * IfcGeom::GetValue(GV_LENGTH_UNIT); + const double t = l->WallThickness() * IfcGeom::GetValue(GV_LENGTH_UNIT); if ( r == 0.0f || t == 0.0f ) { - Ifc::LogMessage("Notice","Skipping zero sized profile:",l->entity); + Logger::Message(Logger::LOG_NOTICE,"Skipping zero sized profile:",l->entity); return false; } diff --git a/src/ifcgeom/IfcGeomFunctions.cpp b/src/ifcgeom/IfcGeomFunctions.cpp index 58e6b3223a..d727d02549 100644 --- a/src/ifcgeom/IfcGeomFunctions.cpp +++ b/src/ifcgeom/IfcGeomFunctions.cpp @@ -163,7 +163,7 @@ bool IfcGeom::convert_openings(const Ifc2x3::IfcProduct::ptr entity, const Ifc2x const gp_GTrsf& entity_shape_gtrsf = *(it3->first); TopoDS_Shape entity_shape; if ( entity_shape_gtrsf.Form() == gp_Other ) { - Ifc::LogMessage("Warning","Applying non uniform transformation to:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Applying non uniform transformation to:",entity->entity); entity_shape = BRepBuilderAPI_GTransform(entity_shape_unlocated,entity_shape_gtrsf,true).Shape(); } else { entity_shape = entity_shape_unlocated.Moved(entity_shape_gtrsf.Trsf()); @@ -175,17 +175,17 @@ bool IfcGeom::convert_openings(const Ifc2x3::IfcProduct::ptr entity, const Ifc2x const TopoDS_Shape& opening_shape_unlocated = IfcGeom::ensure_fit_for_subtraction(*(it4->second),opening_shape_solid); const gp_GTrsf& opening_shape_gtrsf = *(it4->first); if ( opening_shape_gtrsf.Form() == gp_Other ) { - Ifc::LogMessage("Warning","Applying non uniform transformation to opening of:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Applying non uniform transformation to opening of:",entity->entity); } const TopoDS_Shape& opening_shape = opening_shape_gtrsf.Form() == gp_Other ? BRepBuilderAPI_GTransform(opening_shape_unlocated,opening_shape_gtrsf,true).Shape() : opening_shape_unlocated.Moved(opening_shape_gtrsf.Trsf()); double opening_volume, original_shape_volume; - if ( Ifc::Verbosity > 1 ) { + if ( Logger::Verbosity() >= Logger::LOG_WARNING ) { opening_volume = shape_volume(opening_shape); if ( opening_volume <= ALMOST_ZERO ) - Ifc::LogMessage("Warning","Empty opening for:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Empty opening for:",entity->entity); original_shape_volume = shape_volume(entity_shape); } @@ -198,17 +198,17 @@ bool IfcGeom::convert_openings(const Ifc2x3::IfcProduct::ptr entity, const Ifc2x bool is_valid = analyser.IsValid() != 0; if ( is_valid ) { entity_shape = brep_cut; - if ( Ifc::Verbosity > 1 ) { + if ( Logger::Verbosity() >= Logger::LOG_WARNING ) { const double volume_after_subtraction = shape_volume(entity_shape); if ( ALMOST_THE_SAME(original_shape_volume,volume_after_subtraction) ) - Ifc::LogMessage("Warning","Subtraction yields unchanged volume:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Subtraction yields unchanged volume:",entity->entity); } } else { - Ifc::LogMessage("Error","Invalid result from subtraction:",entity->entity); + Logger::Message(Logger::LOG_ERROR,"Invalid result from subtraction:",entity->entity); } } else { - Ifc::LogMessage("Error","Failed to process subtraction:",entity->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to process subtraction:",entity->entity); } } @@ -274,7 +274,7 @@ bool IfcGeom::convert_openings_fast(const Ifc2x3::IfcProduct::ptr entity, const const gp_GTrsf& entity_shape_gtrsf = *(it3->first); TopoDS_Shape entity_shape; if ( entity_shape_gtrsf.Form() == gp_Other ) { - Ifc::LogMessage("Warning","Applying non uniform transformation to:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Applying non uniform transformation to:",entity->entity); entity_shape = BRepBuilderAPI_GTransform(entity_shape_unlocated,entity_shape_gtrsf,true).Shape(); } else { entity_shape = entity_shape_unlocated.Moved(entity_shape_gtrsf.Trsf()); @@ -295,7 +295,7 @@ bool IfcGeom::convert_openings_fast(const Ifc2x3::IfcProduct::ptr entity, const // Apparently processing the boolean operation failed or resulted in an invalid result // in which case the original shape without the subtractions is returned instead // we try convert the openings in the original way, one by one. - Ifc::LogMessage("Warning","Subtracting combined openings compound failed:",entity->entity); + Logger::Message(Logger::LOG_WARNING,"Subtracting combined openings compound failed:",entity->entity); return false; } @@ -429,7 +429,10 @@ static double deflection_tolerance = 0.001; static double wire_creation_tolerance = 0.0001; static double minimal_face_area = 0.000001; static double point_equality_tolerance = 0.00001; -static double max_faces_to_sew = 1000; +static double max_faces_to_sew = -1.0; +static double ifc_length_unit = 1.0; +static double ifc_planeangle_unit = -1.0; +static double force_ccw_face_orientation = -1.0; void IfcGeom::SetValue(GeomValue var, double value) { switch (var) { @@ -448,6 +451,15 @@ void IfcGeom::SetValue(GeomValue var, double value) { case GV_MAX_FACES_TO_SEW: max_faces_to_sew = value; break; + case GV_LENGTH_UNIT: + ifc_length_unit = value; + break; + case GV_PLANEANGLE_UNIT: + ifc_planeangle_unit = value; + break; + case GV_FORCE_CCW_FACE_ORIENTATION: + force_ccw_face_orientation = value; + break; default: assert(!"never reach here"); } @@ -465,6 +477,15 @@ double IfcGeom::GetValue(GeomValue var) { return point_equality_tolerance; case GV_MAX_FACES_TO_SEW: return max_faces_to_sew; + case GV_LENGTH_UNIT: + return ifc_length_unit; + break; + case GV_PLANEANGLE_UNIT: + return ifc_planeangle_unit; + break; + case GV_FORCE_CCW_FACE_ORIENTATION: + return force_ccw_face_orientation; + break; } assert(!"never reach here"); return 0; diff --git a/src/ifcgeom/IfcGeomHelpers.cpp b/src/ifcgeom/IfcGeomHelpers.cpp index acbcf1b363..a229c78957 100644 --- a/src/ifcgeom/IfcGeomHelpers.cpp +++ b/src/ifcgeom/IfcGeomHelpers.cpp @@ -91,9 +91,9 @@ bool IfcGeom::convert(const Ifc2x3::IfcCartesianPoint::ptr l, gp_Pnt& point) { IN_CACHE(IfcCartesianPoint,l,gp_Pnt,point) std::vector xyz = l->Coordinates(); point = gp_Pnt( - xyz.size() ? (xyz[0]*Ifc::LengthUnit) : 0.0f, - xyz.size() > 1 ? (xyz[1]*Ifc::LengthUnit) : 0.0f, - xyz.size() > 2 ? (xyz[2]*Ifc::LengthUnit) : 0.0f + xyz.size() ? (xyz[0]*IfcGeom::GetValue(GV_LENGTH_UNIT)) : 0.0f, + xyz.size() > 1 ? (xyz[1]*IfcGeom::GetValue(GV_LENGTH_UNIT)) : 0.0f, + xyz.size() > 2 ? (xyz[2]*IfcGeom::GetValue(GV_LENGTH_UNIT)) : 0.0f ); CACHE(IfcCartesianPoint,l,point) return true; @@ -113,7 +113,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcVector::ptr l, gp_Vec& v) { IN_CACHE(IfcVector,l,gp_Vec,v) gp_Dir d; IfcGeom::convert(l->Orientation(),d); - v = l->Magnitude() * Ifc::LengthUnit * d; + v = l->Magnitude() * IfcGeom::GetValue(GV_LENGTH_UNIT) * d; CACHE(IfcVector,l,v) return true; } diff --git a/src/ifcgeom/IfcGeomObjects.cpp b/src/ifcgeom/IfcGeomObjects.cpp index 49f3433a9a..f3d931a53a 100644 --- a/src/ifcgeom/IfcGeomObjects.cpp +++ b/src/ifcgeom/IfcGeomObjects.cpp @@ -51,9 +51,9 @@ bool convert_back_units = false; bool use_faster_booleans = false; int IfcGeomObjects::IfcMesh::addvert(const gp_XYZ& p) { - const float X = convert_back_units ? (float) (p.X() / Ifc::LengthUnit) : (float)p.X(); - const float Y = convert_back_units ? (float) (p.Y() / Ifc::LengthUnit) : (float)p.Y(); - const float Z = convert_back_units ? (float) (p.Z() / Ifc::LengthUnit) : (float)p.Z(); + const float X = convert_back_units ? (float) (p.X() / IfcGeom::GetValue(IfcGeom::GV_LENGTH_UNIT)) : (float)p.X(); + const float Y = convert_back_units ? (float) (p.Y() / IfcGeom::GetValue(IfcGeom::GV_LENGTH_UNIT)) : (float)p.Y(); + const float Z = convert_back_units ? (float) (p.Z() / IfcGeom::GetValue(IfcGeom::GV_LENGTH_UNIT)) : (float)p.Z(); int i = (int) verts.size() / 3; if ( weld_vertices ) { const VertKey key = VertKey(X,std::pair(Y,Z)); @@ -71,6 +71,8 @@ int IfcGeomObjects::IfcMesh::addvert(const gp_XYZ& p) { bool use_world_coords = false; bool use_brep_data = false; +static IfcParse::IfcFile* ifc_file = 0; + IfcGeomObjects::IfcMesh::IfcMesh(int i, const IfcGeom::ShapeList& shapes) { id = i; @@ -102,10 +104,10 @@ IfcGeomObjects::IfcMesh::IfcMesh(int i, const IfcGeom::ShapeList& shapes) { // Triangulate the shape try { - //BRepTools::Clean(s); + // BRepTools::Clean(s); BRepMesh::Mesh(s, IfcGeom::GetValue(IfcGeom::GV_DEFLECTION_TOLERANCE)); } catch(...) { - Ifc::LogMessage("Error","Failed to triangulate mesh:",Ifc::EntityById(i)->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to triangulate mesh:",ifc_file->EntityById(i)->entity); continue; } TopExp_Explorer exp; @@ -401,7 +403,7 @@ IfcGeomObjects::IfcGeomObject* _get() { IfcGeom::convert_openings(ifc_product,openings,shapes,trsf,opened_shapes); } } catch(...) { - Ifc::LogMessage("Error","Error processing openings for:",ifc_product->entity); + Logger::Message(Logger::LOG_ERROR,"Error processing openings for:",ifc_product->entity); } if ( use_world_coords ) { for ( IfcGeom::ShapeList::const_iterator it = opened_shapes.begin(); it != opened_shapes.end(); ++ it ) { @@ -452,7 +454,8 @@ bool IfcGeomObjects::Next() { } std::vector returned_objects; bool IfcGeomObjects::CleanUp() { - Ifc::Dispose(); + // TODO: Correctly implement destructor for IfcFile + delete ifc_file; IfcGeom::Cache::Purge(); for ( std::vector::const_iterator it = returned_objects.begin(); it != returned_objects.end(); @@ -465,7 +468,7 @@ bool IfcGeomObjects::CleanUp() { const IfcGeomObjects::IfcObject* IfcGeomObjects::GetObject(int id) { IfcObject* ifc_object = 0; try { - const IfcEntity& ifc_entity = Ifc::EntityById(id); + const IfcParse::IfcEntity& ifc_entity = ifc_file->EntityById(id); if ( ifc_entity->is(Ifc2x3::Type::IfcProduct) ) { Ifc2x3::IfcProduct::ptr ifc_product = reinterpret_pointer_cast(ifc_entity); int parent_id = -1; @@ -488,11 +491,93 @@ const IfcGeomObjects::IfcObject* IfcGeomObjects::GetObject(int id) { const IfcGeomObjects::IfcGeomObject* IfcGeomObjects::Get() { return current_geom_obj; } +double UnitPrefixToValue( Ifc2x3::IfcSIPrefix::IfcSIPrefix v ) { + if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_EXA ) return (double) 1e18; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_PETA ) return (double) 1e15; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_TERA ) return (double) 1e12; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_GIGA ) return (double) 1e9; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MEGA ) return (double) 1e6; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_KILO ) return (double) 1e3; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_HECTO ) return (double) 1e2; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECA ) return (double) 1; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECI ) return (double) 1e-1; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_CENTI ) return (double) 1e-2; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MILLI ) return (double) 1e-3; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MICRO ) return (double) 1e-6; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_NANO ) return (double) 1e-9; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_PICO ) return (double) 1e-12; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_FEMTO ) return (double) 1e-15; + else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_ATTO ) return (double) 1e-18; + else return 1.0f; +} + +void IfcGeomObjects::InitUnits() { + // Set default units, set length to meters, angles to undefined + IfcGeom::SetValue(IfcGeom::GV_LENGTH_UNIT,1.0); + IfcGeom::SetValue(IfcGeom::GV_PLANEANGLE_UNIT,-1.0); + + Ifc2x3::IfcUnitAssignment::list unit_assignments = ifc_file->EntitiesByType(); + IfcUtil::IfcAbstractSelect::list units = IfcUtil::IfcAbstractSelect::list(); + if ( unit_assignments->Size() ) { + Ifc2x3::IfcUnitAssignment::ptr unit_assignment = *unit_assignments->begin(); + units = unit_assignment->Units(); + } + if ( ! units ) { + // No units eh... Since tolerances and deflection are specified internally in meters + // we will try to find another indication of the model size. + Ifc2x3::IfcExtrudedAreaSolid::list extrusions = ifc_file->EntitiesByType(); + if ( ! extrusions->Size() ) return; + double max_height = -1.0f; + for ( Ifc2x3::IfcExtrudedAreaSolid::it it = extrusions->begin(); it != extrusions->end(); ++ it ) { + const double depth = (*it)->Depth(); + if ( depth > max_height ) max_height = depth; + } + if ( max_height > 100.0f ) IfcGeom::SetValue(IfcGeom::GV_LENGTH_UNIT,0.001); + return; + } + try { + for ( IfcUtil::IfcAbstractSelect::it it = units->begin(); it != units->end(); ++ it ) { + const IfcUtil::IfcAbstractSelect::ptr base = *it; + Ifc2x3::IfcSIUnit::ptr unit = Ifc2x3::IfcSIUnit::ptr(); + double value = 1.0f; + if ( base->is(Ifc2x3::Type::IfcConversionBasedUnit) ) { + const Ifc2x3::IfcConversionBasedUnit::ptr u = reinterpret_pointer_cast(base); + const Ifc2x3::IfcMeasureWithUnit::ptr u2 = u->ConversionFactor(); + Ifc2x3::IfcUnit u3 = u2->UnitComponent(); + if ( u3->is(Ifc2x3::Type::IfcSIUnit) ) { + unit = (Ifc2x3::IfcSIUnit*) u3; + } + Ifc2x3::IfcValue v = u2->ValueComponent(); + IfcUtil::IfcArgumentSelect* v2 = (IfcUtil::IfcArgumentSelect*) v; + const double f = *v2->wrappedValue(); + value *= f; + } else if ( base->is(Ifc2x3::Type::IfcSIUnit) ) { + unit = reinterpret_pointer_cast(base); + } + if ( unit ) { + if ( unit->hasPrefix() ) { + value *= UnitPrefixToValue(unit->Prefix()); + } + Ifc2x3::IfcUnitEnum::IfcUnitEnum type = unit->UnitType(); + if ( type == Ifc2x3::IfcUnitEnum::IfcUnit_LENGTHUNIT ) { + IfcGeom::SetValue(IfcGeom::GV_LENGTH_UNIT,value); + } else if ( type == Ifc2x3::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT ) { + IfcGeom::SetValue(IfcGeom::GV_PLANEANGLE_UNIT,value); + } + } + } + } catch ( IfcException ex ) { + Logger::Message(Logger::LOG_ERROR,ex.what()); + } +} + bool IfcGeomObjects::Init(const std::string fn) { return IfcGeomObjects::Init(fn, 0, 0); } bool _Init() { - shapereps = Ifc::EntitiesByType(); + IfcGeomObjects::InitUnits(); + + shapereps = ifc_file->EntitiesByType(); if ( ! shapereps ) return false; outer = shapereps->begin(); @@ -506,18 +591,21 @@ bool _Init() { return true; } bool IfcGeomObjects::Init(const std::string fn, std::ostream* log1, std::ostream* log2) { - Ifc::SetOutput(log1,log2); - if ( !Ifc::Init(fn) ) return false; + Logger::SetOutput(log1,log2); + ifc_file = new IfcParse::IfcFile(); + if ( !ifc_file->Init(fn) ) return false; return _Init(); } bool IfcGeomObjects::Init(std::istream& f, int len, std::ostream* log1, std::ostream* log2) { - Ifc::SetOutput(log1,log2); - if ( !Ifc::Init(f, len) ) return false; + Logger::SetOutput(log1,log2); + ifc_file = new IfcParse::IfcFile(); + if ( !ifc_file->Init(f, len) ) return false; return _Init(); } bool IfcGeomObjects::Init(void* data, int len) { - Ifc::SetOutput(0,0); - if ( !Ifc::Init(data, len) ) return false; + Logger::SetOutput(0,0); + ifc_file = new IfcParse::IfcFile(); + if ( !ifc_file->Init(data, len) ) return false; return _Init(); } void IfcGeomObjects::Settings(int setting, bool value) { @@ -538,7 +626,10 @@ void IfcGeomObjects::Settings(int setting, bool value) { use_faster_booleans = value; break; case SEW_SHELLS: - Ifc::SewShells = value; + IfcGeom::SetValue(IfcGeom::GV_MAX_FACES_TO_SEW,value ? 1000 : -1); + break; + case IfcGeomObjects::FORCE_CCW_FACE_ORIENTATION: + IfcGeom::SetValue(IfcGeom::GV_FORCE_CCW_FACE_ORIENTATION,value ? 1 : -1); break; } } @@ -546,5 +637,5 @@ int IfcGeomObjects::Progress() { return 100 * done / total; } std::string IfcGeomObjects::GetLog() { - return Ifc::GetLog(); + return Logger::GetLog(); } diff --git a/src/ifcgeom/IfcGeomObjects.h b/src/ifcgeom/IfcGeomObjects.h index 451ac9b0ae..623b174b4b 100644 --- a/src/ifcgeom/IfcGeomObjects.h +++ b/src/ifcgeom/IfcGeomObjects.h @@ -94,6 +94,9 @@ namespace IfcGeomObjects { // Specifies whether to compose IfcOpeningElements into a single compound // in order to speed up the processing of opening subtractions. const int FASTER_BOOLEANS = 6; + // By default singular faces have no explicitly defined orientation, to + // force faces to be defined CounterClockWise set this to true. + const int FORCE_CCW_FACE_ORIENTATION = 7; // End of settings enumeration. @@ -143,6 +146,7 @@ namespace IfcGeomObjects { IfcGeomObject(int my_id, int p_id, const std::string& n, const std::string& t, const std::string& g, const gp_Trsf& trsf, IfcMesh* m); }; + void InitUnits(); bool Init(const std::string fn); bool Init(void* data, int len); bool Init(const std::string fn, std::ostream* log1= 0, std::ostream* log2= 0); diff --git a/src/ifcgeom/IfcGeomShapes.cpp b/src/ifcgeom/IfcGeomShapes.cpp index d06a329828..dccb1a5147 100644 --- a/src/ifcgeom/IfcGeomShapes.cpp +++ b/src/ifcgeom/IfcGeomShapes.cpp @@ -81,7 +81,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcExtrudedAreaSolid::ptr l, TopoDS_Shape& shape) { TopoDS_Face face; if ( ! IfcGeom::convert_face(l->SweptArea(),face) ) return false; - const double height = l->Depth() * Ifc::LengthUnit; + const double height = l->Depth() * IfcGeom::GetValue(GV_LENGTH_UNIT); gp_Trsf trsf; IfcGeom::convert(l->Position(),trsf); @@ -158,11 +158,11 @@ bool IfcGeom::convert(const Ifc2x3::IfcBooleanClippingResult::ptr l, TopoDS_Shap const double first_operand_volume = shape_volume(s1); if ( first_operand_volume <= ALMOST_ZERO ) - Ifc::LogMessage("Warning","Empty solid for:",l->FirstOperand()->entity); + Logger::Message(Logger::LOG_WARNING,"Empty solid for:",l->FirstOperand()->entity); if ( !IfcGeom::convert_shape(l->SecondOperand(),s2) ) { shape = s1; - Ifc::LogMessage("Error","Failed to convert SecondOperand of:",l->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to convert SecondOperand of:",l->entity); return true; } @@ -176,7 +176,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcBooleanClippingResult::ptr l, TopoDS_Shap if ( ! is_halfspace ) { const double second_operand_volume = shape_volume(s2); if ( second_operand_volume <= ALMOST_ZERO ) - Ifc::LogMessage("Warning","Empty solid for:",operand2->entity); + Logger::Message(Logger::LOG_WARNING,"Empty solid for:",operand2->entity); } bool valid_cut = false; @@ -211,7 +211,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcBooleanClippingResult::ptr l, TopoDS_Shap if ( is_valid ) { shape = result; valid_cut = true; - Ifc::LogMessage("Warning","Slightly nudged the SecondOperand of:",l->entity); + Logger::Message(Logger::LOG_WARNING,"Slightly nudged the SecondOperand of:",l->entity); } } } @@ -281,9 +281,9 @@ bool IfcGeom::convert(const Ifc2x3::IfcBooleanClippingResult::ptr l, TopoDS_Shap if ( valid_cut ) { const double volume_after_subtraction = shape_volume(shape); if ( ALMOST_THE_SAME(first_operand_volume,volume_after_subtraction) ) - Ifc::LogMessage("Warning","Subtraction yields unchanged volume:",l->entity); + Logger::Message(Logger::LOG_WARNING,"Subtraction yields unchanged volume:",l->entity); } else { - Ifc::LogMessage("Error","Failed to process subtraction:",l->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to process subtraction:",l->entity); shape = s1; } @@ -294,7 +294,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcConnectedFaceSet::ptr l, TopoDS_Shape& sh Ifc2x3::IfcFace::list faces = l->CfsFaces(); bool facesAdded = false; const unsigned int num_faces = faces->Size(); - if ( Ifc::SewShells && num_faces < GetValue(GV_MAX_FACES_TO_SEW) ) { + if ( num_faces < GetValue(GV_MAX_FACES_TO_SEW) ) { BRepOffsetAPI_Sewing builder; builder.SetTolerance(GetValue(GV_POINT_EQUALITY_TOLERANCE)); builder.SetMaxTolerance(GetValue(GV_POINT_EQUALITY_TOLERANCE)); @@ -305,7 +305,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcConnectedFaceSet::ptr l, TopoDS_Shape& sh builder.Add(face); facesAdded = true; } else { - Ifc::LogMessage("Warning","Invalid face:",(*it)->entity); + Logger::Message(Logger::LOG_WARNING,"Invalid face:",(*it)->entity); } } if ( ! facesAdded ) return false; @@ -326,7 +326,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcConnectedFaceSet::ptr l, TopoDS_Shape& sh builder.Add(compound,face); facesAdded = true; } else { - Ifc::LogMessage("Warning","Invalid face:",(*it)->entity); + Logger::Message(Logger::LOG_WARNING,"Invalid face:",(*it)->entity); } } if ( ! facesAdded ) return false; diff --git a/src/ifcgeom/IfcGeomWires.cpp b/src/ifcgeom/IfcGeomWires.cpp index 692b7922ca..3850b8c9bc 100644 --- a/src/ifcgeom/IfcGeomWires.cpp +++ b/src/ifcgeom/IfcGeomWires.cpp @@ -83,62 +83,58 @@ #include "../ifcgeom/IfcGeom.h" bool IfcGeom::convert(const Ifc2x3::IfcCompositeCurve::ptr l, TopoDS_Wire& wire) { - if ( ! Ifc::hasPlaneAngleUnit ) { - Ifc::LogMessage("Warning","Creating a composite curve without unit information:",l->entity); - - // Temporarily pretend we do have unit information - Ifc::hasPlaneAngleUnit = true; + if ( IfcGeom::GetValue(GV_PLANEANGLE_UNIT)>0 ) { + Logger::Message(Logger::LOG_WARNING,"Creating a composite curve without unit information:",l->entity); - bool succes_radians = false; + // Temporarily pretend we do have unit information + IfcGeom::SetValue(GV_PLANEANGLE_UNIT,1.0); + + bool succes_radians = false; bool succes_degrees = false; bool use_radians = false; bool use_degrees = false; - - // First try radians - Ifc::PlaneAngleUnit = 1.0f; - TopoDS_Wire wire_radians, wire_degrees; + + // First try radians + TopoDS_Wire wire_radians, wire_degrees; try { succes_radians = IfcGeom::convert(l,wire_radians); } catch (...) {} - - // Now try degrees - Ifc::PlaneAngleUnit = 0.0174532925199433f; + + // Now try degrees + IfcGeom::SetValue(GV_PLANEANGLE_UNIT,0.0174532925199433); try { succes_degrees = IfcGeom::convert(l,wire_degrees); } catch (...) {} // Restore to unknown unit state - Ifc::PlaneAngleUnit = 1.0f; - Ifc::hasPlaneAngleUnit = false; + IfcGeom::SetValue(GV_PLANEANGLE_UNIT,-1.0); - if ( succes_degrees && ! succes_radians ) { + if ( succes_degrees && ! succes_radians ) { use_degrees = true; } else if ( succes_radians && ! succes_degrees ) { - use_radians = true; - } else if ( succes_radians && succes_degrees ) { - if ( wire_degrees.Closed() && ! wire_radians.Closed() ) { - use_degrees = true; - } else if ( wire_radians.Closed() && ! wire_degrees.Closed() ) { - use_radians = true; - } else { - // No heuristic left to prefer the one over the other, - // apparently both variants are equally succesful. - // The curve might be composed of only straight segments. - // Let's go with the wire created using radians as that - // at least is a SI unit. - use_radians = true; - } - } - - if ( use_radians ) { - Ifc::LogMessage("Notice","Used radians to create composite curve"); - wire = wire_radians; - } else if ( use_degrees ) { - Ifc::LogMessage("Notice","Used degrees to create composite curve"); - wire = wire_degrees; + use_radians = true; + } else if ( succes_radians && succes_degrees ) { + if ( wire_degrees.Closed() && ! wire_radians.Closed() ) { + use_degrees = true; + } else if ( wire_radians.Closed() && ! wire_degrees.Closed() ) { + use_radians = true; + } else { + // No heuristic left to prefer the one over the other, + // apparently both variants are equally succesful. + // The curve might be composed of only straight segments. + // Let's go with the wire created using radians as that + // at least is a SI unit. + use_radians = true; + } } - return succes_radians || succes_degrees; + if ( use_radians ) { + Logger::Message(Logger::LOG_NOTICE,"Used radians to create composite curve"); + wire = wire_radians; + } else if ( use_degrees ) { + Logger::Message(Logger::LOG_NOTICE,"Used degrees to create composite curve"); + wire = wire_degrees; + } } Ifc2x3::IfcCompositeCurveSegment::list segments = l->Segments(); BRepBuilderAPI_MakeWire w; @@ -147,7 +143,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcCompositeCurve::ptr l, TopoDS_Wire& wire) const Ifc2x3::IfcCurve::ptr curve = (*it)->ParentCurve(); TopoDS_Wire wire2; if ( ! IfcGeom::convert_wire(curve,wire2) ) { - Ifc::LogMessage("Error","Failed to convert curve:",curve->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to convert curve:",curve->entity); continue; } if ( ! (*it)->SameSense() ) wire2.Reverse(); @@ -166,7 +162,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcCompositeCurve::ptr l, TopoDS_Wire& wire) w.Add(wire2); //last_vertex = w.Vertex(); if ( w.Error() != BRepBuilderAPI_WireDone ) { - Ifc::LogMessage("Error","Failed to join curve segments:",l->entity); + Logger::Message(Logger::LOG_ERROR,"Failed to join curve segments:",l->entity); return false; } } @@ -176,7 +172,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcCompositeCurve::ptr l, TopoDS_Wire& wire) bool IfcGeom::convert(const Ifc2x3::IfcTrimmedCurve::ptr l, TopoDS_Wire& wire) { Ifc2x3::IfcCurve::ptr basis_curve = l->BasisCurve(); bool isConic = basis_curve->is(Ifc2x3::Type::IfcConic); - double parameterFactor = isConic ? Ifc::PlaneAngleUnit : Ifc::LengthUnit; + double parameterFactor = isConic ? IfcGeom::GetValue(GV_PLANEANGLE_UNIT) : IfcGeom::GetValue(GV_LENGTH_UNIT); Handle(Geom_Curve) curve; if ( ! IfcGeom::convert_curve(basis_curve,curve) ) return false; bool trim_cartesian = l->MasterRepresentation() == Ifc2x3::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; @@ -209,7 +205,7 @@ bool IfcGeom::convert(const Ifc2x3::IfcTrimmedCurve::ptr l, TopoDS_Wire& wire) { BRepBuilderAPI_EdgeError err = e.Error(); if ( err == BRepBuilderAPI_PointProjectionFailed ) { w.Add(BRepBuilderAPI_MakeEdge(sense_agreement ? pnt1 : pnt2,sense_agreement ? pnt2 : pnt1)); - Ifc::LogMessage("Warning","Point projection failed for:",l->entity); + Logger::Message(Logger::LOG_WARNING,"Point projection failed for:",l->entity); } } else { w.Add(e.Edge()); diff --git a/src/ifcgeom/IfcRegister.cpp b/src/ifcgeom/IfcRegister.cpp index 19c56127ca..07e2f63f67 100644 --- a/src/ifcgeom/IfcRegister.cpp +++ b/src/ifcgeom/IfcRegister.cpp @@ -33,7 +33,7 @@ using namespace IfcUtil; bool IfcGeom::convert_shapes(const IfcBaseClass* l, ShapeList& r) { #include "IfcRegisterConvertShapes.h" - Ifc::LogMessage("Error","No operation defined for:",l->entity); + Logger::Message(Logger::LOG_ERROR,"No operation defined for:",l->entity); return false; } bool IfcGeom::is_shape_collection(const IfcBaseClass* l) { @@ -45,21 +45,21 @@ const TopoDS_Shape* IfcGeom::convert_shape(const IfcBaseClass* l, TopoDS_Shape& std::map::const_iterator it = Cache::Shape.find(id); if ( it != Cache::Shape.end() ) { r = it->second; return &(it->second); } #include "IfcRegisterConvertShape.h" - Ifc::LogMessage("Error","No operation defined for:",l->entity); + Logger::Message(Logger::LOG_ERROR,"No operation defined for:",l->entity); return 0; } bool IfcGeom::convert_wire(const IfcBaseClass* l, TopoDS_Wire& r) { #include "IfcRegisterConvertWire.h" - Ifc::LogMessage("Error","No operation defined for:",l->entity); + Logger::Message(Logger::LOG_ERROR,"No operation defined for:",l->entity); return false; } bool IfcGeom::convert_face(const IfcBaseClass* l, TopoDS_Face& r) { #include "IfcRegisterConvertFace.h" - Ifc::LogMessage("Error","No operation defined for:",l->entity); + Logger::Message(Logger::LOG_ERROR,"No operation defined for:",l->entity); return false; } bool IfcGeom::convert_curve(const IfcBaseClass* l, Handle(Geom_Curve)& r) { #include "IfcRegisterConvertCurve.h" - Ifc::LogMessage("Error","No operation defined for:",l->entity); + Logger::Message(Logger::LOG_ERROR,"No operation defined for:",l->entity); return false; } \ No newline at end of file diff --git a/src/ifcgeom/IfcRegister.h b/src/ifcgeom/IfcRegister.h index 9d6149960a..0e1d064d07 100644 --- a/src/ifcgeom/IfcRegister.h +++ b/src/ifcgeom/IfcRegister.h @@ -38,6 +38,7 @@ #include #include +#include "../ifcparse/IfcUtil.h" #include "../ifcparse/IfcParse.h" using namespace Ifc2x3; diff --git a/src/ifcgeom/IfcRegisterConvertShape.h b/src/ifcgeom/IfcRegisterConvertShape.h index cc68abf227..c84f5fa19d 100644 --- a/src/ifcgeom/IfcRegisterConvertShape.h +++ b/src/ifcgeom/IfcRegisterConvertShape.h @@ -7,7 +7,7 @@ return &(Cache::Shape[id]); \ } \ } catch(...) { } \ - Ifc::LogMessage("Error","Failed to convert:",l->entity); \ + Logger::Message(Logger::LOG_ERROR,"Failed to convert:",l->entity); \ return false; \ } #include "IfcRegisterDef.h" diff --git a/src/ifcgeom/IfcRegisterConvertShapes.h b/src/ifcgeom/IfcRegisterConvertShapes.h index 0762609895..962cccb203 100644 --- a/src/ifcgeom/IfcRegisterConvertShapes.h +++ b/src/ifcgeom/IfcRegisterConvertShapes.h @@ -4,7 +4,7 @@ try { \ return IfcGeom::convert((T*)l,r); \ } catch (...) { } \ - Ifc::LogMessage("Error","Failed to convert:",l->entity); \ + Logger::Message(Logger::LOG_ERROR,"Failed to convert:",l->entity); \ return false; \ } #include "IfcRegisterDef.h" diff --git a/src/ifcparse/Ifc2x3.cpp b/src/ifcparse/Ifc2x3.cpp index 8d60c0d0c1..04b3efdce2 100644 --- a/src/ifcparse/Ifc2x3.cpp +++ b/src/ifcparse/Ifc2x3.cpp @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -4756,7 +4756,7 @@ bool Ifc2DCompositeCurve::is(Type::Enum v) const { return v == Type::Ifc2DCompos Type::Enum Ifc2DCompositeCurve::type() const { return Type::Ifc2DCompositeCurve; } Type::Enum Ifc2DCompositeCurve::Class() { return Type::Ifc2DCompositeCurve; } Ifc2DCompositeCurve::Ifc2DCompositeCurve(IfcAbstractEntityPtr e) { if (!is(Type::Ifc2DCompositeCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -Ifc2DCompositeCurve::Ifc2DCompositeCurve(SHARED_PTR< IfcTemplatedEntityList > v1_Segments, bool v2_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Segments->generalize()); e->setArgument(1,v2_SelfIntersect); entity = e; } +Ifc2DCompositeCurve::Ifc2DCompositeCurve(SHARED_PTR< IfcTemplatedEntityList > v1_Segments, bool v2_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Segments)->generalize()); e->setArgument(1,(v2_SelfIntersect)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcActionRequest IfcIdentifier IfcActionRequest::RequestID() { return *entity->getArgument(5); } void IfcActionRequest::setRequestID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -4764,7 +4764,7 @@ bool IfcActionRequest::is(Type::Enum v) const { return v == Type::IfcActionReque Type::Enum IfcActionRequest::type() const { return Type::IfcActionRequest; } Type::Enum IfcActionRequest::Class() { return Type::IfcActionRequest; } IfcActionRequest::IfcActionRequest(IfcAbstractEntityPtr e) { if (!is(Type::IfcActionRequest)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcActionRequest::IfcActionRequest(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_RequestID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_RequestID); entity = e; } +IfcActionRequest::IfcActionRequest(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_RequestID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_RequestID)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcActor IfcActorSelect IfcActor::TheActor() { return *entity->getArgument(5); } void IfcActor::setTheActor(IfcActorSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -4773,7 +4773,7 @@ bool IfcActor::is(Type::Enum v) const { return v == Type::IfcActor || IfcObject: Type::Enum IfcActor::type() const { return Type::IfcActor; } Type::Enum IfcActor::Class() { return Type::IfcActor; } IfcActor::IfcActor(IfcAbstractEntityPtr e) { if (!is(Type::IfcActor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcActor::IfcActor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_TheActor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TheActor); entity = e; } +IfcActor::IfcActor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcActorSelect v6_TheActor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_TheActor)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcActorRole IfcRoleEnum::IfcRoleEnum IfcActorRole::Role() { return IfcRoleEnum::FromString(*entity->getArgument(0)); } void IfcActorRole::setRole(IfcRoleEnum::IfcRoleEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcRoleEnum::ToString(v)); } @@ -4787,7 +4787,7 @@ bool IfcActorRole::is(Type::Enum v) const { return v == Type::IfcActorRole; } Type::Enum IfcActorRole::type() const { return Type::IfcActorRole; } Type::Enum IfcActorRole::Class() { return Type::IfcActorRole; } IfcActorRole::IfcActorRole(IfcAbstractEntityPtr e) { if (!is(Type::IfcActorRole)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcActorRole::IfcActorRole(IfcRoleEnum::IfcRoleEnum v1_Role, IfcLabel v2_UserDefinedRole, IfcText v3_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Role); e->setArgument(1,v2_UserDefinedRole); e->setArgument(2,v3_Description); entity = e; } +IfcActorRole::IfcActorRole(IfcRoleEnum::IfcRoleEnum v1_Role, optional v2_UserDefinedRole, optional v3_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Role,IfcRoleEnum::ToString(v1_Role)); if (v2_UserDefinedRole) { e->setArgument(1,(*v2_UserDefinedRole)); } else { e->setArgument(1); } ; if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcActuatorType IfcActuatorTypeEnum::IfcActuatorTypeEnum IfcActuatorType::PredefinedType() { return IfcActuatorTypeEnum::FromString(*entity->getArgument(9)); } void IfcActuatorType::setPredefinedType(IfcActuatorTypeEnum::IfcActuatorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcActuatorTypeEnum::ToString(v)); } @@ -4795,7 +4795,7 @@ bool IfcActuatorType::is(Type::Enum v) const { return v == Type::IfcActuatorType Type::Enum IfcActuatorType::type() const { return Type::IfcActuatorType; } Type::Enum IfcActuatorType::Class() { return Type::IfcActuatorType; } IfcActuatorType::IfcActuatorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcActuatorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcActuatorType::IfcActuatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcActuatorTypeEnum::IfcActuatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcActuatorType::IfcActuatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcActuatorTypeEnum::IfcActuatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcActuatorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAddress bool IfcAddress::hasPurpose() { return !entity->getArgument(0)->isNull(); } IfcAddressTypeEnum::IfcAddressTypeEnum IfcAddress::Purpose() { return IfcAddressTypeEnum::FromString(*entity->getArgument(0)); } @@ -4812,7 +4812,7 @@ bool IfcAddress::is(Type::Enum v) const { return v == Type::IfcAddress; } Type::Enum IfcAddress::type() const { return Type::IfcAddress; } Type::Enum IfcAddress::Class() { return Type::IfcAddress; } IfcAddress::IfcAddress(IfcAbstractEntityPtr e) { if (!is(Type::IfcAddress)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAddress::IfcAddress(IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Purpose); e->setArgument(1,v2_Description); e->setArgument(2,v3_UserDefinedPurpose); entity = e; } +IfcAddress::IfcAddress(optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Purpose) { e->setArgument(0,*v1_Purpose,IfcAddressTypeEnum::ToString(*v1_Purpose)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_UserDefinedPurpose) { e->setArgument(2,(*v3_UserDefinedPurpose)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAirTerminalBoxType IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum IfcAirTerminalBoxType::PredefinedType() { return IfcAirTerminalBoxTypeEnum::FromString(*entity->getArgument(9)); } void IfcAirTerminalBoxType::setPredefinedType(IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcAirTerminalBoxTypeEnum::ToString(v)); } @@ -4820,7 +4820,7 @@ bool IfcAirTerminalBoxType::is(Type::Enum v) const { return v == Type::IfcAirTer Type::Enum IfcAirTerminalBoxType::type() const { return Type::IfcAirTerminalBoxType; } Type::Enum IfcAirTerminalBoxType::Class() { return Type::IfcAirTerminalBoxType; } IfcAirTerminalBoxType::IfcAirTerminalBoxType(IfcAbstractEntityPtr e) { if (!is(Type::IfcAirTerminalBoxType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAirTerminalBoxType::IfcAirTerminalBoxType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcAirTerminalBoxType::IfcAirTerminalBoxType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcAirTerminalBoxTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAirTerminalType IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum IfcAirTerminalType::PredefinedType() { return IfcAirTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcAirTerminalType::setPredefinedType(IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcAirTerminalTypeEnum::ToString(v)); } @@ -4828,7 +4828,7 @@ bool IfcAirTerminalType::is(Type::Enum v) const { return v == Type::IfcAirTermin Type::Enum IfcAirTerminalType::type() const { return Type::IfcAirTerminalType; } Type::Enum IfcAirTerminalType::Class() { return Type::IfcAirTerminalType; } IfcAirTerminalType::IfcAirTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcAirTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAirTerminalType::IfcAirTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcAirTerminalType::IfcAirTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcAirTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAirToAirHeatRecoveryType IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum IfcAirToAirHeatRecoveryType::PredefinedType() { return IfcAirToAirHeatRecoveryTypeEnum::FromString(*entity->getArgument(9)); } void IfcAirToAirHeatRecoveryType::setPredefinedType(IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcAirToAirHeatRecoveryTypeEnum::ToString(v)); } @@ -4836,7 +4836,7 @@ bool IfcAirToAirHeatRecoveryType::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcAirToAirHeatRecoveryType::type() const { return Type::IfcAirToAirHeatRecoveryType; } Type::Enum IfcAirToAirHeatRecoveryType::Class() { return Type::IfcAirToAirHeatRecoveryType; } IfcAirToAirHeatRecoveryType::IfcAirToAirHeatRecoveryType(IfcAbstractEntityPtr e) { if (!is(Type::IfcAirToAirHeatRecoveryType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAirToAirHeatRecoveryType::IfcAirToAirHeatRecoveryType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcAirToAirHeatRecoveryType::IfcAirToAirHeatRecoveryType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcAirToAirHeatRecoveryTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAlarmType IfcAlarmTypeEnum::IfcAlarmTypeEnum IfcAlarmType::PredefinedType() { return IfcAlarmTypeEnum::FromString(*entity->getArgument(9)); } void IfcAlarmType::setPredefinedType(IfcAlarmTypeEnum::IfcAlarmTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcAlarmTypeEnum::ToString(v)); } @@ -4844,26 +4844,26 @@ bool IfcAlarmType::is(Type::Enum v) const { return v == Type::IfcAlarmType || If Type::Enum IfcAlarmType::type() const { return Type::IfcAlarmType; } Type::Enum IfcAlarmType::Class() { return Type::IfcAlarmType; } IfcAlarmType::IfcAlarmType(IfcAbstractEntityPtr e) { if (!is(Type::IfcAlarmType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAlarmType::IfcAlarmType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAlarmTypeEnum::IfcAlarmTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcAlarmType::IfcAlarmType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAlarmTypeEnum::IfcAlarmTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcAlarmTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAngularDimension bool IfcAngularDimension::is(Type::Enum v) const { return v == Type::IfcAngularDimension || IfcDimensionCurveDirectedCallout::is(v); } Type::Enum IfcAngularDimension::type() const { return Type::IfcAngularDimension; } Type::Enum IfcAngularDimension::Class() { return Type::IfcAngularDimension; } IfcAngularDimension::IfcAngularDimension(IfcAbstractEntityPtr e) { if (!is(Type::IfcAngularDimension)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAngularDimension::IfcAngularDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcAngularDimension::IfcAngularDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotation IfcRelContainedInSpatialStructure::list IfcAnnotation::ContainedInStructure() { RETURN_INVERSE(IfcRelContainedInSpatialStructure) } bool IfcAnnotation::is(Type::Enum v) const { return v == Type::IfcAnnotation || IfcProduct::is(v); } Type::Enum IfcAnnotation::type() const { return Type::IfcAnnotation; } Type::Enum IfcAnnotation::Class() { return Type::IfcAnnotation; } IfcAnnotation::IfcAnnotation(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotation::IfcAnnotation(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); entity = e; } +IfcAnnotation::IfcAnnotation(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationCurveOccurrence bool IfcAnnotationCurveOccurrence::is(Type::Enum v) const { return v == Type::IfcAnnotationCurveOccurrence || IfcAnnotationOccurrence::is(v); } Type::Enum IfcAnnotationCurveOccurrence::type() const { return Type::IfcAnnotationCurveOccurrence; } Type::Enum IfcAnnotationCurveOccurrence::Class() { return Type::IfcAnnotationCurveOccurrence; } IfcAnnotationCurveOccurrence::IfcAnnotationCurveOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationCurveOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationCurveOccurrence::IfcAnnotationCurveOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcAnnotationCurveOccurrence::IfcAnnotationCurveOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationFillArea IfcCurve* IfcAnnotationFillArea::OuterBoundary() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcAnnotationFillArea::setOuterBoundary(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -4874,7 +4874,7 @@ bool IfcAnnotationFillArea::is(Type::Enum v) const { return v == Type::IfcAnnota Type::Enum IfcAnnotationFillArea::type() const { return Type::IfcAnnotationFillArea; } Type::Enum IfcAnnotationFillArea::Class() { return Type::IfcAnnotationFillArea; } IfcAnnotationFillArea::IfcAnnotationFillArea(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationFillArea)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationFillArea::IfcAnnotationFillArea(IfcCurve* v1_OuterBoundary, SHARED_PTR< IfcTemplatedEntityList > v2_InnerBoundaries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_OuterBoundary); e->setArgument(1,v2_InnerBoundaries->generalize()); entity = e; } +IfcAnnotationFillArea::IfcAnnotationFillArea(IfcCurve* v1_OuterBoundary, optional >> v2_InnerBoundaries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_OuterBoundary)); if (v2_InnerBoundaries) { e->setArgument(1,(*v2_InnerBoundaries)->generalize()); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationFillAreaOccurrence bool IfcAnnotationFillAreaOccurrence::hasFillStyleTarget() { return !entity->getArgument(3)->isNull(); } IfcPoint* IfcAnnotationFillAreaOccurrence::FillStyleTarget() { return reinterpret_pointer_cast(*entity->getArgument(3)); } @@ -4886,13 +4886,13 @@ bool IfcAnnotationFillAreaOccurrence::is(Type::Enum v) const { return v == Type: Type::Enum IfcAnnotationFillAreaOccurrence::type() const { return Type::IfcAnnotationFillAreaOccurrence; } Type::Enum IfcAnnotationFillAreaOccurrence::Class() { return Type::IfcAnnotationFillAreaOccurrence; } IfcAnnotationFillAreaOccurrence::IfcAnnotationFillAreaOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationFillAreaOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationFillAreaOccurrence::IfcAnnotationFillAreaOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcPoint* v4_FillStyleTarget, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v5_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); e->setArgument(3,v4_FillStyleTarget); e->setArgument(4,v5_GlobalOrLocal); entity = e; } +IfcAnnotationFillAreaOccurrence::IfcAnnotationFillAreaOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcPoint* v4_FillStyleTarget, optional v5_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_FillStyleTarget)); if (v5_GlobalOrLocal) { e->setArgument(4,*v5_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(*v5_GlobalOrLocal)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationOccurrence bool IfcAnnotationOccurrence::is(Type::Enum v) const { return v == Type::IfcAnnotationOccurrence || IfcStyledItem::is(v); } Type::Enum IfcAnnotationOccurrence::type() const { return Type::IfcAnnotationOccurrence; } Type::Enum IfcAnnotationOccurrence::Class() { return Type::IfcAnnotationOccurrence; } IfcAnnotationOccurrence::IfcAnnotationOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationOccurrence::IfcAnnotationOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcAnnotationOccurrence::IfcAnnotationOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationSurface IfcGeometricRepresentationItem* IfcAnnotationSurface::Item() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcAnnotationSurface::setItem(IfcGeometricRepresentationItem* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -4903,25 +4903,25 @@ bool IfcAnnotationSurface::is(Type::Enum v) const { return v == Type::IfcAnnotat Type::Enum IfcAnnotationSurface::type() const { return Type::IfcAnnotationSurface; } Type::Enum IfcAnnotationSurface::Class() { return Type::IfcAnnotationSurface; } IfcAnnotationSurface::IfcAnnotationSurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationSurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationSurface::IfcAnnotationSurface(IfcGeometricRepresentationItem* v1_Item, IfcTextureCoordinate* v2_TextureCoordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_TextureCoordinates); entity = e; } +IfcAnnotationSurface::IfcAnnotationSurface(IfcGeometricRepresentationItem* v1_Item, IfcTextureCoordinate* v2_TextureCoordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_TextureCoordinates)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationSurfaceOccurrence bool IfcAnnotationSurfaceOccurrence::is(Type::Enum v) const { return v == Type::IfcAnnotationSurfaceOccurrence || IfcAnnotationOccurrence::is(v); } Type::Enum IfcAnnotationSurfaceOccurrence::type() const { return Type::IfcAnnotationSurfaceOccurrence; } Type::Enum IfcAnnotationSurfaceOccurrence::Class() { return Type::IfcAnnotationSurfaceOccurrence; } IfcAnnotationSurfaceOccurrence::IfcAnnotationSurfaceOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationSurfaceOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationSurfaceOccurrence::IfcAnnotationSurfaceOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcAnnotationSurfaceOccurrence::IfcAnnotationSurfaceOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationSymbolOccurrence bool IfcAnnotationSymbolOccurrence::is(Type::Enum v) const { return v == Type::IfcAnnotationSymbolOccurrence || IfcAnnotationOccurrence::is(v); } Type::Enum IfcAnnotationSymbolOccurrence::type() const { return Type::IfcAnnotationSymbolOccurrence; } Type::Enum IfcAnnotationSymbolOccurrence::Class() { return Type::IfcAnnotationSymbolOccurrence; } IfcAnnotationSymbolOccurrence::IfcAnnotationSymbolOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationSymbolOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationSymbolOccurrence::IfcAnnotationSymbolOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcAnnotationSymbolOccurrence::IfcAnnotationSymbolOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAnnotationTextOccurrence bool IfcAnnotationTextOccurrence::is(Type::Enum v) const { return v == Type::IfcAnnotationTextOccurrence || IfcAnnotationOccurrence::is(v); } Type::Enum IfcAnnotationTextOccurrence::type() const { return Type::IfcAnnotationTextOccurrence; } Type::Enum IfcAnnotationTextOccurrence::Class() { return Type::IfcAnnotationTextOccurrence; } IfcAnnotationTextOccurrence::IfcAnnotationTextOccurrence(IfcAbstractEntityPtr e) { if (!is(Type::IfcAnnotationTextOccurrence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAnnotationTextOccurrence::IfcAnnotationTextOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcAnnotationTextOccurrence::IfcAnnotationTextOccurrence(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcApplication IfcOrganization* IfcApplication::ApplicationDeveloper() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcApplication::setApplicationDeveloper(IfcOrganization* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -4935,7 +4935,7 @@ bool IfcApplication::is(Type::Enum v) const { return v == Type::IfcApplication; Type::Enum IfcApplication::type() const { return Type::IfcApplication; } Type::Enum IfcApplication::Class() { return Type::IfcApplication; } IfcApplication::IfcApplication(IfcAbstractEntityPtr e) { if (!is(Type::IfcApplication)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcApplication::IfcApplication(IfcOrganization* v1_ApplicationDeveloper, IfcLabel v2_Version, IfcLabel v3_ApplicationFullName, IfcIdentifier v4_ApplicationIdentifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ApplicationDeveloper); e->setArgument(1,v2_Version); e->setArgument(2,v3_ApplicationFullName); e->setArgument(3,v4_ApplicationIdentifier); entity = e; } +IfcApplication::IfcApplication(IfcOrganization* v1_ApplicationDeveloper, IfcLabel v2_Version, IfcLabel v3_ApplicationFullName, IfcIdentifier v4_ApplicationIdentifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ApplicationDeveloper)); e->setArgument(1,(v2_Version)); e->setArgument(2,(v3_ApplicationFullName)); e->setArgument(3,(v4_ApplicationIdentifier)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAppliedValue bool IfcAppliedValue::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcAppliedValue::Name() { return *entity->getArgument(0); } @@ -4962,7 +4962,7 @@ bool IfcAppliedValue::is(Type::Enum v) const { return v == Type::IfcAppliedValue Type::Enum IfcAppliedValue::type() const { return Type::IfcAppliedValue; } Type::Enum IfcAppliedValue::Class() { return Type::IfcAppliedValue; } IfcAppliedValue::IfcAppliedValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcAppliedValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAppliedValue::IfcAppliedValue(IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_AppliedValue); e->setArgument(3,v4_UnitBasis); e->setArgument(4,v5_ApplicableDate); e->setArgument(5,v6_FixedUntilDate); entity = e; } +IfcAppliedValue::IfcAppliedValue(optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_AppliedValue) { e->setArgument(2,(*v3_AppliedValue)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_UnitBasis)); if (v5_ApplicableDate) { e->setArgument(4,(*v5_ApplicableDate)); } else { e->setArgument(4); } ; if (v6_FixedUntilDate) { e->setArgument(5,(*v6_FixedUntilDate)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAppliedValueRelationship IfcAppliedValue* IfcAppliedValueRelationship::ComponentOfTotal() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcAppliedValueRelationship::setComponentOfTotal(IfcAppliedValue* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -4980,7 +4980,7 @@ bool IfcAppliedValueRelationship::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcAppliedValueRelationship::type() const { return Type::IfcAppliedValueRelationship; } Type::Enum IfcAppliedValueRelationship::Class() { return Type::IfcAppliedValueRelationship; } IfcAppliedValueRelationship::IfcAppliedValueRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcAppliedValueRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAppliedValueRelationship::IfcAppliedValueRelationship(IfcAppliedValue* v1_ComponentOfTotal, SHARED_PTR< IfcTemplatedEntityList > v2_Components, IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum v3_ArithmeticOperator, IfcLabel v4_Name, IfcText v5_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ComponentOfTotal); e->setArgument(1,v2_Components->generalize()); e->setArgument(2,v3_ArithmeticOperator); e->setArgument(3,v4_Name); e->setArgument(4,v5_Description); entity = e; } +IfcAppliedValueRelationship::IfcAppliedValueRelationship(IfcAppliedValue* v1_ComponentOfTotal, SHARED_PTR< IfcTemplatedEntityList > v2_Components, IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum v3_ArithmeticOperator, optional v4_Name, optional v5_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ComponentOfTotal)); e->setArgument(1,(v2_Components)->generalize()); e->setArgument(2,v3_ArithmeticOperator,IfcArithmeticOperatorEnum::ToString(v3_ArithmeticOperator)); if (v4_Name) { e->setArgument(3,(*v4_Name)); } else { e->setArgument(3); } ; if (v5_Description) { e->setArgument(4,(*v5_Description)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcApproval bool IfcApproval::hasDescription() { return !entity->getArgument(0)->isNull(); } IfcText IfcApproval::Description() { return *entity->getArgument(0); } @@ -5007,7 +5007,7 @@ bool IfcApproval::is(Type::Enum v) const { return v == Type::IfcApproval; } Type::Enum IfcApproval::type() const { return Type::IfcApproval; } Type::Enum IfcApproval::Class() { return Type::IfcApproval; } IfcApproval::IfcApproval(IfcAbstractEntityPtr e) { if (!is(Type::IfcApproval)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcApproval::IfcApproval(IfcText v1_Description, IfcDateTimeSelect v2_ApprovalDateTime, IfcLabel v3_ApprovalStatus, IfcLabel v4_ApprovalLevel, IfcText v5_ApprovalQualifier, IfcLabel v6_Name, IfcIdentifier v7_Identifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Description); e->setArgument(1,v2_ApprovalDateTime); e->setArgument(2,v3_ApprovalStatus); e->setArgument(3,v4_ApprovalLevel); e->setArgument(4,v5_ApprovalQualifier); e->setArgument(5,v6_Name); e->setArgument(6,v7_Identifier); entity = e; } +IfcApproval::IfcApproval(optional v1_Description, IfcDateTimeSelect v2_ApprovalDateTime, optional v3_ApprovalStatus, optional v4_ApprovalLevel, optional v5_ApprovalQualifier, IfcLabel v6_Name, IfcIdentifier v7_Identifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Description) { e->setArgument(0,(*v1_Description)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ApprovalDateTime)); if (v3_ApprovalStatus) { e->setArgument(2,(*v3_ApprovalStatus)); } else { e->setArgument(2); } ; if (v4_ApprovalLevel) { e->setArgument(3,(*v4_ApprovalLevel)); } else { e->setArgument(3); } ; if (v5_ApprovalQualifier) { e->setArgument(4,(*v5_ApprovalQualifier)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Name)); e->setArgument(6,(v7_Identifier)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcApprovalActorRelationship IfcActorSelect IfcApprovalActorRelationship::Actor() { return *entity->getArgument(0); } void IfcApprovalActorRelationship::setActor(IfcActorSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5019,7 +5019,7 @@ bool IfcApprovalActorRelationship::is(Type::Enum v) const { return v == Type::If Type::Enum IfcApprovalActorRelationship::type() const { return Type::IfcApprovalActorRelationship; } Type::Enum IfcApprovalActorRelationship::Class() { return Type::IfcApprovalActorRelationship; } IfcApprovalActorRelationship::IfcApprovalActorRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcApprovalActorRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcApprovalActorRelationship::IfcApprovalActorRelationship(IfcActorSelect v1_Actor, IfcApproval* v2_Approval, IfcActorRole* v3_Role) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Actor); e->setArgument(1,v2_Approval); e->setArgument(2,v3_Role); entity = e; } +IfcApprovalActorRelationship::IfcApprovalActorRelationship(IfcActorSelect v1_Actor, IfcApproval* v2_Approval, IfcActorRole* v3_Role) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Actor)); e->setArgument(1,(v2_Approval)); e->setArgument(2,(v3_Role)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcApprovalPropertyRelationship SHARED_PTR< IfcTemplatedEntityList > IfcApprovalPropertyRelationship::ApprovedProperties() { RETURN_AS_LIST(IfcProperty,0) } void IfcApprovalPropertyRelationship::setApprovedProperties(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -5029,7 +5029,7 @@ bool IfcApprovalPropertyRelationship::is(Type::Enum v) const { return v == Type: Type::Enum IfcApprovalPropertyRelationship::type() const { return Type::IfcApprovalPropertyRelationship; } Type::Enum IfcApprovalPropertyRelationship::Class() { return Type::IfcApprovalPropertyRelationship; } IfcApprovalPropertyRelationship::IfcApprovalPropertyRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcApprovalPropertyRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcApprovalPropertyRelationship::IfcApprovalPropertyRelationship(SHARED_PTR< IfcTemplatedEntityList > v1_ApprovedProperties, IfcApproval* v2_Approval) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ApprovedProperties->generalize()); e->setArgument(1,v2_Approval); entity = e; } +IfcApprovalPropertyRelationship::IfcApprovalPropertyRelationship(SHARED_PTR< IfcTemplatedEntityList > v1_ApprovedProperties, IfcApproval* v2_Approval) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ApprovedProperties)->generalize()); e->setArgument(1,(v2_Approval)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcApprovalRelationship IfcApproval* IfcApprovalRelationship::RelatedApproval() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcApprovalRelationship::setRelatedApproval(IfcApproval* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5044,7 +5044,7 @@ bool IfcApprovalRelationship::is(Type::Enum v) const { return v == Type::IfcAppr Type::Enum IfcApprovalRelationship::type() const { return Type::IfcApprovalRelationship; } Type::Enum IfcApprovalRelationship::Class() { return Type::IfcApprovalRelationship; } IfcApprovalRelationship::IfcApprovalRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcApprovalRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcApprovalRelationship::IfcApprovalRelationship(IfcApproval* v1_RelatedApproval, IfcApproval* v2_RelatingApproval, IfcText v3_Description, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelatedApproval); e->setArgument(1,v2_RelatingApproval); e->setArgument(2,v3_Description); e->setArgument(3,v4_Name); entity = e; } +IfcApprovalRelationship::IfcApprovalRelationship(IfcApproval* v1_RelatedApproval, IfcApproval* v2_RelatingApproval, optional v3_Description, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelatedApproval)); e->setArgument(1,(v2_RelatingApproval)); if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcArbitraryClosedProfileDef IfcCurve* IfcArbitraryClosedProfileDef::OuterCurve() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcArbitraryClosedProfileDef::setOuterCurve(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5052,7 +5052,7 @@ bool IfcArbitraryClosedProfileDef::is(Type::Enum v) const { return v == Type::If Type::Enum IfcArbitraryClosedProfileDef::type() const { return Type::IfcArbitraryClosedProfileDef; } Type::Enum IfcArbitraryClosedProfileDef::Class() { return Type::IfcArbitraryClosedProfileDef; } IfcArbitraryClosedProfileDef::IfcArbitraryClosedProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcArbitraryClosedProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcArbitraryClosedProfileDef::IfcArbitraryClosedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcCurve* v3_OuterCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_OuterCurve); entity = e; } +IfcArbitraryClosedProfileDef::IfcArbitraryClosedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcCurve* v3_OuterCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_OuterCurve)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcArbitraryOpenProfileDef IfcBoundedCurve* IfcArbitraryOpenProfileDef::Curve() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcArbitraryOpenProfileDef::setCurve(IfcBoundedCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5060,7 +5060,7 @@ bool IfcArbitraryOpenProfileDef::is(Type::Enum v) const { return v == Type::IfcA Type::Enum IfcArbitraryOpenProfileDef::type() const { return Type::IfcArbitraryOpenProfileDef; } Type::Enum IfcArbitraryOpenProfileDef::Class() { return Type::IfcArbitraryOpenProfileDef; } IfcArbitraryOpenProfileDef::IfcArbitraryOpenProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcArbitraryOpenProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcArbitraryOpenProfileDef::IfcArbitraryOpenProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcBoundedCurve* v3_Curve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Curve); entity = e; } +IfcArbitraryOpenProfileDef::IfcArbitraryOpenProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcBoundedCurve* v3_Curve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Curve)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcArbitraryProfileDefWithVoids SHARED_PTR< IfcTemplatedEntityList > IfcArbitraryProfileDefWithVoids::InnerCurves() { RETURN_AS_LIST(IfcCurve,3) } void IfcArbitraryProfileDefWithVoids::setInnerCurves(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v->generalize()); } @@ -5068,7 +5068,7 @@ bool IfcArbitraryProfileDefWithVoids::is(Type::Enum v) const { return v == Type: Type::Enum IfcArbitraryProfileDefWithVoids::type() const { return Type::IfcArbitraryProfileDefWithVoids; } Type::Enum IfcArbitraryProfileDefWithVoids::Class() { return Type::IfcArbitraryProfileDefWithVoids; } IfcArbitraryProfileDefWithVoids::IfcArbitraryProfileDefWithVoids(IfcAbstractEntityPtr e) { if (!is(Type::IfcArbitraryProfileDefWithVoids)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcArbitraryProfileDefWithVoids::IfcArbitraryProfileDefWithVoids(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcCurve* v3_OuterCurve, SHARED_PTR< IfcTemplatedEntityList > v4_InnerCurves) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_OuterCurve); e->setArgument(3,v4_InnerCurves->generalize()); entity = e; } +IfcArbitraryProfileDefWithVoids::IfcArbitraryProfileDefWithVoids(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcCurve* v3_OuterCurve, SHARED_PTR< IfcTemplatedEntityList > v4_InnerCurves) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_OuterCurve)); e->setArgument(3,(v4_InnerCurves)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAsset IfcIdentifier IfcAsset::AssetID() { return *entity->getArgument(5); } void IfcAsset::setAssetID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -5092,7 +5092,7 @@ bool IfcAsset::is(Type::Enum v) const { return v == Type::IfcAsset || IfcGroup:: Type::Enum IfcAsset::type() const { return Type::IfcAsset; } Type::Enum IfcAsset::Class() { return Type::IfcAsset; } IfcAsset::IfcAsset(IfcAbstractEntityPtr e) { if (!is(Type::IfcAsset)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAsset::IfcAsset(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_AssetID, IfcCostValue* v7_OriginalValue, IfcCostValue* v8_CurrentValue, IfcCostValue* v9_TotalReplacementCost, IfcActorSelect v10_Owner, IfcActorSelect v11_User, IfcPerson* v12_ResponsiblePerson, IfcCalendarDate* v13_IncorporationDate, IfcCostValue* v14_DepreciatedValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_AssetID); e->setArgument(6,v7_OriginalValue); e->setArgument(7,v8_CurrentValue); e->setArgument(8,v9_TotalReplacementCost); e->setArgument(9,v10_Owner); e->setArgument(10,v11_User); e->setArgument(11,v12_ResponsiblePerson); e->setArgument(12,v13_IncorporationDate); e->setArgument(13,v14_DepreciatedValue); entity = e; } +IfcAsset::IfcAsset(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_AssetID, IfcCostValue* v7_OriginalValue, IfcCostValue* v8_CurrentValue, IfcCostValue* v9_TotalReplacementCost, IfcActorSelect v10_Owner, IfcActorSelect v11_User, IfcPerson* v12_ResponsiblePerson, IfcCalendarDate* v13_IncorporationDate, IfcCostValue* v14_DepreciatedValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_AssetID)); e->setArgument(6,(v7_OriginalValue)); e->setArgument(7,(v8_CurrentValue)); e->setArgument(8,(v9_TotalReplacementCost)); e->setArgument(9,(v10_Owner)); e->setArgument(10,(v11_User)); e->setArgument(11,(v12_ResponsiblePerson)); e->setArgument(12,(v13_IncorporationDate)); e->setArgument(13,(v14_DepreciatedValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAsymmetricIShapeProfileDef IfcPositiveLengthMeasure IfcAsymmetricIShapeProfileDef::TopFlangeWidth() { return *entity->getArgument(8); } void IfcAsymmetricIShapeProfileDef::setTopFlangeWidth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v); } @@ -5109,7 +5109,7 @@ bool IfcAsymmetricIShapeProfileDef::is(Type::Enum v) const { return v == Type::I Type::Enum IfcAsymmetricIShapeProfileDef::type() const { return Type::IfcAsymmetricIShapeProfileDef; } Type::Enum IfcAsymmetricIShapeProfileDef::Class() { return Type::IfcAsymmetricIShapeProfileDef; } IfcAsymmetricIShapeProfileDef::IfcAsymmetricIShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcAsymmetricIShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAsymmetricIShapeProfileDef::IfcAsymmetricIShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_TopFlangeWidth, IfcPositiveLengthMeasure v10_TopFlangeThickness, IfcPositiveLengthMeasure v11_TopFlangeFilletRadius, IfcPositiveLengthMeasure v12_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_OverallWidth); e->setArgument(4,v5_OverallDepth); e->setArgument(5,v6_WebThickness); e->setArgument(6,v7_FlangeThickness); e->setArgument(7,v8_FilletRadius); e->setArgument(8,v9_TopFlangeWidth); e->setArgument(9,v10_TopFlangeThickness); e->setArgument(10,v11_TopFlangeFilletRadius); e->setArgument(11,v12_CentreOfGravityInY); entity = e; } +IfcAsymmetricIShapeProfileDef::IfcAsymmetricIShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, IfcPositiveLengthMeasure v9_TopFlangeWidth, optional v10_TopFlangeThickness, optional v11_TopFlangeFilletRadius, optional v12_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_OverallWidth)); e->setArgument(4,(v5_OverallDepth)); e->setArgument(5,(v6_WebThickness)); e->setArgument(6,(v7_FlangeThickness)); if (v8_FilletRadius) { e->setArgument(7,(*v8_FilletRadius)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_TopFlangeWidth)); if (v10_TopFlangeThickness) { e->setArgument(9,(*v10_TopFlangeThickness)); } else { e->setArgument(9); } ; if (v11_TopFlangeFilletRadius) { e->setArgument(10,(*v11_TopFlangeFilletRadius)); } else { e->setArgument(10); } ; if (v12_CentreOfGravityInY) { e->setArgument(11,(*v12_CentreOfGravityInY)); } else { e->setArgument(11); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAxis1Placement bool IfcAxis1Placement::hasAxis() { return !entity->getArgument(1)->isNull(); } IfcDirection* IfcAxis1Placement::Axis() { return reinterpret_pointer_cast(*entity->getArgument(1)); } @@ -5118,7 +5118,7 @@ bool IfcAxis1Placement::is(Type::Enum v) const { return v == Type::IfcAxis1Place Type::Enum IfcAxis1Placement::type() const { return Type::IfcAxis1Placement; } Type::Enum IfcAxis1Placement::Class() { return Type::IfcAxis1Placement; } IfcAxis1Placement::IfcAxis1Placement(IfcAbstractEntityPtr e) { if (!is(Type::IfcAxis1Placement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAxis1Placement::IfcAxis1Placement(IfcCartesianPoint* v1_Location, IfcDirection* v2_Axis) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_Axis); entity = e; } +IfcAxis1Placement::IfcAxis1Placement(IfcCartesianPoint* v1_Location, IfcDirection* v2_Axis) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Location)); e->setArgument(1,(v2_Axis)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAxis2Placement2D bool IfcAxis2Placement2D::hasRefDirection() { return !entity->getArgument(1)->isNull(); } IfcDirection* IfcAxis2Placement2D::RefDirection() { return reinterpret_pointer_cast(*entity->getArgument(1)); } @@ -5127,7 +5127,7 @@ bool IfcAxis2Placement2D::is(Type::Enum v) const { return v == Type::IfcAxis2Pla Type::Enum IfcAxis2Placement2D::type() const { return Type::IfcAxis2Placement2D; } Type::Enum IfcAxis2Placement2D::Class() { return Type::IfcAxis2Placement2D; } IfcAxis2Placement2D::IfcAxis2Placement2D(IfcAbstractEntityPtr e) { if (!is(Type::IfcAxis2Placement2D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAxis2Placement2D::IfcAxis2Placement2D(IfcCartesianPoint* v1_Location, IfcDirection* v2_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_RefDirection); entity = e; } +IfcAxis2Placement2D::IfcAxis2Placement2D(IfcCartesianPoint* v1_Location, IfcDirection* v2_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Location)); e->setArgument(1,(v2_RefDirection)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcAxis2Placement3D bool IfcAxis2Placement3D::hasAxis() { return !entity->getArgument(1)->isNull(); } IfcDirection* IfcAxis2Placement3D::Axis() { return reinterpret_pointer_cast(*entity->getArgument(1)); } @@ -5139,7 +5139,7 @@ bool IfcAxis2Placement3D::is(Type::Enum v) const { return v == Type::IfcAxis2Pla Type::Enum IfcAxis2Placement3D::type() const { return Type::IfcAxis2Placement3D; } Type::Enum IfcAxis2Placement3D::Class() { return Type::IfcAxis2Placement3D; } IfcAxis2Placement3D::IfcAxis2Placement3D(IfcAbstractEntityPtr e) { if (!is(Type::IfcAxis2Placement3D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcAxis2Placement3D::IfcAxis2Placement3D(IfcCartesianPoint* v1_Location, IfcDirection* v2_Axis, IfcDirection* v3_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_Axis); e->setArgument(2,v3_RefDirection); entity = e; } +IfcAxis2Placement3D::IfcAxis2Placement3D(IfcCartesianPoint* v1_Location, IfcDirection* v2_Axis, IfcDirection* v3_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Location)); e->setArgument(1,(v2_Axis)); e->setArgument(2,(v3_RefDirection)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBSplineCurve int IfcBSplineCurve::Degree() { return *entity->getArgument(0); } void IfcBSplineCurve::setDegree(int v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5155,13 +5155,13 @@ bool IfcBSplineCurve::is(Type::Enum v) const { return v == Type::IfcBSplineCurve Type::Enum IfcBSplineCurve::type() const { return Type::IfcBSplineCurve; } Type::Enum IfcBSplineCurve::Class() { return Type::IfcBSplineCurve; } IfcBSplineCurve::IfcBSplineCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcBSplineCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBSplineCurve::IfcBSplineCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Degree); e->setArgument(1,v2_ControlPointsList->generalize()); e->setArgument(2,v3_CurveForm); e->setArgument(3,v4_ClosedCurve); e->setArgument(4,v5_SelfIntersect); entity = e; } +IfcBSplineCurve::IfcBSplineCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Degree)); e->setArgument(1,(v2_ControlPointsList)->generalize()); e->setArgument(2,v3_CurveForm,IfcBSplineCurveForm::ToString(v3_CurveForm)); e->setArgument(3,(v4_ClosedCurve)); e->setArgument(4,(v5_SelfIntersect)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBeam bool IfcBeam::is(Type::Enum v) const { return v == Type::IfcBeam || IfcBuildingElement::is(v); } Type::Enum IfcBeam::type() const { return Type::IfcBeam; } Type::Enum IfcBeam::Class() { return Type::IfcBeam; } IfcBeam::IfcBeam(IfcAbstractEntityPtr e) { if (!is(Type::IfcBeam)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBeam::IfcBeam(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcBeam::IfcBeam(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBeamType IfcBeamTypeEnum::IfcBeamTypeEnum IfcBeamType::PredefinedType() { return IfcBeamTypeEnum::FromString(*entity->getArgument(9)); } void IfcBeamType::setPredefinedType(IfcBeamTypeEnum::IfcBeamTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcBeamTypeEnum::ToString(v)); } @@ -5169,13 +5169,13 @@ bool IfcBeamType::is(Type::Enum v) const { return v == Type::IfcBeamType || IfcB Type::Enum IfcBeamType::type() const { return Type::IfcBeamType; } Type::Enum IfcBeamType::Class() { return Type::IfcBeamType; } IfcBeamType::IfcBeamType(IfcAbstractEntityPtr e) { if (!is(Type::IfcBeamType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBeamType::IfcBeamType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBeamTypeEnum::IfcBeamTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcBeamType::IfcBeamType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBeamTypeEnum::IfcBeamTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcBeamTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBezierCurve bool IfcBezierCurve::is(Type::Enum v) const { return v == Type::IfcBezierCurve || IfcBSplineCurve::is(v); } Type::Enum IfcBezierCurve::type() const { return Type::IfcBezierCurve; } Type::Enum IfcBezierCurve::Class() { return Type::IfcBezierCurve; } IfcBezierCurve::IfcBezierCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcBezierCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBezierCurve::IfcBezierCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Degree); e->setArgument(1,v2_ControlPointsList->generalize()); e->setArgument(2,v3_CurveForm); e->setArgument(3,v4_ClosedCurve); e->setArgument(4,v5_SelfIntersect); entity = e; } +IfcBezierCurve::IfcBezierCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Degree)); e->setArgument(1,(v2_ControlPointsList)->generalize()); e->setArgument(2,v3_CurveForm,IfcBSplineCurveForm::ToString(v3_CurveForm)); e->setArgument(3,(v4_ClosedCurve)); e->setArgument(4,(v5_SelfIntersect)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBlobTexture IfcIdentifier IfcBlobTexture::RasterFormat() { return *entity->getArgument(4); } void IfcBlobTexture::setRasterFormat(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -5185,7 +5185,7 @@ bool IfcBlobTexture::is(Type::Enum v) const { return v == Type::IfcBlobTexture | Type::Enum IfcBlobTexture::type() const { return Type::IfcBlobTexture; } Type::Enum IfcBlobTexture::Class() { return Type::IfcBlobTexture; } IfcBlobTexture::IfcBlobTexture(IfcAbstractEntityPtr e) { if (!is(Type::IfcBlobTexture)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBlobTexture::IfcBlobTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcIdentifier v5_RasterFormat, bool v6_RasterCode) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatS); e->setArgument(1,v2_RepeatT); e->setArgument(2,v3_TextureType); e->setArgument(3,v4_TextureTransform); e->setArgument(4,v5_RasterFormat); e->setArgument(5,v6_RasterCode); entity = e; } +IfcBlobTexture::IfcBlobTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcIdentifier v5_RasterFormat, bool v6_RasterCode) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatS)); e->setArgument(1,(v2_RepeatT)); e->setArgument(2,v3_TextureType,IfcSurfaceTextureEnum::ToString(v3_TextureType)); e->setArgument(3,(v4_TextureTransform)); e->setArgument(4,(v5_RasterFormat)); e->setArgument(5,(v6_RasterCode)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBlock IfcPositiveLengthMeasure IfcBlock::XLength() { return *entity->getArgument(1); } void IfcBlock::setXLength(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -5197,7 +5197,7 @@ bool IfcBlock::is(Type::Enum v) const { return v == Type::IfcBlock || IfcCsgPrim Type::Enum IfcBlock::type() const { return Type::IfcBlock; } Type::Enum IfcBlock::Class() { return Type::IfcBlock; } IfcBlock::IfcBlock(IfcAbstractEntityPtr e) { if (!is(Type::IfcBlock)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBlock::IfcBlock(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_XLength, IfcPositiveLengthMeasure v3_YLength, IfcPositiveLengthMeasure v4_ZLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_XLength); e->setArgument(2,v3_YLength); e->setArgument(3,v4_ZLength); entity = e; } +IfcBlock::IfcBlock(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_XLength, IfcPositiveLengthMeasure v3_YLength, IfcPositiveLengthMeasure v4_ZLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_XLength)); e->setArgument(2,(v3_YLength)); e->setArgument(3,(v4_ZLength)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoilerType IfcBoilerTypeEnum::IfcBoilerTypeEnum IfcBoilerType::PredefinedType() { return IfcBoilerTypeEnum::FromString(*entity->getArgument(9)); } void IfcBoilerType::setPredefinedType(IfcBoilerTypeEnum::IfcBoilerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcBoilerTypeEnum::ToString(v)); } @@ -5205,13 +5205,13 @@ bool IfcBoilerType::is(Type::Enum v) const { return v == Type::IfcBoilerType || Type::Enum IfcBoilerType::type() const { return Type::IfcBoilerType; } Type::Enum IfcBoilerType::Class() { return Type::IfcBoilerType; } IfcBoilerType::IfcBoilerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoilerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoilerType::IfcBoilerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBoilerTypeEnum::IfcBoilerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcBoilerType::IfcBoilerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBoilerTypeEnum::IfcBoilerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcBoilerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBooleanClippingResult bool IfcBooleanClippingResult::is(Type::Enum v) const { return v == Type::IfcBooleanClippingResult || IfcBooleanResult::is(v); } Type::Enum IfcBooleanClippingResult::type() const { return Type::IfcBooleanClippingResult; } Type::Enum IfcBooleanClippingResult::Class() { return Type::IfcBooleanClippingResult; } IfcBooleanClippingResult::IfcBooleanClippingResult(IfcAbstractEntityPtr e) { if (!is(Type::IfcBooleanClippingResult)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBooleanClippingResult::IfcBooleanClippingResult(IfcBooleanOperator::IfcBooleanOperator v1_Operator, IfcBooleanOperand v2_FirstOperand, IfcBooleanOperand v3_SecondOperand) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Operator); e->setArgument(1,v2_FirstOperand); e->setArgument(2,v3_SecondOperand); entity = e; } +IfcBooleanClippingResult::IfcBooleanClippingResult(IfcBooleanOperator::IfcBooleanOperator v1_Operator, IfcBooleanOperand v2_FirstOperand, IfcBooleanOperand v3_SecondOperand) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Operator,IfcBooleanOperator::ToString(v1_Operator)); e->setArgument(1,(v2_FirstOperand)); e->setArgument(2,(v3_SecondOperand)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBooleanResult IfcBooleanOperator::IfcBooleanOperator IfcBooleanResult::Operator() { return IfcBooleanOperator::FromString(*entity->getArgument(0)); } void IfcBooleanResult::setOperator(IfcBooleanOperator::IfcBooleanOperator v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcBooleanOperator::ToString(v)); } @@ -5223,7 +5223,7 @@ bool IfcBooleanResult::is(Type::Enum v) const { return v == Type::IfcBooleanResu Type::Enum IfcBooleanResult::type() const { return Type::IfcBooleanResult; } Type::Enum IfcBooleanResult::Class() { return Type::IfcBooleanResult; } IfcBooleanResult::IfcBooleanResult(IfcAbstractEntityPtr e) { if (!is(Type::IfcBooleanResult)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBooleanResult::IfcBooleanResult(IfcBooleanOperator::IfcBooleanOperator v1_Operator, IfcBooleanOperand v2_FirstOperand, IfcBooleanOperand v3_SecondOperand) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Operator); e->setArgument(1,v2_FirstOperand); e->setArgument(2,v3_SecondOperand); entity = e; } +IfcBooleanResult::IfcBooleanResult(IfcBooleanOperator::IfcBooleanOperator v1_Operator, IfcBooleanOperand v2_FirstOperand, IfcBooleanOperand v3_SecondOperand) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Operator,IfcBooleanOperator::ToString(v1_Operator)); e->setArgument(1,(v2_FirstOperand)); e->setArgument(2,(v3_SecondOperand)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundaryCondition bool IfcBoundaryCondition::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcBoundaryCondition::Name() { return *entity->getArgument(0); } @@ -5232,7 +5232,7 @@ bool IfcBoundaryCondition::is(Type::Enum v) const { return v == Type::IfcBoundar Type::Enum IfcBoundaryCondition::type() const { return Type::IfcBoundaryCondition; } Type::Enum IfcBoundaryCondition::Class() { return Type::IfcBoundaryCondition; } IfcBoundaryCondition::IfcBoundaryCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundaryCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundaryCondition::IfcBoundaryCondition(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcBoundaryCondition::IfcBoundaryCondition(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundaryEdgeCondition bool IfcBoundaryEdgeCondition::hasLinearStiffnessByLengthX() { return !entity->getArgument(1)->isNull(); } IfcModulusOfLinearSubgradeReactionMeasure IfcBoundaryEdgeCondition::LinearStiffnessByLengthX() { return *entity->getArgument(1); } @@ -5256,7 +5256,7 @@ bool IfcBoundaryEdgeCondition::is(Type::Enum v) const { return v == Type::IfcBou Type::Enum IfcBoundaryEdgeCondition::type() const { return Type::IfcBoundaryEdgeCondition; } Type::Enum IfcBoundaryEdgeCondition::Class() { return Type::IfcBoundaryEdgeCondition; } IfcBoundaryEdgeCondition::IfcBoundaryEdgeCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundaryEdgeCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundaryEdgeCondition::IfcBoundaryEdgeCondition(IfcLabel v1_Name, IfcModulusOfLinearSubgradeReactionMeasure v2_LinearStiffnessByLengthX, IfcModulusOfLinearSubgradeReactionMeasure v3_LinearStiffnessByLengthY, IfcModulusOfLinearSubgradeReactionMeasure v4_LinearStiffnessByLengthZ, IfcModulusOfRotationalSubgradeReactionMeasure v5_RotationalStiffnessByLengthX, IfcModulusOfRotationalSubgradeReactionMeasure v6_RotationalStiffnessByLengthY, IfcModulusOfRotationalSubgradeReactionMeasure v7_RotationalStiffnessByLengthZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LinearStiffnessByLengthX); e->setArgument(2,v3_LinearStiffnessByLengthY); e->setArgument(3,v4_LinearStiffnessByLengthZ); e->setArgument(4,v5_RotationalStiffnessByLengthX); e->setArgument(5,v6_RotationalStiffnessByLengthY); e->setArgument(6,v7_RotationalStiffnessByLengthZ); entity = e; } +IfcBoundaryEdgeCondition::IfcBoundaryEdgeCondition(optional v1_Name, optional v2_LinearStiffnessByLengthX, optional v3_LinearStiffnessByLengthY, optional v4_LinearStiffnessByLengthZ, optional v5_RotationalStiffnessByLengthX, optional v6_RotationalStiffnessByLengthY, optional v7_RotationalStiffnessByLengthZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_LinearStiffnessByLengthX) { e->setArgument(1,(*v2_LinearStiffnessByLengthX)); } else { e->setArgument(1); } ; if (v3_LinearStiffnessByLengthY) { e->setArgument(2,(*v3_LinearStiffnessByLengthY)); } else { e->setArgument(2); } ; if (v4_LinearStiffnessByLengthZ) { e->setArgument(3,(*v4_LinearStiffnessByLengthZ)); } else { e->setArgument(3); } ; if (v5_RotationalStiffnessByLengthX) { e->setArgument(4,(*v5_RotationalStiffnessByLengthX)); } else { e->setArgument(4); } ; if (v6_RotationalStiffnessByLengthY) { e->setArgument(5,(*v6_RotationalStiffnessByLengthY)); } else { e->setArgument(5); } ; if (v7_RotationalStiffnessByLengthZ) { e->setArgument(6,(*v7_RotationalStiffnessByLengthZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundaryFaceCondition bool IfcBoundaryFaceCondition::hasLinearStiffnessByAreaX() { return !entity->getArgument(1)->isNull(); } IfcModulusOfSubgradeReactionMeasure IfcBoundaryFaceCondition::LinearStiffnessByAreaX() { return *entity->getArgument(1); } @@ -5271,7 +5271,7 @@ bool IfcBoundaryFaceCondition::is(Type::Enum v) const { return v == Type::IfcBou Type::Enum IfcBoundaryFaceCondition::type() const { return Type::IfcBoundaryFaceCondition; } Type::Enum IfcBoundaryFaceCondition::Class() { return Type::IfcBoundaryFaceCondition; } IfcBoundaryFaceCondition::IfcBoundaryFaceCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundaryFaceCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundaryFaceCondition::IfcBoundaryFaceCondition(IfcLabel v1_Name, IfcModulusOfSubgradeReactionMeasure v2_LinearStiffnessByAreaX, IfcModulusOfSubgradeReactionMeasure v3_LinearStiffnessByAreaY, IfcModulusOfSubgradeReactionMeasure v4_LinearStiffnessByAreaZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LinearStiffnessByAreaX); e->setArgument(2,v3_LinearStiffnessByAreaY); e->setArgument(3,v4_LinearStiffnessByAreaZ); entity = e; } +IfcBoundaryFaceCondition::IfcBoundaryFaceCondition(optional v1_Name, optional v2_LinearStiffnessByAreaX, optional v3_LinearStiffnessByAreaY, optional v4_LinearStiffnessByAreaZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_LinearStiffnessByAreaX) { e->setArgument(1,(*v2_LinearStiffnessByAreaX)); } else { e->setArgument(1); } ; if (v3_LinearStiffnessByAreaY) { e->setArgument(2,(*v3_LinearStiffnessByAreaY)); } else { e->setArgument(2); } ; if (v4_LinearStiffnessByAreaZ) { e->setArgument(3,(*v4_LinearStiffnessByAreaZ)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundaryNodeCondition bool IfcBoundaryNodeCondition::hasLinearStiffnessX() { return !entity->getArgument(1)->isNull(); } IfcLinearStiffnessMeasure IfcBoundaryNodeCondition::LinearStiffnessX() { return *entity->getArgument(1); } @@ -5295,7 +5295,7 @@ bool IfcBoundaryNodeCondition::is(Type::Enum v) const { return v == Type::IfcBou Type::Enum IfcBoundaryNodeCondition::type() const { return Type::IfcBoundaryNodeCondition; } Type::Enum IfcBoundaryNodeCondition::Class() { return Type::IfcBoundaryNodeCondition; } IfcBoundaryNodeCondition::IfcBoundaryNodeCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundaryNodeCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundaryNodeCondition::IfcBoundaryNodeCondition(IfcLabel v1_Name, IfcLinearStiffnessMeasure v2_LinearStiffnessX, IfcLinearStiffnessMeasure v3_LinearStiffnessY, IfcLinearStiffnessMeasure v4_LinearStiffnessZ, IfcRotationalStiffnessMeasure v5_RotationalStiffnessX, IfcRotationalStiffnessMeasure v6_RotationalStiffnessY, IfcRotationalStiffnessMeasure v7_RotationalStiffnessZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LinearStiffnessX); e->setArgument(2,v3_LinearStiffnessY); e->setArgument(3,v4_LinearStiffnessZ); e->setArgument(4,v5_RotationalStiffnessX); e->setArgument(5,v6_RotationalStiffnessY); e->setArgument(6,v7_RotationalStiffnessZ); entity = e; } +IfcBoundaryNodeCondition::IfcBoundaryNodeCondition(optional v1_Name, optional v2_LinearStiffnessX, optional v3_LinearStiffnessY, optional v4_LinearStiffnessZ, optional v5_RotationalStiffnessX, optional v6_RotationalStiffnessY, optional v7_RotationalStiffnessZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_LinearStiffnessX) { e->setArgument(1,(*v2_LinearStiffnessX)); } else { e->setArgument(1); } ; if (v3_LinearStiffnessY) { e->setArgument(2,(*v3_LinearStiffnessY)); } else { e->setArgument(2); } ; if (v4_LinearStiffnessZ) { e->setArgument(3,(*v4_LinearStiffnessZ)); } else { e->setArgument(3); } ; if (v5_RotationalStiffnessX) { e->setArgument(4,(*v5_RotationalStiffnessX)); } else { e->setArgument(4); } ; if (v6_RotationalStiffnessY) { e->setArgument(5,(*v6_RotationalStiffnessY)); } else { e->setArgument(5); } ; if (v7_RotationalStiffnessZ) { e->setArgument(6,(*v7_RotationalStiffnessZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundaryNodeConditionWarping bool IfcBoundaryNodeConditionWarping::hasWarpingStiffness() { return !entity->getArgument(7)->isNull(); } IfcWarpingMomentMeasure IfcBoundaryNodeConditionWarping::WarpingStiffness() { return *entity->getArgument(7); } @@ -5304,7 +5304,7 @@ bool IfcBoundaryNodeConditionWarping::is(Type::Enum v) const { return v == Type: Type::Enum IfcBoundaryNodeConditionWarping::type() const { return Type::IfcBoundaryNodeConditionWarping; } Type::Enum IfcBoundaryNodeConditionWarping::Class() { return Type::IfcBoundaryNodeConditionWarping; } IfcBoundaryNodeConditionWarping::IfcBoundaryNodeConditionWarping(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundaryNodeConditionWarping)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundaryNodeConditionWarping::IfcBoundaryNodeConditionWarping(IfcLabel v1_Name, IfcLinearStiffnessMeasure v2_LinearStiffnessX, IfcLinearStiffnessMeasure v3_LinearStiffnessY, IfcLinearStiffnessMeasure v4_LinearStiffnessZ, IfcRotationalStiffnessMeasure v5_RotationalStiffnessX, IfcRotationalStiffnessMeasure v6_RotationalStiffnessY, IfcRotationalStiffnessMeasure v7_RotationalStiffnessZ, IfcWarpingMomentMeasure v8_WarpingStiffness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LinearStiffnessX); e->setArgument(2,v3_LinearStiffnessY); e->setArgument(3,v4_LinearStiffnessZ); e->setArgument(4,v5_RotationalStiffnessX); e->setArgument(5,v6_RotationalStiffnessY); e->setArgument(6,v7_RotationalStiffnessZ); e->setArgument(7,v8_WarpingStiffness); entity = e; } +IfcBoundaryNodeConditionWarping::IfcBoundaryNodeConditionWarping(optional v1_Name, optional v2_LinearStiffnessX, optional v3_LinearStiffnessY, optional v4_LinearStiffnessZ, optional v5_RotationalStiffnessX, optional v6_RotationalStiffnessY, optional v7_RotationalStiffnessZ, optional v8_WarpingStiffness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_LinearStiffnessX) { e->setArgument(1,(*v2_LinearStiffnessX)); } else { e->setArgument(1); } ; if (v3_LinearStiffnessY) { e->setArgument(2,(*v3_LinearStiffnessY)); } else { e->setArgument(2); } ; if (v4_LinearStiffnessZ) { e->setArgument(3,(*v4_LinearStiffnessZ)); } else { e->setArgument(3); } ; if (v5_RotationalStiffnessX) { e->setArgument(4,(*v5_RotationalStiffnessX)); } else { e->setArgument(4); } ; if (v6_RotationalStiffnessY) { e->setArgument(5,(*v6_RotationalStiffnessY)); } else { e->setArgument(5); } ; if (v7_RotationalStiffnessZ) { e->setArgument(6,(*v7_RotationalStiffnessZ)); } else { e->setArgument(6); } ; if (v8_WarpingStiffness) { e->setArgument(7,(*v8_WarpingStiffness)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoundedCurve bool IfcBoundedCurve::is(Type::Enum v) const { return v == Type::IfcBoundedCurve || IfcCurve::is(v); } Type::Enum IfcBoundedCurve::type() const { return Type::IfcBoundedCurve; } @@ -5328,7 +5328,7 @@ bool IfcBoundingBox::is(Type::Enum v) const { return v == Type::IfcBoundingBox | Type::Enum IfcBoundingBox::type() const { return Type::IfcBoundingBox; } Type::Enum IfcBoundingBox::Class() { return Type::IfcBoundingBox; } IfcBoundingBox::IfcBoundingBox(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoundingBox)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoundingBox::IfcBoundingBox(IfcCartesianPoint* v1_Corner, IfcPositiveLengthMeasure v2_XDim, IfcPositiveLengthMeasure v3_YDim, IfcPositiveLengthMeasure v4_ZDim) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Corner); e->setArgument(1,v2_XDim); e->setArgument(2,v3_YDim); e->setArgument(3,v4_ZDim); entity = e; } +IfcBoundingBox::IfcBoundingBox(IfcCartesianPoint* v1_Corner, IfcPositiveLengthMeasure v2_XDim, IfcPositiveLengthMeasure v3_YDim, IfcPositiveLengthMeasure v4_ZDim) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Corner)); e->setArgument(1,(v2_XDim)); e->setArgument(2,(v3_YDim)); e->setArgument(3,(v4_ZDim)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBoxedHalfSpace IfcBoundingBox* IfcBoxedHalfSpace::Enclosure() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcBoxedHalfSpace::setEnclosure(IfcBoundingBox* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5336,7 +5336,7 @@ bool IfcBoxedHalfSpace::is(Type::Enum v) const { return v == Type::IfcBoxedHalfS Type::Enum IfcBoxedHalfSpace::type() const { return Type::IfcBoxedHalfSpace; } Type::Enum IfcBoxedHalfSpace::Class() { return Type::IfcBoxedHalfSpace; } IfcBoxedHalfSpace::IfcBoxedHalfSpace(IfcAbstractEntityPtr e) { if (!is(Type::IfcBoxedHalfSpace)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBoxedHalfSpace::IfcBoxedHalfSpace(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag, IfcBoundingBox* v3_Enclosure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BaseSurface); e->setArgument(1,v2_AgreementFlag); e->setArgument(2,v3_Enclosure); entity = e; } +IfcBoxedHalfSpace::IfcBoxedHalfSpace(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag, IfcBoundingBox* v3_Enclosure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BaseSurface)); e->setArgument(1,(v2_AgreementFlag)); e->setArgument(2,(v3_Enclosure)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuilding bool IfcBuilding::hasElevationOfRefHeight() { return !entity->getArgument(9)->isNull(); } IfcLengthMeasure IfcBuilding::ElevationOfRefHeight() { return *entity->getArgument(9); } @@ -5351,25 +5351,25 @@ bool IfcBuilding::is(Type::Enum v) const { return v == Type::IfcBuilding || IfcS Type::Enum IfcBuilding::type() const { return Type::IfcBuilding; } Type::Enum IfcBuilding::Class() { return Type::IfcBuilding; } IfcBuilding::IfcBuilding(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuilding)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuilding::IfcBuilding(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcLengthMeasure v10_ElevationOfRefHeight, IfcLengthMeasure v11_ElevationOfTerrain, IfcPostalAddress* v12_BuildingAddress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_LongName); e->setArgument(8,v9_CompositionType); e->setArgument(9,v10_ElevationOfRefHeight); e->setArgument(10,v11_ElevationOfTerrain); e->setArgument(11,v12_BuildingAddress); entity = e; } +IfcBuilding::IfcBuilding(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_ElevationOfRefHeight, optional v11_ElevationOfTerrain, IfcPostalAddress* v12_BuildingAddress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_LongName) { e->setArgument(7,(*v8_LongName)); } else { e->setArgument(7); } ; e->setArgument(8,v9_CompositionType,IfcElementCompositionEnum::ToString(v9_CompositionType)); if (v10_ElevationOfRefHeight) { e->setArgument(9,(*v10_ElevationOfRefHeight)); } else { e->setArgument(9); } ; if (v11_ElevationOfTerrain) { e->setArgument(10,(*v11_ElevationOfTerrain)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_BuildingAddress)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElement bool IfcBuildingElement::is(Type::Enum v) const { return v == Type::IfcBuildingElement || IfcElement::is(v); } Type::Enum IfcBuildingElement::type() const { return Type::IfcBuildingElement; } Type::Enum IfcBuildingElement::Class() { return Type::IfcBuildingElement; } IfcBuildingElement::IfcBuildingElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElement::IfcBuildingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcBuildingElement::IfcBuildingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElementComponent bool IfcBuildingElementComponent::is(Type::Enum v) const { return v == Type::IfcBuildingElementComponent || IfcBuildingElement::is(v); } Type::Enum IfcBuildingElementComponent::type() const { return Type::IfcBuildingElementComponent; } Type::Enum IfcBuildingElementComponent::Class() { return Type::IfcBuildingElementComponent; } IfcBuildingElementComponent::IfcBuildingElementComponent(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElementComponent)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElementComponent::IfcBuildingElementComponent(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcBuildingElementComponent::IfcBuildingElementComponent(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElementPart bool IfcBuildingElementPart::is(Type::Enum v) const { return v == Type::IfcBuildingElementPart || IfcBuildingElementComponent::is(v); } Type::Enum IfcBuildingElementPart::type() const { return Type::IfcBuildingElementPart; } Type::Enum IfcBuildingElementPart::Class() { return Type::IfcBuildingElementPart; } IfcBuildingElementPart::IfcBuildingElementPart(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElementPart)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElementPart::IfcBuildingElementPart(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcBuildingElementPart::IfcBuildingElementPart(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElementProxy bool IfcBuildingElementProxy::hasCompositionType() { return !entity->getArgument(8)->isNull(); } IfcElementCompositionEnum::IfcElementCompositionEnum IfcBuildingElementProxy::CompositionType() { return IfcElementCompositionEnum::FromString(*entity->getArgument(8)); } @@ -5378,7 +5378,7 @@ bool IfcBuildingElementProxy::is(Type::Enum v) const { return v == Type::IfcBuil Type::Enum IfcBuildingElementProxy::type() const { return Type::IfcBuildingElementProxy; } Type::Enum IfcBuildingElementProxy::Class() { return Type::IfcBuildingElementProxy; } IfcBuildingElementProxy::IfcBuildingElementProxy(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElementProxy)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElementProxy::IfcBuildingElementProxy(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_CompositionType); entity = e; } +IfcBuildingElementProxy::IfcBuildingElementProxy(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_CompositionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_CompositionType) { e->setArgument(8,*v9_CompositionType,IfcElementCompositionEnum::ToString(*v9_CompositionType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElementProxyType IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum IfcBuildingElementProxyType::PredefinedType() { return IfcBuildingElementProxyTypeEnum::FromString(*entity->getArgument(9)); } void IfcBuildingElementProxyType::setPredefinedType(IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcBuildingElementProxyTypeEnum::ToString(v)); } @@ -5386,13 +5386,13 @@ bool IfcBuildingElementProxyType::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcBuildingElementProxyType::type() const { return Type::IfcBuildingElementProxyType; } Type::Enum IfcBuildingElementProxyType::Class() { return Type::IfcBuildingElementProxyType; } IfcBuildingElementProxyType::IfcBuildingElementProxyType(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElementProxyType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElementProxyType::IfcBuildingElementProxyType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcBuildingElementProxyType::IfcBuildingElementProxyType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcBuildingElementProxyTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingElementType bool IfcBuildingElementType::is(Type::Enum v) const { return v == Type::IfcBuildingElementType || IfcElementType::is(v); } Type::Enum IfcBuildingElementType::type() const { return Type::IfcBuildingElementType; } Type::Enum IfcBuildingElementType::Class() { return Type::IfcBuildingElementType; } IfcBuildingElementType::IfcBuildingElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingElementType::IfcBuildingElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcBuildingElementType::IfcBuildingElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcBuildingStorey bool IfcBuildingStorey::hasElevation() { return !entity->getArgument(9)->isNull(); } IfcLengthMeasure IfcBuildingStorey::Elevation() { return *entity->getArgument(9); } @@ -5401,7 +5401,7 @@ bool IfcBuildingStorey::is(Type::Enum v) const { return v == Type::IfcBuildingSt Type::Enum IfcBuildingStorey::type() const { return Type::IfcBuildingStorey; } Type::Enum IfcBuildingStorey::Class() { return Type::IfcBuildingStorey; } IfcBuildingStorey::IfcBuildingStorey(IfcAbstractEntityPtr e) { if (!is(Type::IfcBuildingStorey)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcBuildingStorey::IfcBuildingStorey(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcLengthMeasure v10_Elevation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_LongName); e->setArgument(8,v9_CompositionType); e->setArgument(9,v10_Elevation); entity = e; } +IfcBuildingStorey::IfcBuildingStorey(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_Elevation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_LongName) { e->setArgument(7,(*v8_LongName)); } else { e->setArgument(7); } ; e->setArgument(8,v9_CompositionType,IfcElementCompositionEnum::ToString(v9_CompositionType)); if (v10_Elevation) { e->setArgument(9,(*v10_Elevation)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCShapeProfileDef IfcPositiveLengthMeasure IfcCShapeProfileDef::Depth() { return *entity->getArgument(3); } void IfcCShapeProfileDef::setDepth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -5421,7 +5421,7 @@ bool IfcCShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcCShapePr Type::Enum IfcCShapeProfileDef::type() const { return Type::IfcCShapeProfileDef; } Type::Enum IfcCShapeProfileDef::Class() { return Type::IfcCShapeProfileDef; } IfcCShapeProfileDef::IfcCShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCShapeProfileDef::IfcCShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_Girth, IfcPositiveLengthMeasure v8_InternalFilletRadius, IfcPositiveLengthMeasure v9_CentreOfGravityInX) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Depth); e->setArgument(4,v5_Width); e->setArgument(5,v6_WallThickness); e->setArgument(6,v7_Girth); e->setArgument(7,v8_InternalFilletRadius); e->setArgument(8,v9_CentreOfGravityInX); entity = e; } +IfcCShapeProfileDef::IfcCShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_Girth, optional v8_InternalFilletRadius, optional v9_CentreOfGravityInX) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Depth)); e->setArgument(4,(v5_Width)); e->setArgument(5,(v6_WallThickness)); e->setArgument(6,(v7_Girth)); if (v8_InternalFilletRadius) { e->setArgument(7,(*v8_InternalFilletRadius)); } else { e->setArgument(7); } ; if (v9_CentreOfGravityInX) { e->setArgument(8,(*v9_CentreOfGravityInX)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCableCarrierFittingType IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum IfcCableCarrierFittingType::PredefinedType() { return IfcCableCarrierFittingTypeEnum::FromString(*entity->getArgument(9)); } void IfcCableCarrierFittingType::setPredefinedType(IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCableCarrierFittingTypeEnum::ToString(v)); } @@ -5429,7 +5429,7 @@ bool IfcCableCarrierFittingType::is(Type::Enum v) const { return v == Type::IfcC Type::Enum IfcCableCarrierFittingType::type() const { return Type::IfcCableCarrierFittingType; } Type::Enum IfcCableCarrierFittingType::Class() { return Type::IfcCableCarrierFittingType; } IfcCableCarrierFittingType::IfcCableCarrierFittingType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCableCarrierFittingType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCableCarrierFittingType::IfcCableCarrierFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCableCarrierFittingType::IfcCableCarrierFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCableCarrierFittingTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCableCarrierSegmentType IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum IfcCableCarrierSegmentType::PredefinedType() { return IfcCableCarrierSegmentTypeEnum::FromString(*entity->getArgument(9)); } void IfcCableCarrierSegmentType::setPredefinedType(IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCableCarrierSegmentTypeEnum::ToString(v)); } @@ -5437,7 +5437,7 @@ bool IfcCableCarrierSegmentType::is(Type::Enum v) const { return v == Type::IfcC Type::Enum IfcCableCarrierSegmentType::type() const { return Type::IfcCableCarrierSegmentType; } Type::Enum IfcCableCarrierSegmentType::Class() { return Type::IfcCableCarrierSegmentType; } IfcCableCarrierSegmentType::IfcCableCarrierSegmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCableCarrierSegmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCableCarrierSegmentType::IfcCableCarrierSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCableCarrierSegmentType::IfcCableCarrierSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCableCarrierSegmentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCableSegmentType IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum IfcCableSegmentType::PredefinedType() { return IfcCableSegmentTypeEnum::FromString(*entity->getArgument(9)); } void IfcCableSegmentType::setPredefinedType(IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCableSegmentTypeEnum::ToString(v)); } @@ -5445,7 +5445,7 @@ bool IfcCableSegmentType::is(Type::Enum v) const { return v == Type::IfcCableSeg Type::Enum IfcCableSegmentType::type() const { return Type::IfcCableSegmentType; } Type::Enum IfcCableSegmentType::Class() { return Type::IfcCableSegmentType; } IfcCableSegmentType::IfcCableSegmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCableSegmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCableSegmentType::IfcCableSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCableSegmentType::IfcCableSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCableSegmentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCalendarDate IfcDayInMonthNumber IfcCalendarDate::DayComponent() { return *entity->getArgument(0); } void IfcCalendarDate::setDayComponent(IfcDayInMonthNumber v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5457,7 +5457,7 @@ bool IfcCalendarDate::is(Type::Enum v) const { return v == Type::IfcCalendarDate Type::Enum IfcCalendarDate::type() const { return Type::IfcCalendarDate; } Type::Enum IfcCalendarDate::Class() { return Type::IfcCalendarDate; } IfcCalendarDate::IfcCalendarDate(IfcAbstractEntityPtr e) { if (!is(Type::IfcCalendarDate)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCalendarDate::IfcCalendarDate(IfcDayInMonthNumber v1_DayComponent, IfcMonthInYearNumber v2_MonthComponent, IfcYearNumber v3_YearComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DayComponent); e->setArgument(1,v2_MonthComponent); e->setArgument(2,v3_YearComponent); entity = e; } +IfcCalendarDate::IfcCalendarDate(IfcDayInMonthNumber v1_DayComponent, IfcMonthInYearNumber v2_MonthComponent, IfcYearNumber v3_YearComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DayComponent)); e->setArgument(1,(v2_MonthComponent)); e->setArgument(2,(v3_YearComponent)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianPoint std::vector /*[1:3]*/ IfcCartesianPoint::Coordinates() { return *entity->getArgument(0); } void IfcCartesianPoint::setCoordinates(std::vector /*[1:3]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5465,7 +5465,7 @@ bool IfcCartesianPoint::is(Type::Enum v) const { return v == Type::IfcCartesianP Type::Enum IfcCartesianPoint::type() const { return Type::IfcCartesianPoint; } Type::Enum IfcCartesianPoint::Class() { return Type::IfcCartesianPoint; } IfcCartesianPoint::IfcCartesianPoint(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianPoint)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianPoint::IfcCartesianPoint(std::vector /*[1:3]*/ v1_Coordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Coordinates); entity = e; } +IfcCartesianPoint::IfcCartesianPoint(std::vector /*[1:3]*/ v1_Coordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Coordinates)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianTransformationOperator bool IfcCartesianTransformationOperator::hasAxis1() { return !entity->getArgument(0)->isNull(); } IfcDirection* IfcCartesianTransformationOperator::Axis1() { return reinterpret_pointer_cast(*entity->getArgument(0)); } @@ -5482,13 +5482,13 @@ bool IfcCartesianTransformationOperator::is(Type::Enum v) const { return v == Ty Type::Enum IfcCartesianTransformationOperator::type() const { return Type::IfcCartesianTransformationOperator; } Type::Enum IfcCartesianTransformationOperator::Class() { return Type::IfcCartesianTransformationOperator; } IfcCartesianTransformationOperator::IfcCartesianTransformationOperator(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianTransformationOperator)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianTransformationOperator::IfcCartesianTransformationOperator(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Axis1); e->setArgument(1,v2_Axis2); e->setArgument(2,v3_LocalOrigin); e->setArgument(3,v4_Scale); entity = e; } +IfcCartesianTransformationOperator::IfcCartesianTransformationOperator(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Axis1)); e->setArgument(1,(v2_Axis2)); e->setArgument(2,(v3_LocalOrigin)); if (v4_Scale) { e->setArgument(3,(*v4_Scale)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianTransformationOperator2D bool IfcCartesianTransformationOperator2D::is(Type::Enum v) const { return v == Type::IfcCartesianTransformationOperator2D || IfcCartesianTransformationOperator::is(v); } Type::Enum IfcCartesianTransformationOperator2D::type() const { return Type::IfcCartesianTransformationOperator2D; } Type::Enum IfcCartesianTransformationOperator2D::Class() { return Type::IfcCartesianTransformationOperator2D; } IfcCartesianTransformationOperator2D::IfcCartesianTransformationOperator2D(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianTransformationOperator2D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianTransformationOperator2D::IfcCartesianTransformationOperator2D(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Axis1); e->setArgument(1,v2_Axis2); e->setArgument(2,v3_LocalOrigin); e->setArgument(3,v4_Scale); entity = e; } +IfcCartesianTransformationOperator2D::IfcCartesianTransformationOperator2D(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Axis1)); e->setArgument(1,(v2_Axis2)); e->setArgument(2,(v3_LocalOrigin)); if (v4_Scale) { e->setArgument(3,(*v4_Scale)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianTransformationOperator2DnonUniform bool IfcCartesianTransformationOperator2DnonUniform::hasScale2() { return !entity->getArgument(4)->isNull(); } double IfcCartesianTransformationOperator2DnonUniform::Scale2() { return *entity->getArgument(4); } @@ -5497,7 +5497,7 @@ bool IfcCartesianTransformationOperator2DnonUniform::is(Type::Enum v) const { re Type::Enum IfcCartesianTransformationOperator2DnonUniform::type() const { return Type::IfcCartesianTransformationOperator2DnonUniform; } Type::Enum IfcCartesianTransformationOperator2DnonUniform::Class() { return Type::IfcCartesianTransformationOperator2DnonUniform; } IfcCartesianTransformationOperator2DnonUniform::IfcCartesianTransformationOperator2DnonUniform(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianTransformationOperator2DnonUniform)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianTransformationOperator2DnonUniform::IfcCartesianTransformationOperator2DnonUniform(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, double v5_Scale2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Axis1); e->setArgument(1,v2_Axis2); e->setArgument(2,v3_LocalOrigin); e->setArgument(3,v4_Scale); e->setArgument(4,v5_Scale2); entity = e; } +IfcCartesianTransformationOperator2DnonUniform::IfcCartesianTransformationOperator2DnonUniform(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, optional v5_Scale2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Axis1)); e->setArgument(1,(v2_Axis2)); e->setArgument(2,(v3_LocalOrigin)); if (v4_Scale) { e->setArgument(3,(*v4_Scale)); } else { e->setArgument(3); } ; if (v5_Scale2) { e->setArgument(4,(*v5_Scale2)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianTransformationOperator3D bool IfcCartesianTransformationOperator3D::hasAxis3() { return !entity->getArgument(4)->isNull(); } IfcDirection* IfcCartesianTransformationOperator3D::Axis3() { return reinterpret_pointer_cast(*entity->getArgument(4)); } @@ -5506,7 +5506,7 @@ bool IfcCartesianTransformationOperator3D::is(Type::Enum v) const { return v == Type::Enum IfcCartesianTransformationOperator3D::type() const { return Type::IfcCartesianTransformationOperator3D; } Type::Enum IfcCartesianTransformationOperator3D::Class() { return Type::IfcCartesianTransformationOperator3D; } IfcCartesianTransformationOperator3D::IfcCartesianTransformationOperator3D(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianTransformationOperator3D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianTransformationOperator3D::IfcCartesianTransformationOperator3D(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, IfcDirection* v5_Axis3) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Axis1); e->setArgument(1,v2_Axis2); e->setArgument(2,v3_LocalOrigin); e->setArgument(3,v4_Scale); e->setArgument(4,v5_Axis3); entity = e; } +IfcCartesianTransformationOperator3D::IfcCartesianTransformationOperator3D(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, IfcDirection* v5_Axis3) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Axis1)); e->setArgument(1,(v2_Axis2)); e->setArgument(2,(v3_LocalOrigin)); if (v4_Scale) { e->setArgument(3,(*v4_Scale)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Axis3)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCartesianTransformationOperator3DnonUniform bool IfcCartesianTransformationOperator3DnonUniform::hasScale2() { return !entity->getArgument(5)->isNull(); } double IfcCartesianTransformationOperator3DnonUniform::Scale2() { return *entity->getArgument(5); } @@ -5518,7 +5518,7 @@ bool IfcCartesianTransformationOperator3DnonUniform::is(Type::Enum v) const { re Type::Enum IfcCartesianTransformationOperator3DnonUniform::type() const { return Type::IfcCartesianTransformationOperator3DnonUniform; } Type::Enum IfcCartesianTransformationOperator3DnonUniform::Class() { return Type::IfcCartesianTransformationOperator3DnonUniform; } IfcCartesianTransformationOperator3DnonUniform::IfcCartesianTransformationOperator3DnonUniform(IfcAbstractEntityPtr e) { if (!is(Type::IfcCartesianTransformationOperator3DnonUniform)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCartesianTransformationOperator3DnonUniform::IfcCartesianTransformationOperator3DnonUniform(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, IfcDirection* v5_Axis3, double v6_Scale2, double v7_Scale3) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Axis1); e->setArgument(1,v2_Axis2); e->setArgument(2,v3_LocalOrigin); e->setArgument(3,v4_Scale); e->setArgument(4,v5_Axis3); e->setArgument(5,v6_Scale2); e->setArgument(6,v7_Scale3); entity = e; } +IfcCartesianTransformationOperator3DnonUniform::IfcCartesianTransformationOperator3DnonUniform(IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, IfcDirection* v5_Axis3, optional v6_Scale2, optional v7_Scale3) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Axis1)); e->setArgument(1,(v2_Axis2)); e->setArgument(2,(v3_LocalOrigin)); if (v4_Scale) { e->setArgument(3,(*v4_Scale)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Axis3)); if (v6_Scale2) { e->setArgument(5,(*v6_Scale2)); } else { e->setArgument(5); } ; if (v7_Scale3) { e->setArgument(6,(*v7_Scale3)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCenterLineProfileDef IfcPositiveLengthMeasure IfcCenterLineProfileDef::Thickness() { return *entity->getArgument(3); } void IfcCenterLineProfileDef::setThickness(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -5526,7 +5526,7 @@ bool IfcCenterLineProfileDef::is(Type::Enum v) const { return v == Type::IfcCent Type::Enum IfcCenterLineProfileDef::type() const { return Type::IfcCenterLineProfileDef; } Type::Enum IfcCenterLineProfileDef::Class() { return Type::IfcCenterLineProfileDef; } IfcCenterLineProfileDef::IfcCenterLineProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCenterLineProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCenterLineProfileDef::IfcCenterLineProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcBoundedCurve* v3_Curve, IfcPositiveLengthMeasure v4_Thickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Curve); e->setArgument(3,v4_Thickness); entity = e; } +IfcCenterLineProfileDef::IfcCenterLineProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcBoundedCurve* v3_Curve, IfcPositiveLengthMeasure v4_Thickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Curve)); e->setArgument(3,(v4_Thickness)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcChamferEdgeFeature bool IfcChamferEdgeFeature::hasWidth() { return !entity->getArgument(9)->isNull(); } IfcPositiveLengthMeasure IfcChamferEdgeFeature::Width() { return *entity->getArgument(9); } @@ -5538,7 +5538,7 @@ bool IfcChamferEdgeFeature::is(Type::Enum v) const { return v == Type::IfcChamfe Type::Enum IfcChamferEdgeFeature::type() const { return Type::IfcChamferEdgeFeature; } Type::Enum IfcChamferEdgeFeature::Class() { return Type::IfcChamferEdgeFeature; } IfcChamferEdgeFeature::IfcChamferEdgeFeature(IfcAbstractEntityPtr e) { if (!is(Type::IfcChamferEdgeFeature)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcChamferEdgeFeature::IfcChamferEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength, IfcPositiveLengthMeasure v10_Width, IfcPositiveLengthMeasure v11_Height) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_FeatureLength); e->setArgument(9,v10_Width); e->setArgument(10,v11_Height); entity = e; } +IfcChamferEdgeFeature::IfcChamferEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength, optional v10_Width, optional v11_Height) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_FeatureLength) { e->setArgument(8,(*v9_FeatureLength)); } else { e->setArgument(8); } ; if (v10_Width) { e->setArgument(9,(*v10_Width)); } else { e->setArgument(9); } ; if (v11_Height) { e->setArgument(10,(*v11_Height)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcChillerType IfcChillerTypeEnum::IfcChillerTypeEnum IfcChillerType::PredefinedType() { return IfcChillerTypeEnum::FromString(*entity->getArgument(9)); } void IfcChillerType::setPredefinedType(IfcChillerTypeEnum::IfcChillerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcChillerTypeEnum::ToString(v)); } @@ -5546,7 +5546,7 @@ bool IfcChillerType::is(Type::Enum v) const { return v == Type::IfcChillerType | Type::Enum IfcChillerType::type() const { return Type::IfcChillerType; } Type::Enum IfcChillerType::Class() { return Type::IfcChillerType; } IfcChillerType::IfcChillerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcChillerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcChillerType::IfcChillerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcChillerTypeEnum::IfcChillerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcChillerType::IfcChillerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcChillerTypeEnum::IfcChillerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcChillerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCircle IfcPositiveLengthMeasure IfcCircle::Radius() { return *entity->getArgument(1); } void IfcCircle::setRadius(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -5554,7 +5554,7 @@ bool IfcCircle::is(Type::Enum v) const { return v == Type::IfcCircle || IfcConic Type::Enum IfcCircle::type() const { return Type::IfcCircle; } Type::Enum IfcCircle::Class() { return Type::IfcCircle; } IfcCircle::IfcCircle(IfcAbstractEntityPtr e) { if (!is(Type::IfcCircle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCircle::IfcCircle(IfcAxis2Placement v1_Position, IfcPositiveLengthMeasure v2_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_Radius); entity = e; } +IfcCircle::IfcCircle(IfcAxis2Placement v1_Position, IfcPositiveLengthMeasure v2_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_Radius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCircleHollowProfileDef IfcPositiveLengthMeasure IfcCircleHollowProfileDef::WallThickness() { return *entity->getArgument(4); } void IfcCircleHollowProfileDef::setWallThickness(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -5562,7 +5562,7 @@ bool IfcCircleHollowProfileDef::is(Type::Enum v) const { return v == Type::IfcCi Type::Enum IfcCircleHollowProfileDef::type() const { return Type::IfcCircleHollowProfileDef; } Type::Enum IfcCircleHollowProfileDef::Class() { return Type::IfcCircleHollowProfileDef; } IfcCircleHollowProfileDef::IfcCircleHollowProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCircleHollowProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCircleHollowProfileDef::IfcCircleHollowProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius, IfcPositiveLengthMeasure v5_WallThickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Radius); e->setArgument(4,v5_WallThickness); entity = e; } +IfcCircleHollowProfileDef::IfcCircleHollowProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius, IfcPositiveLengthMeasure v5_WallThickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Radius)); e->setArgument(4,(v5_WallThickness)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCircleProfileDef IfcPositiveLengthMeasure IfcCircleProfileDef::Radius() { return *entity->getArgument(3); } void IfcCircleProfileDef::setRadius(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -5570,7 +5570,7 @@ bool IfcCircleProfileDef::is(Type::Enum v) const { return v == Type::IfcCirclePr Type::Enum IfcCircleProfileDef::type() const { return Type::IfcCircleProfileDef; } Type::Enum IfcCircleProfileDef::Class() { return Type::IfcCircleProfileDef; } IfcCircleProfileDef::IfcCircleProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCircleProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCircleProfileDef::IfcCircleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Radius); entity = e; } +IfcCircleProfileDef::IfcCircleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Radius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassification IfcLabel IfcClassification::Source() { return *entity->getArgument(0); } void IfcClassification::setSource(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5586,7 +5586,7 @@ bool IfcClassification::is(Type::Enum v) const { return v == Type::IfcClassifica Type::Enum IfcClassification::type() const { return Type::IfcClassification; } Type::Enum IfcClassification::Class() { return Type::IfcClassification; } IfcClassification::IfcClassification(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassification)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassification::IfcClassification(IfcLabel v1_Source, IfcLabel v2_Edition, IfcCalendarDate* v3_EditionDate, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Source); e->setArgument(1,v2_Edition); e->setArgument(2,v3_EditionDate); e->setArgument(3,v4_Name); entity = e; } +IfcClassification::IfcClassification(IfcLabel v1_Source, IfcLabel v2_Edition, IfcCalendarDate* v3_EditionDate, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Source)); e->setArgument(1,(v2_Edition)); e->setArgument(2,(v3_EditionDate)); e->setArgument(3,(v4_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassificationItem IfcClassificationNotationFacet* IfcClassificationItem::Notation() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcClassificationItem::setNotation(IfcClassificationNotationFacet* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5601,7 +5601,7 @@ bool IfcClassificationItem::is(Type::Enum v) const { return v == Type::IfcClassi Type::Enum IfcClassificationItem::type() const { return Type::IfcClassificationItem; } Type::Enum IfcClassificationItem::Class() { return Type::IfcClassificationItem; } IfcClassificationItem::IfcClassificationItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassificationItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassificationItem::IfcClassificationItem(IfcClassificationNotationFacet* v1_Notation, IfcClassification* v2_ItemOf, IfcLabel v3_Title) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Notation); e->setArgument(1,v2_ItemOf); e->setArgument(2,v3_Title); entity = e; } +IfcClassificationItem::IfcClassificationItem(IfcClassificationNotationFacet* v1_Notation, IfcClassification* v2_ItemOf, IfcLabel v3_Title) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Notation)); e->setArgument(1,(v2_ItemOf)); e->setArgument(2,(v3_Title)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassificationItemRelationship IfcClassificationItem* IfcClassificationItemRelationship::RelatingItem() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcClassificationItemRelationship::setRelatingItem(IfcClassificationItem* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5611,7 +5611,7 @@ bool IfcClassificationItemRelationship::is(Type::Enum v) const { return v == Typ Type::Enum IfcClassificationItemRelationship::type() const { return Type::IfcClassificationItemRelationship; } Type::Enum IfcClassificationItemRelationship::Class() { return Type::IfcClassificationItemRelationship; } IfcClassificationItemRelationship::IfcClassificationItemRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassificationItemRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassificationItemRelationship::IfcClassificationItemRelationship(IfcClassificationItem* v1_RelatingItem, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedItems) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelatingItem); e->setArgument(1,v2_RelatedItems->generalize()); entity = e; } +IfcClassificationItemRelationship::IfcClassificationItemRelationship(IfcClassificationItem* v1_RelatingItem, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedItems) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelatingItem)); e->setArgument(1,(v2_RelatedItems)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassificationNotation SHARED_PTR< IfcTemplatedEntityList > IfcClassificationNotation::NotationFacets() { RETURN_AS_LIST(IfcClassificationNotationFacet,0) } void IfcClassificationNotation::setNotationFacets(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -5619,7 +5619,7 @@ bool IfcClassificationNotation::is(Type::Enum v) const { return v == Type::IfcCl Type::Enum IfcClassificationNotation::type() const { return Type::IfcClassificationNotation; } Type::Enum IfcClassificationNotation::Class() { return Type::IfcClassificationNotation; } IfcClassificationNotation::IfcClassificationNotation(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassificationNotation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassificationNotation::IfcClassificationNotation(SHARED_PTR< IfcTemplatedEntityList > v1_NotationFacets) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_NotationFacets->generalize()); entity = e; } +IfcClassificationNotation::IfcClassificationNotation(SHARED_PTR< IfcTemplatedEntityList > v1_NotationFacets) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_NotationFacets)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassificationNotationFacet IfcLabel IfcClassificationNotationFacet::NotationValue() { return *entity->getArgument(0); } void IfcClassificationNotationFacet::setNotationValue(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5627,7 +5627,7 @@ bool IfcClassificationNotationFacet::is(Type::Enum v) const { return v == Type:: Type::Enum IfcClassificationNotationFacet::type() const { return Type::IfcClassificationNotationFacet; } Type::Enum IfcClassificationNotationFacet::Class() { return Type::IfcClassificationNotationFacet; } IfcClassificationNotationFacet::IfcClassificationNotationFacet(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassificationNotationFacet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassificationNotationFacet::IfcClassificationNotationFacet(IfcLabel v1_NotationValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_NotationValue); entity = e; } +IfcClassificationNotationFacet::IfcClassificationNotationFacet(IfcLabel v1_NotationValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_NotationValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClassificationReference bool IfcClassificationReference::hasReferencedSource() { return !entity->getArgument(3)->isNull(); } IfcClassification* IfcClassificationReference::ReferencedSource() { return reinterpret_pointer_cast(*entity->getArgument(3)); } @@ -5636,13 +5636,13 @@ bool IfcClassificationReference::is(Type::Enum v) const { return v == Type::IfcC Type::Enum IfcClassificationReference::type() const { return Type::IfcClassificationReference; } Type::Enum IfcClassificationReference::Class() { return Type::IfcClassificationReference; } IfcClassificationReference::IfcClassificationReference(IfcAbstractEntityPtr e) { if (!is(Type::IfcClassificationReference)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClassificationReference::IfcClassificationReference(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name, IfcClassification* v4_ReferencedSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); e->setArgument(3,v4_ReferencedSource); entity = e; } +IfcClassificationReference::IfcClassificationReference(optional v1_Location, optional v2_ItemReference, optional v3_Name, IfcClassification* v4_ReferencedSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_ReferencedSource)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcClosedShell bool IfcClosedShell::is(Type::Enum v) const { return v == Type::IfcClosedShell || IfcConnectedFaceSet::is(v); } Type::Enum IfcClosedShell::type() const { return Type::IfcClosedShell; } Type::Enum IfcClosedShell::Class() { return Type::IfcClosedShell; } IfcClosedShell::IfcClosedShell(IfcAbstractEntityPtr e) { if (!is(Type::IfcClosedShell)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcClosedShell::IfcClosedShell(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_CfsFaces->generalize()); entity = e; } +IfcClosedShell::IfcClosedShell(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_CfsFaces)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCoilType IfcCoilTypeEnum::IfcCoilTypeEnum IfcCoilType::PredefinedType() { return IfcCoilTypeEnum::FromString(*entity->getArgument(9)); } void IfcCoilType::setPredefinedType(IfcCoilTypeEnum::IfcCoilTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCoilTypeEnum::ToString(v)); } @@ -5650,7 +5650,7 @@ bool IfcCoilType::is(Type::Enum v) const { return v == Type::IfcCoilType || IfcE Type::Enum IfcCoilType::type() const { return Type::IfcCoilType; } Type::Enum IfcCoilType::Class() { return Type::IfcCoilType; } IfcCoilType::IfcCoilType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCoilType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCoilType::IfcCoilType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoilTypeEnum::IfcCoilTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCoilType::IfcCoilType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoilTypeEnum::IfcCoilTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCoilTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcColourRgb IfcNormalisedRatioMeasure IfcColourRgb::Red() { return *entity->getArgument(1); } void IfcColourRgb::setRed(IfcNormalisedRatioMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -5662,7 +5662,7 @@ bool IfcColourRgb::is(Type::Enum v) const { return v == Type::IfcColourRgb || If Type::Enum IfcColourRgb::type() const { return Type::IfcColourRgb; } Type::Enum IfcColourRgb::Class() { return Type::IfcColourRgb; } IfcColourRgb::IfcColourRgb(IfcAbstractEntityPtr e) { if (!is(Type::IfcColourRgb)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcColourRgb::IfcColourRgb(IfcLabel v1_Name, IfcNormalisedRatioMeasure v2_Red, IfcNormalisedRatioMeasure v3_Green, IfcNormalisedRatioMeasure v4_Blue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Red); e->setArgument(2,v3_Green); e->setArgument(3,v4_Blue); entity = e; } +IfcColourRgb::IfcColourRgb(optional v1_Name, IfcNormalisedRatioMeasure v2_Red, IfcNormalisedRatioMeasure v3_Green, IfcNormalisedRatioMeasure v4_Blue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_Red)); e->setArgument(2,(v3_Green)); e->setArgument(3,(v4_Blue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcColourSpecification bool IfcColourSpecification::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcColourSpecification::Name() { return *entity->getArgument(0); } @@ -5671,13 +5671,13 @@ bool IfcColourSpecification::is(Type::Enum v) const { return v == Type::IfcColou Type::Enum IfcColourSpecification::type() const { return Type::IfcColourSpecification; } Type::Enum IfcColourSpecification::Class() { return Type::IfcColourSpecification; } IfcColourSpecification::IfcColourSpecification(IfcAbstractEntityPtr e) { if (!is(Type::IfcColourSpecification)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcColourSpecification::IfcColourSpecification(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcColourSpecification::IfcColourSpecification(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcColumn bool IfcColumn::is(Type::Enum v) const { return v == Type::IfcColumn || IfcBuildingElement::is(v); } Type::Enum IfcColumn::type() const { return Type::IfcColumn; } Type::Enum IfcColumn::Class() { return Type::IfcColumn; } IfcColumn::IfcColumn(IfcAbstractEntityPtr e) { if (!is(Type::IfcColumn)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcColumn::IfcColumn(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcColumn::IfcColumn(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcColumnType IfcColumnTypeEnum::IfcColumnTypeEnum IfcColumnType::PredefinedType() { return IfcColumnTypeEnum::FromString(*entity->getArgument(9)); } void IfcColumnType::setPredefinedType(IfcColumnTypeEnum::IfcColumnTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcColumnTypeEnum::ToString(v)); } @@ -5685,7 +5685,7 @@ bool IfcColumnType::is(Type::Enum v) const { return v == Type::IfcColumnType || Type::Enum IfcColumnType::type() const { return Type::IfcColumnType; } Type::Enum IfcColumnType::Class() { return Type::IfcColumnType; } IfcColumnType::IfcColumnType(IfcAbstractEntityPtr e) { if (!is(Type::IfcColumnType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcColumnType::IfcColumnType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcColumnTypeEnum::IfcColumnTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcColumnType::IfcColumnType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcColumnTypeEnum::IfcColumnTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcColumnTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcComplexProperty IfcIdentifier IfcComplexProperty::UsageName() { return *entity->getArgument(2); } void IfcComplexProperty::setUsageName(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5695,7 +5695,7 @@ bool IfcComplexProperty::is(Type::Enum v) const { return v == Type::IfcComplexPr Type::Enum IfcComplexProperty::type() const { return Type::IfcComplexProperty; } Type::Enum IfcComplexProperty::Class() { return Type::IfcComplexProperty; } IfcComplexProperty::IfcComplexProperty(IfcAbstractEntityPtr e) { if (!is(Type::IfcComplexProperty)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcComplexProperty::IfcComplexProperty(IfcIdentifier v1_Name, IfcText v2_Description, IfcIdentifier v3_UsageName, SHARED_PTR< IfcTemplatedEntityList > v4_HasProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_UsageName); e->setArgument(3,v4_HasProperties->generalize()); entity = e; } +IfcComplexProperty::IfcComplexProperty(IfcIdentifier v1_Name, optional v2_Description, IfcIdentifier v3_UsageName, SHARED_PTR< IfcTemplatedEntityList > v4_HasProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_UsageName)); e->setArgument(3,(v4_HasProperties)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCompositeCurve SHARED_PTR< IfcTemplatedEntityList > IfcCompositeCurve::Segments() { RETURN_AS_LIST(IfcCompositeCurveSegment,0) } void IfcCompositeCurve::setSegments(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -5705,7 +5705,7 @@ bool IfcCompositeCurve::is(Type::Enum v) const { return v == Type::IfcCompositeC Type::Enum IfcCompositeCurve::type() const { return Type::IfcCompositeCurve; } Type::Enum IfcCompositeCurve::Class() { return Type::IfcCompositeCurve; } IfcCompositeCurve::IfcCompositeCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcCompositeCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCompositeCurve::IfcCompositeCurve(SHARED_PTR< IfcTemplatedEntityList > v1_Segments, bool v2_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Segments->generalize()); e->setArgument(1,v2_SelfIntersect); entity = e; } +IfcCompositeCurve::IfcCompositeCurve(SHARED_PTR< IfcTemplatedEntityList > v1_Segments, bool v2_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Segments)->generalize()); e->setArgument(1,(v2_SelfIntersect)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCompositeCurveSegment IfcTransitionCode::IfcTransitionCode IfcCompositeCurveSegment::Transition() { return IfcTransitionCode::FromString(*entity->getArgument(0)); } void IfcCompositeCurveSegment::setTransition(IfcTransitionCode::IfcTransitionCode v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcTransitionCode::ToString(v)); } @@ -5718,7 +5718,7 @@ bool IfcCompositeCurveSegment::is(Type::Enum v) const { return v == Type::IfcCom Type::Enum IfcCompositeCurveSegment::type() const { return Type::IfcCompositeCurveSegment; } Type::Enum IfcCompositeCurveSegment::Class() { return Type::IfcCompositeCurveSegment; } IfcCompositeCurveSegment::IfcCompositeCurveSegment(IfcAbstractEntityPtr e) { if (!is(Type::IfcCompositeCurveSegment)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCompositeCurveSegment::IfcCompositeCurveSegment(IfcTransitionCode::IfcTransitionCode v1_Transition, bool v2_SameSense, IfcCurve* v3_ParentCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Transition); e->setArgument(1,v2_SameSense); e->setArgument(2,v3_ParentCurve); entity = e; } +IfcCompositeCurveSegment::IfcCompositeCurveSegment(IfcTransitionCode::IfcTransitionCode v1_Transition, bool v2_SameSense, IfcCurve* v3_ParentCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Transition,IfcTransitionCode::ToString(v1_Transition)); e->setArgument(1,(v2_SameSense)); e->setArgument(2,(v3_ParentCurve)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCompositeProfileDef SHARED_PTR< IfcTemplatedEntityList > IfcCompositeProfileDef::Profiles() { RETURN_AS_LIST(IfcProfileDef,2) } void IfcCompositeProfileDef::setProfiles(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v->generalize()); } @@ -5729,7 +5729,7 @@ bool IfcCompositeProfileDef::is(Type::Enum v) const { return v == Type::IfcCompo Type::Enum IfcCompositeProfileDef::type() const { return Type::IfcCompositeProfileDef; } Type::Enum IfcCompositeProfileDef::Class() { return Type::IfcCompositeProfileDef; } IfcCompositeProfileDef::IfcCompositeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCompositeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCompositeProfileDef::IfcCompositeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, SHARED_PTR< IfcTemplatedEntityList > v3_Profiles, IfcLabel v4_Label) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Profiles->generalize()); e->setArgument(3,v4_Label); entity = e; } +IfcCompositeProfileDef::IfcCompositeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, SHARED_PTR< IfcTemplatedEntityList > v3_Profiles, optional v4_Label) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Profiles)->generalize()); if (v4_Label) { e->setArgument(3,(*v4_Label)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCompressorType IfcCompressorTypeEnum::IfcCompressorTypeEnum IfcCompressorType::PredefinedType() { return IfcCompressorTypeEnum::FromString(*entity->getArgument(9)); } void IfcCompressorType::setPredefinedType(IfcCompressorTypeEnum::IfcCompressorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCompressorTypeEnum::ToString(v)); } @@ -5737,7 +5737,7 @@ bool IfcCompressorType::is(Type::Enum v) const { return v == Type::IfcCompressor Type::Enum IfcCompressorType::type() const { return Type::IfcCompressorType; } Type::Enum IfcCompressorType::Class() { return Type::IfcCompressorType; } IfcCompressorType::IfcCompressorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCompressorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCompressorType::IfcCompressorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCompressorTypeEnum::IfcCompressorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCompressorType::IfcCompressorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCompressorTypeEnum::IfcCompressorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCompressorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCondenserType IfcCondenserTypeEnum::IfcCondenserTypeEnum IfcCondenserType::PredefinedType() { return IfcCondenserTypeEnum::FromString(*entity->getArgument(9)); } void IfcCondenserType::setPredefinedType(IfcCondenserTypeEnum::IfcCondenserTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCondenserTypeEnum::ToString(v)); } @@ -5745,13 +5745,13 @@ bool IfcCondenserType::is(Type::Enum v) const { return v == Type::IfcCondenserTy Type::Enum IfcCondenserType::type() const { return Type::IfcCondenserType; } Type::Enum IfcCondenserType::Class() { return Type::IfcCondenserType; } IfcCondenserType::IfcCondenserType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCondenserType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCondenserType::IfcCondenserType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCondenserTypeEnum::IfcCondenserTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCondenserType::IfcCondenserType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCondenserTypeEnum::IfcCondenserTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCondenserTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCondition bool IfcCondition::is(Type::Enum v) const { return v == Type::IfcCondition || IfcGroup::is(v); } Type::Enum IfcCondition::type() const { return Type::IfcCondition; } Type::Enum IfcCondition::Class() { return Type::IfcCondition; } IfcCondition::IfcCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCondition::IfcCondition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcCondition::IfcCondition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConditionCriterion IfcConditionCriterionSelect IfcConditionCriterion::Criterion() { return *entity->getArgument(5); } void IfcConditionCriterion::setCriterion(IfcConditionCriterionSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -5761,7 +5761,7 @@ bool IfcConditionCriterion::is(Type::Enum v) const { return v == Type::IfcCondit Type::Enum IfcConditionCriterion::type() const { return Type::IfcConditionCriterion; } Type::Enum IfcConditionCriterion::Class() { return Type::IfcConditionCriterion; } IfcConditionCriterion::IfcConditionCriterion(IfcAbstractEntityPtr e) { if (!is(Type::IfcConditionCriterion)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConditionCriterion::IfcConditionCriterion(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcConditionCriterionSelect v6_Criterion, IfcDateTimeSelect v7_CriterionDateTime) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_Criterion); e->setArgument(6,v7_CriterionDateTime); entity = e; } +IfcConditionCriterion::IfcConditionCriterion(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcConditionCriterionSelect v6_Criterion, IfcDateTimeSelect v7_CriterionDateTime) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Criterion)); e->setArgument(6,(v7_CriterionDateTime)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConic IfcAxis2Placement IfcConic::Position() { return *entity->getArgument(0); } void IfcConic::setPosition(IfcAxis2Placement v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5769,7 +5769,7 @@ bool IfcConic::is(Type::Enum v) const { return v == Type::IfcConic || IfcCurve:: Type::Enum IfcConic::type() const { return Type::IfcConic; } Type::Enum IfcConic::Class() { return Type::IfcConic; } IfcConic::IfcConic(IfcAbstractEntityPtr e) { if (!is(Type::IfcConic)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConic::IfcConic(IfcAxis2Placement v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); entity = e; } +IfcConic::IfcConic(IfcAxis2Placement v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectedFaceSet SHARED_PTR< IfcTemplatedEntityList > IfcConnectedFaceSet::CfsFaces() { RETURN_AS_LIST(IfcFace,0) } void IfcConnectedFaceSet::setCfsFaces(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -5777,7 +5777,7 @@ bool IfcConnectedFaceSet::is(Type::Enum v) const { return v == Type::IfcConnecte Type::Enum IfcConnectedFaceSet::type() const { return Type::IfcConnectedFaceSet; } Type::Enum IfcConnectedFaceSet::Class() { return Type::IfcConnectedFaceSet; } IfcConnectedFaceSet::IfcConnectedFaceSet(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectedFaceSet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectedFaceSet::IfcConnectedFaceSet(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_CfsFaces->generalize()); entity = e; } +IfcConnectedFaceSet::IfcConnectedFaceSet(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_CfsFaces)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectionCurveGeometry IfcCurveOrEdgeCurve IfcConnectionCurveGeometry::CurveOnRelatingElement() { return *entity->getArgument(0); } void IfcConnectionCurveGeometry::setCurveOnRelatingElement(IfcCurveOrEdgeCurve v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5788,7 +5788,7 @@ bool IfcConnectionCurveGeometry::is(Type::Enum v) const { return v == Type::IfcC Type::Enum IfcConnectionCurveGeometry::type() const { return Type::IfcConnectionCurveGeometry; } Type::Enum IfcConnectionCurveGeometry::Class() { return Type::IfcConnectionCurveGeometry; } IfcConnectionCurveGeometry::IfcConnectionCurveGeometry(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectionCurveGeometry)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectionCurveGeometry::IfcConnectionCurveGeometry(IfcCurveOrEdgeCurve v1_CurveOnRelatingElement, IfcCurveOrEdgeCurve v2_CurveOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_CurveOnRelatingElement); e->setArgument(1,v2_CurveOnRelatedElement); entity = e; } +IfcConnectionCurveGeometry::IfcConnectionCurveGeometry(IfcCurveOrEdgeCurve v1_CurveOnRelatingElement, optional v2_CurveOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_CurveOnRelatingElement)); if (v2_CurveOnRelatedElement) { e->setArgument(1,(*v2_CurveOnRelatedElement)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectionGeometry bool IfcConnectionGeometry::is(Type::Enum v) const { return v == Type::IfcConnectionGeometry; } Type::Enum IfcConnectionGeometry::type() const { return Type::IfcConnectionGeometry; } @@ -5808,7 +5808,7 @@ bool IfcConnectionPointEccentricity::is(Type::Enum v) const { return v == Type:: Type::Enum IfcConnectionPointEccentricity::type() const { return Type::IfcConnectionPointEccentricity; } Type::Enum IfcConnectionPointEccentricity::Class() { return Type::IfcConnectionPointEccentricity; } IfcConnectionPointEccentricity::IfcConnectionPointEccentricity(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectionPointEccentricity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectionPointEccentricity::IfcConnectionPointEccentricity(IfcPointOrVertexPoint v1_PointOnRelatingElement, IfcPointOrVertexPoint v2_PointOnRelatedElement, IfcLengthMeasure v3_EccentricityInX, IfcLengthMeasure v4_EccentricityInY, IfcLengthMeasure v5_EccentricityInZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_PointOnRelatingElement); e->setArgument(1,v2_PointOnRelatedElement); e->setArgument(2,v3_EccentricityInX); e->setArgument(3,v4_EccentricityInY); e->setArgument(4,v5_EccentricityInZ); entity = e; } +IfcConnectionPointEccentricity::IfcConnectionPointEccentricity(IfcPointOrVertexPoint v1_PointOnRelatingElement, optional v2_PointOnRelatedElement, optional v3_EccentricityInX, optional v4_EccentricityInY, optional v5_EccentricityInZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_PointOnRelatingElement)); if (v2_PointOnRelatedElement) { e->setArgument(1,(*v2_PointOnRelatedElement)); } else { e->setArgument(1); } ; if (v3_EccentricityInX) { e->setArgument(2,(*v3_EccentricityInX)); } else { e->setArgument(2); } ; if (v4_EccentricityInY) { e->setArgument(3,(*v4_EccentricityInY)); } else { e->setArgument(3); } ; if (v5_EccentricityInZ) { e->setArgument(4,(*v5_EccentricityInZ)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectionPointGeometry IfcPointOrVertexPoint IfcConnectionPointGeometry::PointOnRelatingElement() { return *entity->getArgument(0); } void IfcConnectionPointGeometry::setPointOnRelatingElement(IfcPointOrVertexPoint v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5819,7 +5819,7 @@ bool IfcConnectionPointGeometry::is(Type::Enum v) const { return v == Type::IfcC Type::Enum IfcConnectionPointGeometry::type() const { return Type::IfcConnectionPointGeometry; } Type::Enum IfcConnectionPointGeometry::Class() { return Type::IfcConnectionPointGeometry; } IfcConnectionPointGeometry::IfcConnectionPointGeometry(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectionPointGeometry)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectionPointGeometry::IfcConnectionPointGeometry(IfcPointOrVertexPoint v1_PointOnRelatingElement, IfcPointOrVertexPoint v2_PointOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_PointOnRelatingElement); e->setArgument(1,v2_PointOnRelatedElement); entity = e; } +IfcConnectionPointGeometry::IfcConnectionPointGeometry(IfcPointOrVertexPoint v1_PointOnRelatingElement, optional v2_PointOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_PointOnRelatingElement)); if (v2_PointOnRelatedElement) { e->setArgument(1,(*v2_PointOnRelatedElement)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectionPortGeometry IfcAxis2Placement IfcConnectionPortGeometry::LocationAtRelatingElement() { return *entity->getArgument(0); } void IfcConnectionPortGeometry::setLocationAtRelatingElement(IfcAxis2Placement v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5832,7 +5832,7 @@ bool IfcConnectionPortGeometry::is(Type::Enum v) const { return v == Type::IfcCo Type::Enum IfcConnectionPortGeometry::type() const { return Type::IfcConnectionPortGeometry; } Type::Enum IfcConnectionPortGeometry::Class() { return Type::IfcConnectionPortGeometry; } IfcConnectionPortGeometry::IfcConnectionPortGeometry(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectionPortGeometry)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectionPortGeometry::IfcConnectionPortGeometry(IfcAxis2Placement v1_LocationAtRelatingElement, IfcAxis2Placement v2_LocationAtRelatedElement, IfcProfileDef* v3_ProfileOfPort) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LocationAtRelatingElement); e->setArgument(1,v2_LocationAtRelatedElement); e->setArgument(2,v3_ProfileOfPort); entity = e; } +IfcConnectionPortGeometry::IfcConnectionPortGeometry(IfcAxis2Placement v1_LocationAtRelatingElement, optional v2_LocationAtRelatedElement, IfcProfileDef* v3_ProfileOfPort) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_LocationAtRelatingElement)); if (v2_LocationAtRelatedElement) { e->setArgument(1,(*v2_LocationAtRelatedElement)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_ProfileOfPort)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConnectionSurfaceGeometry IfcSurfaceOrFaceSurface IfcConnectionSurfaceGeometry::SurfaceOnRelatingElement() { return *entity->getArgument(0); } void IfcConnectionSurfaceGeometry::setSurfaceOnRelatingElement(IfcSurfaceOrFaceSurface v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5843,7 +5843,7 @@ bool IfcConnectionSurfaceGeometry::is(Type::Enum v) const { return v == Type::If Type::Enum IfcConnectionSurfaceGeometry::type() const { return Type::IfcConnectionSurfaceGeometry; } Type::Enum IfcConnectionSurfaceGeometry::Class() { return Type::IfcConnectionSurfaceGeometry; } IfcConnectionSurfaceGeometry::IfcConnectionSurfaceGeometry(IfcAbstractEntityPtr e) { if (!is(Type::IfcConnectionSurfaceGeometry)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConnectionSurfaceGeometry::IfcConnectionSurfaceGeometry(IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, IfcSurfaceOrFaceSurface v2_SurfaceOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SurfaceOnRelatingElement); e->setArgument(1,v2_SurfaceOnRelatedElement); entity = e; } +IfcConnectionSurfaceGeometry::IfcConnectionSurfaceGeometry(IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, optional v2_SurfaceOnRelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SurfaceOnRelatingElement)); if (v2_SurfaceOnRelatedElement) { e->setArgument(1,(*v2_SurfaceOnRelatedElement)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstraint IfcLabel IfcConstraint::Name() { return *entity->getArgument(0); } void IfcConstraint::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5874,7 +5874,7 @@ bool IfcConstraint::is(Type::Enum v) const { return v == Type::IfcConstraint; } Type::Enum IfcConstraint::type() const { return Type::IfcConstraint; } Type::Enum IfcConstraint::Class() { return Type::IfcConstraint; } IfcConstraint::IfcConstraint(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstraint)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstraint::IfcConstraint(IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_ConstraintGrade); e->setArgument(3,v4_ConstraintSource); e->setArgument(4,v5_CreatingActor); e->setArgument(5,v6_CreationTime); e->setArgument(6,v7_UserDefinedGrade); entity = e; } +IfcConstraint::IfcConstraint(IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,v3_ConstraintGrade,IfcConstraintEnum::ToString(v3_ConstraintGrade)); if (v4_ConstraintSource) { e->setArgument(3,(*v4_ConstraintSource)); } else { e->setArgument(3); } ; if (v5_CreatingActor) { e->setArgument(4,(*v5_CreatingActor)); } else { e->setArgument(4); } ; if (v6_CreationTime) { e->setArgument(5,(*v6_CreationTime)); } else { e->setArgument(5); } ; if (v7_UserDefinedGrade) { e->setArgument(6,(*v7_UserDefinedGrade)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstraintAggregationRelationship bool IfcConstraintAggregationRelationship::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcConstraintAggregationRelationship::Name() { return *entity->getArgument(0); } @@ -5892,7 +5892,7 @@ bool IfcConstraintAggregationRelationship::is(Type::Enum v) const { return v == Type::Enum IfcConstraintAggregationRelationship::type() const { return Type::IfcConstraintAggregationRelationship; } Type::Enum IfcConstraintAggregationRelationship::Class() { return Type::IfcConstraintAggregationRelationship; } IfcConstraintAggregationRelationship::IfcConstraintAggregationRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstraintAggregationRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstraintAggregationRelationship::IfcConstraintAggregationRelationship(IfcLabel v1_Name, IfcText v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints, IfcLogicalOperatorEnum::IfcLogicalOperatorEnum v5_LogicalAggregator) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingConstraint); e->setArgument(3,v4_RelatedConstraints->generalize()); e->setArgument(4,v5_LogicalAggregator); entity = e; } +IfcConstraintAggregationRelationship::IfcConstraintAggregationRelationship(optional v1_Name, optional v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints, IfcLogicalOperatorEnum::IfcLogicalOperatorEnum v5_LogicalAggregator) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingConstraint)); e->setArgument(3,(v4_RelatedConstraints)->generalize()); e->setArgument(4,v5_LogicalAggregator,IfcLogicalOperatorEnum::ToString(v5_LogicalAggregator)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstraintClassificationRelationship IfcConstraint* IfcConstraintClassificationRelationship::ClassifiedConstraint() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcConstraintClassificationRelationship::setClassifiedConstraint(IfcConstraint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -5902,7 +5902,7 @@ bool IfcConstraintClassificationRelationship::is(Type::Enum v) const { return v Type::Enum IfcConstraintClassificationRelationship::type() const { return Type::IfcConstraintClassificationRelationship; } Type::Enum IfcConstraintClassificationRelationship::Class() { return Type::IfcConstraintClassificationRelationship; } IfcConstraintClassificationRelationship::IfcConstraintClassificationRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstraintClassificationRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstraintClassificationRelationship::IfcConstraintClassificationRelationship(IfcConstraint* v1_ClassifiedConstraint, IfcEntities v2_RelatedClassifications) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ClassifiedConstraint); e->setArgument(1,v2_RelatedClassifications); entity = e; } +IfcConstraintClassificationRelationship::IfcConstraintClassificationRelationship(IfcConstraint* v1_ClassifiedConstraint, IfcEntities v2_RelatedClassifications) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ClassifiedConstraint)); e->setArgument(1,(v2_RelatedClassifications)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstraintRelationship bool IfcConstraintRelationship::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcConstraintRelationship::Name() { return *entity->getArgument(0); } @@ -5918,13 +5918,13 @@ bool IfcConstraintRelationship::is(Type::Enum v) const { return v == Type::IfcCo Type::Enum IfcConstraintRelationship::type() const { return Type::IfcConstraintRelationship; } Type::Enum IfcConstraintRelationship::Class() { return Type::IfcConstraintRelationship; } IfcConstraintRelationship::IfcConstraintRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstraintRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstraintRelationship::IfcConstraintRelationship(IfcLabel v1_Name, IfcText v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingConstraint); e->setArgument(3,v4_RelatedConstraints->generalize()); entity = e; } +IfcConstraintRelationship::IfcConstraintRelationship(optional v1_Name, optional v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingConstraint)); e->setArgument(3,(v4_RelatedConstraints)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstructionEquipmentResource bool IfcConstructionEquipmentResource::is(Type::Enum v) const { return v == Type::IfcConstructionEquipmentResource || IfcConstructionResource::is(v); } Type::Enum IfcConstructionEquipmentResource::type() const { return Type::IfcConstructionEquipmentResource; } Type::Enum IfcConstructionEquipmentResource::Class() { return Type::IfcConstructionEquipmentResource; } IfcConstructionEquipmentResource::IfcConstructionEquipmentResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstructionEquipmentResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstructionEquipmentResource::IfcConstructionEquipmentResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); entity = e; } +IfcConstructionEquipmentResource::IfcConstructionEquipmentResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstructionMaterialResource bool IfcConstructionMaterialResource::hasSuppliers() { return !entity->getArgument(9)->isNull(); } SHARED_PTR< IfcTemplatedEntityList > IfcConstructionMaterialResource::Suppliers() { RETURN_AS_LIST(IfcAbstractSelect,9) } @@ -5936,13 +5936,13 @@ bool IfcConstructionMaterialResource::is(Type::Enum v) const { return v == Type: Type::Enum IfcConstructionMaterialResource::type() const { return Type::IfcConstructionMaterialResource; } Type::Enum IfcConstructionMaterialResource::Class() { return Type::IfcConstructionMaterialResource; } IfcConstructionMaterialResource::IfcConstructionMaterialResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstructionMaterialResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstructionMaterialResource::IfcConstructionMaterialResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcEntities v10_Suppliers, IfcRatioMeasure v11_UsageRatio) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); e->setArgument(9,v10_Suppliers); e->setArgument(10,v11_UsageRatio); entity = e; } +IfcConstructionMaterialResource::IfcConstructionMaterialResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_Suppliers, optional v11_UsageRatio) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); if (v10_Suppliers) { e->setArgument(9,(*v10_Suppliers)); } else { e->setArgument(9); } ; if (v11_UsageRatio) { e->setArgument(10,(*v11_UsageRatio)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstructionProductResource bool IfcConstructionProductResource::is(Type::Enum v) const { return v == Type::IfcConstructionProductResource || IfcConstructionResource::is(v); } Type::Enum IfcConstructionProductResource::type() const { return Type::IfcConstructionProductResource; } Type::Enum IfcConstructionProductResource::Class() { return Type::IfcConstructionProductResource; } IfcConstructionProductResource::IfcConstructionProductResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstructionProductResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstructionProductResource::IfcConstructionProductResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); entity = e; } +IfcConstructionProductResource::IfcConstructionProductResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConstructionResource bool IfcConstructionResource::hasResourceIdentifier() { return !entity->getArgument(5)->isNull(); } IfcIdentifier IfcConstructionResource::ResourceIdentifier() { return *entity->getArgument(5); } @@ -5960,7 +5960,7 @@ bool IfcConstructionResource::is(Type::Enum v) const { return v == Type::IfcCons Type::Enum IfcConstructionResource::type() const { return Type::IfcConstructionResource; } Type::Enum IfcConstructionResource::Class() { return Type::IfcConstructionResource; } IfcConstructionResource::IfcConstructionResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcConstructionResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConstructionResource::IfcConstructionResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); entity = e; } +IfcConstructionResource::IfcConstructionResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcContextDependentUnit IfcLabel IfcContextDependentUnit::Name() { return *entity->getArgument(2); } void IfcContextDependentUnit::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5968,14 +5968,14 @@ bool IfcContextDependentUnit::is(Type::Enum v) const { return v == Type::IfcCont Type::Enum IfcContextDependentUnit::type() const { return Type::IfcContextDependentUnit; } Type::Enum IfcContextDependentUnit::Class() { return Type::IfcContextDependentUnit; } IfcContextDependentUnit::IfcContextDependentUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcContextDependentUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcContextDependentUnit::IfcContextDependentUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Dimensions); e->setArgument(1,v2_UnitType); e->setArgument(2,v3_Name); entity = e; } +IfcContextDependentUnit::IfcContextDependentUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Dimensions)); e->setArgument(1,v2_UnitType,IfcUnitEnum::ToString(v2_UnitType)); e->setArgument(2,(v3_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcControl IfcRelAssignsToControl::list IfcControl::Controls() { RETURN_INVERSE(IfcRelAssignsToControl) } bool IfcControl::is(Type::Enum v) const { return v == Type::IfcControl || IfcObject::is(v); } Type::Enum IfcControl::type() const { return Type::IfcControl; } Type::Enum IfcControl::Class() { return Type::IfcControl; } IfcControl::IfcControl(IfcAbstractEntityPtr e) { if (!is(Type::IfcControl)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcControl::IfcControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcControl::IfcControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcControllerType IfcControllerTypeEnum::IfcControllerTypeEnum IfcControllerType::PredefinedType() { return IfcControllerTypeEnum::FromString(*entity->getArgument(9)); } void IfcControllerType::setPredefinedType(IfcControllerTypeEnum::IfcControllerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcControllerTypeEnum::ToString(v)); } @@ -5983,7 +5983,7 @@ bool IfcControllerType::is(Type::Enum v) const { return v == Type::IfcController Type::Enum IfcControllerType::type() const { return Type::IfcControllerType; } Type::Enum IfcControllerType::Class() { return Type::IfcControllerType; } IfcControllerType::IfcControllerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcControllerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcControllerType::IfcControllerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcControllerTypeEnum::IfcControllerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcControllerType::IfcControllerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcControllerTypeEnum::IfcControllerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcControllerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcConversionBasedUnit IfcLabel IfcConversionBasedUnit::Name() { return *entity->getArgument(2); } void IfcConversionBasedUnit::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -5993,7 +5993,7 @@ bool IfcConversionBasedUnit::is(Type::Enum v) const { return v == Type::IfcConve Type::Enum IfcConversionBasedUnit::type() const { return Type::IfcConversionBasedUnit; } Type::Enum IfcConversionBasedUnit::Class() { return Type::IfcConversionBasedUnit; } IfcConversionBasedUnit::IfcConversionBasedUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcConversionBasedUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcConversionBasedUnit::IfcConversionBasedUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcLabel v3_Name, IfcMeasureWithUnit* v4_ConversionFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Dimensions); e->setArgument(1,v2_UnitType); e->setArgument(2,v3_Name); e->setArgument(3,v4_ConversionFactor); entity = e; } +IfcConversionBasedUnit::IfcConversionBasedUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcLabel v3_Name, IfcMeasureWithUnit* v4_ConversionFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Dimensions)); e->setArgument(1,v2_UnitType,IfcUnitEnum::ToString(v2_UnitType)); e->setArgument(2,(v3_Name)); e->setArgument(3,(v4_ConversionFactor)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCooledBeamType IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum IfcCooledBeamType::PredefinedType() { return IfcCooledBeamTypeEnum::FromString(*entity->getArgument(9)); } void IfcCooledBeamType::setPredefinedType(IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCooledBeamTypeEnum::ToString(v)); } @@ -6001,7 +6001,7 @@ bool IfcCooledBeamType::is(Type::Enum v) const { return v == Type::IfcCooledBeam Type::Enum IfcCooledBeamType::type() const { return Type::IfcCooledBeamType; } Type::Enum IfcCooledBeamType::Class() { return Type::IfcCooledBeamType; } IfcCooledBeamType::IfcCooledBeamType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCooledBeamType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCooledBeamType::IfcCooledBeamType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCooledBeamType::IfcCooledBeamType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCooledBeamTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCoolingTowerType IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum IfcCoolingTowerType::PredefinedType() { return IfcCoolingTowerTypeEnum::FromString(*entity->getArgument(9)); } void IfcCoolingTowerType::setPredefinedType(IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCoolingTowerTypeEnum::ToString(v)); } @@ -6009,7 +6009,7 @@ bool IfcCoolingTowerType::is(Type::Enum v) const { return v == Type::IfcCoolingT Type::Enum IfcCoolingTowerType::type() const { return Type::IfcCoolingTowerType; } Type::Enum IfcCoolingTowerType::Class() { return Type::IfcCoolingTowerType; } IfcCoolingTowerType::IfcCoolingTowerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCoolingTowerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCoolingTowerType::IfcCoolingTowerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCoolingTowerType::IfcCoolingTowerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCoolingTowerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCoordinatedUniversalTimeOffset IfcHourInDay IfcCoordinatedUniversalTimeOffset::HourOffset() { return *entity->getArgument(0); } void IfcCoordinatedUniversalTimeOffset::setHourOffset(IfcHourInDay v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6022,13 +6022,13 @@ bool IfcCoordinatedUniversalTimeOffset::is(Type::Enum v) const { return v == Typ Type::Enum IfcCoordinatedUniversalTimeOffset::type() const { return Type::IfcCoordinatedUniversalTimeOffset; } Type::Enum IfcCoordinatedUniversalTimeOffset::Class() { return Type::IfcCoordinatedUniversalTimeOffset; } IfcCoordinatedUniversalTimeOffset::IfcCoordinatedUniversalTimeOffset(IfcAbstractEntityPtr e) { if (!is(Type::IfcCoordinatedUniversalTimeOffset)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCoordinatedUniversalTimeOffset::IfcCoordinatedUniversalTimeOffset(IfcHourInDay v1_HourOffset, IfcMinuteInHour v2_MinuteOffset, IfcAheadOrBehind::IfcAheadOrBehind v3_Sense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_HourOffset); e->setArgument(1,v2_MinuteOffset); e->setArgument(2,v3_Sense); entity = e; } +IfcCoordinatedUniversalTimeOffset::IfcCoordinatedUniversalTimeOffset(IfcHourInDay v1_HourOffset, optional v2_MinuteOffset, IfcAheadOrBehind::IfcAheadOrBehind v3_Sense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_HourOffset)); if (v2_MinuteOffset) { e->setArgument(1,(*v2_MinuteOffset)); } else { e->setArgument(1); } ; e->setArgument(2,v3_Sense,IfcAheadOrBehind::ToString(v3_Sense)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCostItem bool IfcCostItem::is(Type::Enum v) const { return v == Type::IfcCostItem || IfcControl::is(v); } Type::Enum IfcCostItem::type() const { return Type::IfcCostItem; } Type::Enum IfcCostItem::Class() { return Type::IfcCostItem; } IfcCostItem::IfcCostItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcCostItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCostItem::IfcCostItem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcCostItem::IfcCostItem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCostSchedule bool IfcCostSchedule::hasSubmittedBy() { return !entity->getArgument(5)->isNull(); } IfcActorSelect IfcCostSchedule::SubmittedBy() { return *entity->getArgument(5); } @@ -6056,7 +6056,7 @@ bool IfcCostSchedule::is(Type::Enum v) const { return v == Type::IfcCostSchedule Type::Enum IfcCostSchedule::type() const { return Type::IfcCostSchedule; } Type::Enum IfcCostSchedule::Class() { return Type::IfcCostSchedule; } IfcCostSchedule::IfcCostSchedule(IfcAbstractEntityPtr e) { if (!is(Type::IfcCostSchedule)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCostSchedule::IfcCostSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_SubmittedBy, IfcActorSelect v7_PreparedBy, IfcDateTimeSelect v8_SubmittedOn, IfcLabel v9_Status, IfcEntities v10_TargetUsers, IfcDateTimeSelect v11_UpdateDate, IfcIdentifier v12_ID, IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum v13_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_SubmittedBy); e->setArgument(6,v7_PreparedBy); e->setArgument(7,v8_SubmittedOn); e->setArgument(8,v9_Status); e->setArgument(9,v10_TargetUsers); e->setArgument(10,v11_UpdateDate); e->setArgument(11,v12_ID); e->setArgument(12,v13_PredefinedType); entity = e; } +IfcCostSchedule::IfcCostSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_SubmittedBy, optional v7_PreparedBy, optional v8_SubmittedOn, optional v9_Status, optional v10_TargetUsers, optional v11_UpdateDate, IfcIdentifier v12_ID, IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum v13_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_SubmittedBy) { e->setArgument(5,(*v6_SubmittedBy)); } else { e->setArgument(5); } ; if (v7_PreparedBy) { e->setArgument(6,(*v7_PreparedBy)); } else { e->setArgument(6); } ; if (v8_SubmittedOn) { e->setArgument(7,(*v8_SubmittedOn)); } else { e->setArgument(7); } ; if (v9_Status) { e->setArgument(8,(*v9_Status)); } else { e->setArgument(8); } ; if (v10_TargetUsers) { e->setArgument(9,(*v10_TargetUsers)); } else { e->setArgument(9); } ; if (v11_UpdateDate) { e->setArgument(10,(*v11_UpdateDate)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_ID)); e->setArgument(12,v13_PredefinedType,IfcCostScheduleTypeEnum::ToString(v13_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCostValue IfcLabel IfcCostValue::CostType() { return *entity->getArgument(6); } void IfcCostValue::setCostType(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -6067,7 +6067,7 @@ bool IfcCostValue::is(Type::Enum v) const { return v == Type::IfcCostValue || If Type::Enum IfcCostValue::type() const { return Type::IfcCostValue; } Type::Enum IfcCostValue::Class() { return Type::IfcCostValue; } IfcCostValue::IfcCostValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcCostValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCostValue::IfcCostValue(IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate, IfcLabel v7_CostType, IfcText v8_Condition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_AppliedValue); e->setArgument(3,v4_UnitBasis); e->setArgument(4,v5_ApplicableDate); e->setArgument(5,v6_FixedUntilDate); e->setArgument(6,v7_CostType); e->setArgument(7,v8_Condition); entity = e; } +IfcCostValue::IfcCostValue(optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate, IfcLabel v7_CostType, optional v8_Condition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_AppliedValue) { e->setArgument(2,(*v3_AppliedValue)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_UnitBasis)); if (v5_ApplicableDate) { e->setArgument(4,(*v5_ApplicableDate)); } else { e->setArgument(4); } ; if (v6_FixedUntilDate) { e->setArgument(5,(*v6_FixedUntilDate)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_CostType)); if (v8_Condition) { e->setArgument(7,(*v8_Condition)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCovering bool IfcCovering::hasPredefinedType() { return !entity->getArgument(8)->isNull(); } IfcCoveringTypeEnum::IfcCoveringTypeEnum IfcCovering::PredefinedType() { return IfcCoveringTypeEnum::FromString(*entity->getArgument(8)); } @@ -6078,7 +6078,7 @@ bool IfcCovering::is(Type::Enum v) const { return v == Type::IfcCovering || IfcB Type::Enum IfcCovering::type() const { return Type::IfcCovering; } Type::Enum IfcCovering::Class() { return Type::IfcCovering; } IfcCovering::IfcCovering(IfcAbstractEntityPtr e) { if (!is(Type::IfcCovering)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCovering::IfcCovering(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcCoveringTypeEnum::IfcCoveringTypeEnum v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_PredefinedType); entity = e; } +IfcCovering::IfcCovering(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_PredefinedType) { e->setArgument(8,*v9_PredefinedType,IfcCoveringTypeEnum::ToString(*v9_PredefinedType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCoveringType IfcCoveringTypeEnum::IfcCoveringTypeEnum IfcCoveringType::PredefinedType() { return IfcCoveringTypeEnum::FromString(*entity->getArgument(9)); } void IfcCoveringType::setPredefinedType(IfcCoveringTypeEnum::IfcCoveringTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCoveringTypeEnum::ToString(v)); } @@ -6086,7 +6086,7 @@ bool IfcCoveringType::is(Type::Enum v) const { return v == Type::IfcCoveringType Type::Enum IfcCoveringType::type() const { return Type::IfcCoveringType; } Type::Enum IfcCoveringType::Class() { return Type::IfcCoveringType; } IfcCoveringType::IfcCoveringType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCoveringType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCoveringType::IfcCoveringType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoveringTypeEnum::IfcCoveringTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCoveringType::IfcCoveringType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoveringTypeEnum::IfcCoveringTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCoveringTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCraneRailAShapeProfileDef IfcPositiveLengthMeasure IfcCraneRailAShapeProfileDef::OverallHeight() { return *entity->getArgument(3); } void IfcCraneRailAShapeProfileDef::setOverallHeight(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -6118,7 +6118,7 @@ bool IfcCraneRailAShapeProfileDef::is(Type::Enum v) const { return v == Type::If Type::Enum IfcCraneRailAShapeProfileDef::type() const { return Type::IfcCraneRailAShapeProfileDef; } Type::Enum IfcCraneRailAShapeProfileDef::Class() { return Type::IfcCraneRailAShapeProfileDef; } IfcCraneRailAShapeProfileDef::IfcCraneRailAShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCraneRailAShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCraneRailAShapeProfileDef::IfcCraneRailAShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_BaseWidth2, IfcPositiveLengthMeasure v6_Radius, IfcPositiveLengthMeasure v7_HeadWidth, IfcPositiveLengthMeasure v8_HeadDepth2, IfcPositiveLengthMeasure v9_HeadDepth3, IfcPositiveLengthMeasure v10_WebThickness, IfcPositiveLengthMeasure v11_BaseWidth4, IfcPositiveLengthMeasure v12_BaseDepth1, IfcPositiveLengthMeasure v13_BaseDepth2, IfcPositiveLengthMeasure v14_BaseDepth3, IfcPositiveLengthMeasure v15_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_OverallHeight); e->setArgument(4,v5_BaseWidth2); e->setArgument(5,v6_Radius); e->setArgument(6,v7_HeadWidth); e->setArgument(7,v8_HeadDepth2); e->setArgument(8,v9_HeadDepth3); e->setArgument(9,v10_WebThickness); e->setArgument(10,v11_BaseWidth4); e->setArgument(11,v12_BaseDepth1); e->setArgument(12,v13_BaseDepth2); e->setArgument(13,v14_BaseDepth3); e->setArgument(14,v15_CentreOfGravityInY); entity = e; } +IfcCraneRailAShapeProfileDef::IfcCraneRailAShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_BaseWidth2, optional v6_Radius, IfcPositiveLengthMeasure v7_HeadWidth, IfcPositiveLengthMeasure v8_HeadDepth2, IfcPositiveLengthMeasure v9_HeadDepth3, IfcPositiveLengthMeasure v10_WebThickness, IfcPositiveLengthMeasure v11_BaseWidth4, IfcPositiveLengthMeasure v12_BaseDepth1, IfcPositiveLengthMeasure v13_BaseDepth2, IfcPositiveLengthMeasure v14_BaseDepth3, optional v15_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_OverallHeight)); e->setArgument(4,(v5_BaseWidth2)); if (v6_Radius) { e->setArgument(5,(*v6_Radius)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_HeadWidth)); e->setArgument(7,(v8_HeadDepth2)); e->setArgument(8,(v9_HeadDepth3)); e->setArgument(9,(v10_WebThickness)); e->setArgument(10,(v11_BaseWidth4)); e->setArgument(11,(v12_BaseDepth1)); e->setArgument(12,(v13_BaseDepth2)); e->setArgument(13,(v14_BaseDepth3)); if (v15_CentreOfGravityInY) { e->setArgument(14,(*v15_CentreOfGravityInY)); } else { e->setArgument(14); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCraneRailFShapeProfileDef IfcPositiveLengthMeasure IfcCraneRailFShapeProfileDef::OverallHeight() { return *entity->getArgument(3); } void IfcCraneRailFShapeProfileDef::setOverallHeight(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -6144,13 +6144,13 @@ bool IfcCraneRailFShapeProfileDef::is(Type::Enum v) const { return v == Type::If Type::Enum IfcCraneRailFShapeProfileDef::type() const { return Type::IfcCraneRailFShapeProfileDef; } Type::Enum IfcCraneRailFShapeProfileDef::Class() { return Type::IfcCraneRailFShapeProfileDef; } IfcCraneRailFShapeProfileDef::IfcCraneRailFShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcCraneRailFShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCraneRailFShapeProfileDef::IfcCraneRailFShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_HeadWidth, IfcPositiveLengthMeasure v6_Radius, IfcPositiveLengthMeasure v7_HeadDepth2, IfcPositiveLengthMeasure v8_HeadDepth3, IfcPositiveLengthMeasure v9_WebThickness, IfcPositiveLengthMeasure v10_BaseDepth1, IfcPositiveLengthMeasure v11_BaseDepth2, IfcPositiveLengthMeasure v12_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_OverallHeight); e->setArgument(4,v5_HeadWidth); e->setArgument(5,v6_Radius); e->setArgument(6,v7_HeadDepth2); e->setArgument(7,v8_HeadDepth3); e->setArgument(8,v9_WebThickness); e->setArgument(9,v10_BaseDepth1); e->setArgument(10,v11_BaseDepth2); e->setArgument(11,v12_CentreOfGravityInY); entity = e; } +IfcCraneRailFShapeProfileDef::IfcCraneRailFShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_HeadWidth, optional v6_Radius, IfcPositiveLengthMeasure v7_HeadDepth2, IfcPositiveLengthMeasure v8_HeadDepth3, IfcPositiveLengthMeasure v9_WebThickness, IfcPositiveLengthMeasure v10_BaseDepth1, IfcPositiveLengthMeasure v11_BaseDepth2, optional v12_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_OverallHeight)); e->setArgument(4,(v5_HeadWidth)); if (v6_Radius) { e->setArgument(5,(*v6_Radius)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_HeadDepth2)); e->setArgument(7,(v8_HeadDepth3)); e->setArgument(8,(v9_WebThickness)); e->setArgument(9,(v10_BaseDepth1)); e->setArgument(10,(v11_BaseDepth2)); if (v12_CentreOfGravityInY) { e->setArgument(11,(*v12_CentreOfGravityInY)); } else { e->setArgument(11); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCrewResource bool IfcCrewResource::is(Type::Enum v) const { return v == Type::IfcCrewResource || IfcConstructionResource::is(v); } Type::Enum IfcCrewResource::type() const { return Type::IfcCrewResource; } Type::Enum IfcCrewResource::Class() { return Type::IfcCrewResource; } IfcCrewResource::IfcCrewResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcCrewResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCrewResource::IfcCrewResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); entity = e; } +IfcCrewResource::IfcCrewResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCsgPrimitive3D IfcAxis2Placement3D* IfcCsgPrimitive3D::Position() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcCsgPrimitive3D::setPosition(IfcAxis2Placement3D* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6158,7 +6158,7 @@ bool IfcCsgPrimitive3D::is(Type::Enum v) const { return v == Type::IfcCsgPrimiti Type::Enum IfcCsgPrimitive3D::type() const { return Type::IfcCsgPrimitive3D; } Type::Enum IfcCsgPrimitive3D::Class() { return Type::IfcCsgPrimitive3D; } IfcCsgPrimitive3D::IfcCsgPrimitive3D(IfcAbstractEntityPtr e) { if (!is(Type::IfcCsgPrimitive3D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCsgPrimitive3D::IfcCsgPrimitive3D(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); entity = e; } +IfcCsgPrimitive3D::IfcCsgPrimitive3D(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCsgSolid IfcCsgSelect IfcCsgSolid::TreeRootExpression() { return *entity->getArgument(0); } void IfcCsgSolid::setTreeRootExpression(IfcCsgSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6166,7 +6166,7 @@ bool IfcCsgSolid::is(Type::Enum v) const { return v == Type::IfcCsgSolid || IfcS Type::Enum IfcCsgSolid::type() const { return Type::IfcCsgSolid; } Type::Enum IfcCsgSolid::Class() { return Type::IfcCsgSolid; } IfcCsgSolid::IfcCsgSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcCsgSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCsgSolid::IfcCsgSolid(IfcCsgSelect v1_TreeRootExpression) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TreeRootExpression); entity = e; } +IfcCsgSolid::IfcCsgSolid(IfcCsgSelect v1_TreeRootExpression) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TreeRootExpression)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurrencyRelationship IfcMonetaryUnit* IfcCurrencyRelationship::RelatingMonetaryUnit() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcCurrencyRelationship::setRelatingMonetaryUnit(IfcMonetaryUnit* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6183,13 +6183,13 @@ bool IfcCurrencyRelationship::is(Type::Enum v) const { return v == Type::IfcCurr Type::Enum IfcCurrencyRelationship::type() const { return Type::IfcCurrencyRelationship; } Type::Enum IfcCurrencyRelationship::Class() { return Type::IfcCurrencyRelationship; } IfcCurrencyRelationship::IfcCurrencyRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurrencyRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurrencyRelationship::IfcCurrencyRelationship(IfcMonetaryUnit* v1_RelatingMonetaryUnit, IfcMonetaryUnit* v2_RelatedMonetaryUnit, IfcPositiveRatioMeasure v3_ExchangeRate, IfcDateAndTime* v4_RateDateTime, IfcLibraryInformation* v5_RateSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelatingMonetaryUnit); e->setArgument(1,v2_RelatedMonetaryUnit); e->setArgument(2,v3_ExchangeRate); e->setArgument(3,v4_RateDateTime); e->setArgument(4,v5_RateSource); entity = e; } +IfcCurrencyRelationship::IfcCurrencyRelationship(IfcMonetaryUnit* v1_RelatingMonetaryUnit, IfcMonetaryUnit* v2_RelatedMonetaryUnit, IfcPositiveRatioMeasure v3_ExchangeRate, IfcDateAndTime* v4_RateDateTime, IfcLibraryInformation* v5_RateSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelatingMonetaryUnit)); e->setArgument(1,(v2_RelatedMonetaryUnit)); e->setArgument(2,(v3_ExchangeRate)); e->setArgument(3,(v4_RateDateTime)); e->setArgument(4,(v5_RateSource)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurtainWall bool IfcCurtainWall::is(Type::Enum v) const { return v == Type::IfcCurtainWall || IfcBuildingElement::is(v); } Type::Enum IfcCurtainWall::type() const { return Type::IfcCurtainWall; } Type::Enum IfcCurtainWall::Class() { return Type::IfcCurtainWall; } IfcCurtainWall::IfcCurtainWall(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurtainWall)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurtainWall::IfcCurtainWall(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcCurtainWall::IfcCurtainWall(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurtainWallType IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum IfcCurtainWallType::PredefinedType() { return IfcCurtainWallTypeEnum::FromString(*entity->getArgument(9)); } void IfcCurtainWallType::setPredefinedType(IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcCurtainWallTypeEnum::ToString(v)); } @@ -6197,7 +6197,7 @@ bool IfcCurtainWallType::is(Type::Enum v) const { return v == Type::IfcCurtainWa Type::Enum IfcCurtainWallType::type() const { return Type::IfcCurtainWallType; } Type::Enum IfcCurtainWallType::Class() { return Type::IfcCurtainWallType; } IfcCurtainWallType::IfcCurtainWallType(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurtainWallType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurtainWallType::IfcCurtainWallType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcCurtainWallType::IfcCurtainWallType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcCurtainWallTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurve bool IfcCurve::is(Type::Enum v) const { return v == Type::IfcCurve || IfcGeometricRepresentationItem::is(v); } Type::Enum IfcCurve::type() const { return Type::IfcCurve; } @@ -6214,7 +6214,7 @@ bool IfcCurveBoundedPlane::is(Type::Enum v) const { return v == Type::IfcCurveBo Type::Enum IfcCurveBoundedPlane::type() const { return Type::IfcCurveBoundedPlane; } Type::Enum IfcCurveBoundedPlane::Class() { return Type::IfcCurveBoundedPlane; } IfcCurveBoundedPlane::IfcCurveBoundedPlane(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurveBoundedPlane)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurveBoundedPlane::IfcCurveBoundedPlane(IfcPlane* v1_BasisSurface, IfcCurve* v2_OuterBoundary, SHARED_PTR< IfcTemplatedEntityList > v3_InnerBoundaries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisSurface); e->setArgument(1,v2_OuterBoundary); e->setArgument(2,v3_InnerBoundaries->generalize()); entity = e; } +IfcCurveBoundedPlane::IfcCurveBoundedPlane(IfcPlane* v1_BasisSurface, IfcCurve* v2_OuterBoundary, SHARED_PTR< IfcTemplatedEntityList > v3_InnerBoundaries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisSurface)); e->setArgument(1,(v2_OuterBoundary)); e->setArgument(2,(v3_InnerBoundaries)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurveStyle bool IfcCurveStyle::hasCurveFont() { return !entity->getArgument(1)->isNull(); } IfcCurveFontOrScaledCurveFontSelect IfcCurveStyle::CurveFont() { return *entity->getArgument(1); } @@ -6229,7 +6229,7 @@ bool IfcCurveStyle::is(Type::Enum v) const { return v == Type::IfcCurveStyle || Type::Enum IfcCurveStyle::type() const { return Type::IfcCurveStyle; } Type::Enum IfcCurveStyle::Class() { return Type::IfcCurveStyle; } IfcCurveStyle::IfcCurveStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurveStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurveStyle::IfcCurveStyle(IfcLabel v1_Name, IfcCurveFontOrScaledCurveFontSelect v2_CurveFont, IfcSizeSelect v3_CurveWidth, IfcColour v4_CurveColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_CurveFont); e->setArgument(2,v3_CurveWidth); e->setArgument(3,v4_CurveColour); entity = e; } +IfcCurveStyle::IfcCurveStyle(optional v1_Name, optional v2_CurveFont, optional v3_CurveWidth, optional v4_CurveColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_CurveFont) { e->setArgument(1,(*v2_CurveFont)); } else { e->setArgument(1); } ; if (v3_CurveWidth) { e->setArgument(2,(*v3_CurveWidth)); } else { e->setArgument(2); } ; if (v4_CurveColour) { e->setArgument(3,(*v4_CurveColour)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurveStyleFont bool IfcCurveStyleFont::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcCurveStyleFont::Name() { return *entity->getArgument(0); } @@ -6240,7 +6240,7 @@ bool IfcCurveStyleFont::is(Type::Enum v) const { return v == Type::IfcCurveStyle Type::Enum IfcCurveStyleFont::type() const { return Type::IfcCurveStyleFont; } Type::Enum IfcCurveStyleFont::Class() { return Type::IfcCurveStyleFont; } IfcCurveStyleFont::IfcCurveStyleFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurveStyleFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurveStyleFont::IfcCurveStyleFont(IfcLabel v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_PatternList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_PatternList->generalize()); entity = e; } +IfcCurveStyleFont::IfcCurveStyleFont(optional v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_PatternList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_PatternList)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurveStyleFontAndScaling bool IfcCurveStyleFontAndScaling::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcCurveStyleFontAndScaling::Name() { return *entity->getArgument(0); } @@ -6253,7 +6253,7 @@ bool IfcCurveStyleFontAndScaling::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcCurveStyleFontAndScaling::type() const { return Type::IfcCurveStyleFontAndScaling; } Type::Enum IfcCurveStyleFontAndScaling::Class() { return Type::IfcCurveStyleFontAndScaling; } IfcCurveStyleFontAndScaling::IfcCurveStyleFontAndScaling(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurveStyleFontAndScaling)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurveStyleFontAndScaling::IfcCurveStyleFontAndScaling(IfcLabel v1_Name, IfcCurveStyleFontSelect v2_CurveFont, IfcPositiveRatioMeasure v3_CurveFontScaling) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_CurveFont); e->setArgument(2,v3_CurveFontScaling); entity = e; } +IfcCurveStyleFontAndScaling::IfcCurveStyleFontAndScaling(optional v1_Name, IfcCurveStyleFontSelect v2_CurveFont, IfcPositiveRatioMeasure v3_CurveFontScaling) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_CurveFont)); e->setArgument(2,(v3_CurveFontScaling)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcCurveStyleFontPattern IfcLengthMeasure IfcCurveStyleFontPattern::VisibleSegmentLength() { return *entity->getArgument(0); } void IfcCurveStyleFontPattern::setVisibleSegmentLength(IfcLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6263,7 +6263,7 @@ bool IfcCurveStyleFontPattern::is(Type::Enum v) const { return v == Type::IfcCur Type::Enum IfcCurveStyleFontPattern::type() const { return Type::IfcCurveStyleFontPattern; } Type::Enum IfcCurveStyleFontPattern::Class() { return Type::IfcCurveStyleFontPattern; } IfcCurveStyleFontPattern::IfcCurveStyleFontPattern(IfcAbstractEntityPtr e) { if (!is(Type::IfcCurveStyleFontPattern)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcCurveStyleFontPattern::IfcCurveStyleFontPattern(IfcLengthMeasure v1_VisibleSegmentLength, IfcPositiveLengthMeasure v2_InvisibleSegmentLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_VisibleSegmentLength); e->setArgument(1,v2_InvisibleSegmentLength); entity = e; } +IfcCurveStyleFontPattern::IfcCurveStyleFontPattern(IfcLengthMeasure v1_VisibleSegmentLength, IfcPositiveLengthMeasure v2_InvisibleSegmentLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_VisibleSegmentLength)); e->setArgument(1,(v2_InvisibleSegmentLength)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDamperType IfcDamperTypeEnum::IfcDamperTypeEnum IfcDamperType::PredefinedType() { return IfcDamperTypeEnum::FromString(*entity->getArgument(9)); } void IfcDamperType::setPredefinedType(IfcDamperTypeEnum::IfcDamperTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcDamperTypeEnum::ToString(v)); } @@ -6271,7 +6271,7 @@ bool IfcDamperType::is(Type::Enum v) const { return v == Type::IfcDamperType || Type::Enum IfcDamperType::type() const { return Type::IfcDamperType; } Type::Enum IfcDamperType::Class() { return Type::IfcDamperType; } IfcDamperType::IfcDamperType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDamperType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDamperType::IfcDamperType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDamperTypeEnum::IfcDamperTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcDamperType::IfcDamperType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDamperTypeEnum::IfcDamperTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcDamperTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDateAndTime IfcCalendarDate* IfcDateAndTime::DateComponent() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcDateAndTime::setDateComponent(IfcCalendarDate* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6281,7 +6281,7 @@ bool IfcDateAndTime::is(Type::Enum v) const { return v == Type::IfcDateAndTime; Type::Enum IfcDateAndTime::type() const { return Type::IfcDateAndTime; } Type::Enum IfcDateAndTime::Class() { return Type::IfcDateAndTime; } IfcDateAndTime::IfcDateAndTime(IfcAbstractEntityPtr e) { if (!is(Type::IfcDateAndTime)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDateAndTime::IfcDateAndTime(IfcCalendarDate* v1_DateComponent, IfcLocalTime* v2_TimeComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DateComponent); e->setArgument(1,v2_TimeComponent); entity = e; } +IfcDateAndTime::IfcDateAndTime(IfcCalendarDate* v1_DateComponent, IfcLocalTime* v2_TimeComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DateComponent)); e->setArgument(1,(v2_TimeComponent)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDefinedSymbol IfcDefinedSymbolSelect IfcDefinedSymbol::Definition() { return *entity->getArgument(0); } void IfcDefinedSymbol::setDefinition(IfcDefinedSymbolSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6291,7 +6291,7 @@ bool IfcDefinedSymbol::is(Type::Enum v) const { return v == Type::IfcDefinedSymb Type::Enum IfcDefinedSymbol::type() const { return Type::IfcDefinedSymbol; } Type::Enum IfcDefinedSymbol::Class() { return Type::IfcDefinedSymbol; } IfcDefinedSymbol::IfcDefinedSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcDefinedSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDefinedSymbol::IfcDefinedSymbol(IfcDefinedSymbolSelect v1_Definition, IfcCartesianTransformationOperator2D* v2_Target) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Definition); e->setArgument(1,v2_Target); entity = e; } +IfcDefinedSymbol::IfcDefinedSymbol(IfcDefinedSymbolSelect v1_Definition, IfcCartesianTransformationOperator2D* v2_Target) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Definition)); e->setArgument(1,(v2_Target)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDerivedProfileDef IfcProfileDef* IfcDerivedProfileDef::ParentProfile() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcDerivedProfileDef::setParentProfile(IfcProfileDef* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -6304,7 +6304,7 @@ bool IfcDerivedProfileDef::is(Type::Enum v) const { return v == Type::IfcDerived Type::Enum IfcDerivedProfileDef::type() const { return Type::IfcDerivedProfileDef; } Type::Enum IfcDerivedProfileDef::Class() { return Type::IfcDerivedProfileDef; } IfcDerivedProfileDef::IfcDerivedProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcDerivedProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDerivedProfileDef::IfcDerivedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcProfileDef* v3_ParentProfile, IfcCartesianTransformationOperator2D* v4_Operator, IfcLabel v5_Label) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_ParentProfile); e->setArgument(3,v4_Operator); e->setArgument(4,v5_Label); entity = e; } +IfcDerivedProfileDef::IfcDerivedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcProfileDef* v3_ParentProfile, IfcCartesianTransformationOperator2D* v4_Operator, optional v5_Label) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_ParentProfile)); e->setArgument(3,(v4_Operator)); if (v5_Label) { e->setArgument(4,(*v5_Label)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDerivedUnit SHARED_PTR< IfcTemplatedEntityList > IfcDerivedUnit::Elements() { RETURN_AS_LIST(IfcDerivedUnitElement,0) } void IfcDerivedUnit::setElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -6317,7 +6317,7 @@ bool IfcDerivedUnit::is(Type::Enum v) const { return v == Type::IfcDerivedUnit; Type::Enum IfcDerivedUnit::type() const { return Type::IfcDerivedUnit; } Type::Enum IfcDerivedUnit::Class() { return Type::IfcDerivedUnit; } IfcDerivedUnit::IfcDerivedUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcDerivedUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDerivedUnit::IfcDerivedUnit(SHARED_PTR< IfcTemplatedEntityList > v1_Elements, IfcDerivedUnitEnum::IfcDerivedUnitEnum v2_UnitType, IfcLabel v3_UserDefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Elements->generalize()); e->setArgument(1,v2_UnitType); e->setArgument(2,v3_UserDefinedType); entity = e; } +IfcDerivedUnit::IfcDerivedUnit(SHARED_PTR< IfcTemplatedEntityList > v1_Elements, IfcDerivedUnitEnum::IfcDerivedUnitEnum v2_UnitType, optional v3_UserDefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Elements)->generalize()); e->setArgument(1,v2_UnitType,IfcDerivedUnitEnum::ToString(v2_UnitType)); if (v3_UserDefinedType) { e->setArgument(2,(*v3_UserDefinedType)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDerivedUnitElement IfcNamedUnit* IfcDerivedUnitElement::Unit() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcDerivedUnitElement::setUnit(IfcNamedUnit* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6327,32 +6327,32 @@ bool IfcDerivedUnitElement::is(Type::Enum v) const { return v == Type::IfcDerive Type::Enum IfcDerivedUnitElement::type() const { return Type::IfcDerivedUnitElement; } Type::Enum IfcDerivedUnitElement::Class() { return Type::IfcDerivedUnitElement; } IfcDerivedUnitElement::IfcDerivedUnitElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcDerivedUnitElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDerivedUnitElement::IfcDerivedUnitElement(IfcNamedUnit* v1_Unit, int v2_Exponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Unit); e->setArgument(1,v2_Exponent); entity = e; } +IfcDerivedUnitElement::IfcDerivedUnitElement(IfcNamedUnit* v1_Unit, int v2_Exponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Unit)); e->setArgument(1,(v2_Exponent)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDiameterDimension bool IfcDiameterDimension::is(Type::Enum v) const { return v == Type::IfcDiameterDimension || IfcDimensionCurveDirectedCallout::is(v); } Type::Enum IfcDiameterDimension::type() const { return Type::IfcDiameterDimension; } Type::Enum IfcDiameterDimension::Class() { return Type::IfcDiameterDimension; } IfcDiameterDimension::IfcDiameterDimension(IfcAbstractEntityPtr e) { if (!is(Type::IfcDiameterDimension)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDiameterDimension::IfcDiameterDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcDiameterDimension::IfcDiameterDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionCalloutRelationship bool IfcDimensionCalloutRelationship::is(Type::Enum v) const { return v == Type::IfcDimensionCalloutRelationship || IfcDraughtingCalloutRelationship::is(v); } Type::Enum IfcDimensionCalloutRelationship::type() const { return Type::IfcDimensionCalloutRelationship; } Type::Enum IfcDimensionCalloutRelationship::Class() { return Type::IfcDimensionCalloutRelationship; } IfcDimensionCalloutRelationship::IfcDimensionCalloutRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionCalloutRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionCalloutRelationship::IfcDimensionCalloutRelationship(IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingDraughtingCallout); e->setArgument(3,v4_RelatedDraughtingCallout); entity = e; } +IfcDimensionCalloutRelationship::IfcDimensionCalloutRelationship(optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingDraughtingCallout)); e->setArgument(3,(v4_RelatedDraughtingCallout)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionCurve IfcTerminatorSymbol::list IfcDimensionCurve::AnnotatedBySymbols() { RETURN_INVERSE(IfcTerminatorSymbol) } bool IfcDimensionCurve::is(Type::Enum v) const { return v == Type::IfcDimensionCurve || IfcAnnotationCurveOccurrence::is(v); } Type::Enum IfcDimensionCurve::type() const { return Type::IfcDimensionCurve; } Type::Enum IfcDimensionCurve::Class() { return Type::IfcDimensionCurve; } IfcDimensionCurve::IfcDimensionCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionCurve::IfcDimensionCurve(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcDimensionCurve::IfcDimensionCurve(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionCurveDirectedCallout bool IfcDimensionCurveDirectedCallout::is(Type::Enum v) const { return v == Type::IfcDimensionCurveDirectedCallout || IfcDraughtingCallout::is(v); } Type::Enum IfcDimensionCurveDirectedCallout::type() const { return Type::IfcDimensionCurveDirectedCallout; } Type::Enum IfcDimensionCurveDirectedCallout::Class() { return Type::IfcDimensionCurveDirectedCallout; } IfcDimensionCurveDirectedCallout::IfcDimensionCurveDirectedCallout(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionCurveDirectedCallout)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionCurveDirectedCallout::IfcDimensionCurveDirectedCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcDimensionCurveDirectedCallout::IfcDimensionCurveDirectedCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionCurveTerminator IfcDimensionExtentUsage::IfcDimensionExtentUsage IfcDimensionCurveTerminator::Role() { return IfcDimensionExtentUsage::FromString(*entity->getArgument(4)); } void IfcDimensionCurveTerminator::setRole(IfcDimensionExtentUsage::IfcDimensionExtentUsage v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v,IfcDimensionExtentUsage::ToString(v)); } @@ -6360,13 +6360,13 @@ bool IfcDimensionCurveTerminator::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcDimensionCurveTerminator::type() const { return Type::IfcDimensionCurveTerminator; } Type::Enum IfcDimensionCurveTerminator::Class() { return Type::IfcDimensionCurveTerminator; } IfcDimensionCurveTerminator::IfcDimensionCurveTerminator(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionCurveTerminator)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionCurveTerminator::IfcDimensionCurveTerminator(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve, IfcDimensionExtentUsage::IfcDimensionExtentUsage v5_Role) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); e->setArgument(3,v4_AnnotatedCurve); e->setArgument(4,v5_Role); entity = e; } +IfcDimensionCurveTerminator::IfcDimensionCurveTerminator(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve, IfcDimensionExtentUsage::IfcDimensionExtentUsage v5_Role) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_AnnotatedCurve)); e->setArgument(4,v5_Role,IfcDimensionExtentUsage::ToString(v5_Role)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionPair bool IfcDimensionPair::is(Type::Enum v) const { return v == Type::IfcDimensionPair || IfcDraughtingCalloutRelationship::is(v); } Type::Enum IfcDimensionPair::type() const { return Type::IfcDimensionPair; } Type::Enum IfcDimensionPair::Class() { return Type::IfcDimensionPair; } IfcDimensionPair::IfcDimensionPair(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionPair)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionPair::IfcDimensionPair(IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingDraughtingCallout); e->setArgument(3,v4_RelatedDraughtingCallout); entity = e; } +IfcDimensionPair::IfcDimensionPair(optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingDraughtingCallout)); e->setArgument(3,(v4_RelatedDraughtingCallout)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDimensionalExponents int IfcDimensionalExponents::LengthExponent() { return *entity->getArgument(0); } void IfcDimensionalExponents::setLengthExponent(int v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6386,7 +6386,7 @@ bool IfcDimensionalExponents::is(Type::Enum v) const { return v == Type::IfcDime Type::Enum IfcDimensionalExponents::type() const { return Type::IfcDimensionalExponents; } Type::Enum IfcDimensionalExponents::Class() { return Type::IfcDimensionalExponents; } IfcDimensionalExponents::IfcDimensionalExponents(IfcAbstractEntityPtr e) { if (!is(Type::IfcDimensionalExponents)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDimensionalExponents::IfcDimensionalExponents(int v1_LengthExponent, int v2_MassExponent, int v3_TimeExponent, int v4_ElectricCurrentExponent, int v5_ThermodynamicTemperatureExponent, int v6_AmountOfSubstanceExponent, int v7_LuminousIntensityExponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LengthExponent); e->setArgument(1,v2_MassExponent); e->setArgument(2,v3_TimeExponent); e->setArgument(3,v4_ElectricCurrentExponent); e->setArgument(4,v5_ThermodynamicTemperatureExponent); e->setArgument(5,v6_AmountOfSubstanceExponent); e->setArgument(6,v7_LuminousIntensityExponent); entity = e; } +IfcDimensionalExponents::IfcDimensionalExponents(int v1_LengthExponent, int v2_MassExponent, int v3_TimeExponent, int v4_ElectricCurrentExponent, int v5_ThermodynamicTemperatureExponent, int v6_AmountOfSubstanceExponent, int v7_LuminousIntensityExponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_LengthExponent)); e->setArgument(1,(v2_MassExponent)); e->setArgument(2,(v3_TimeExponent)); e->setArgument(3,(v4_ElectricCurrentExponent)); e->setArgument(4,(v5_ThermodynamicTemperatureExponent)); e->setArgument(5,(v6_AmountOfSubstanceExponent)); e->setArgument(6,(v7_LuminousIntensityExponent)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDirection std::vector /*[2:3]*/ IfcDirection::DirectionRatios() { return *entity->getArgument(0); } void IfcDirection::setDirectionRatios(std::vector /*[2:3]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6394,25 +6394,25 @@ bool IfcDirection::is(Type::Enum v) const { return v == Type::IfcDirection || If Type::Enum IfcDirection::type() const { return Type::IfcDirection; } Type::Enum IfcDirection::Class() { return Type::IfcDirection; } IfcDirection::IfcDirection(IfcAbstractEntityPtr e) { if (!is(Type::IfcDirection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDirection::IfcDirection(std::vector /*[2:3]*/ v1_DirectionRatios) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DirectionRatios); entity = e; } +IfcDirection::IfcDirection(std::vector /*[2:3]*/ v1_DirectionRatios) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DirectionRatios)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDiscreteAccessory bool IfcDiscreteAccessory::is(Type::Enum v) const { return v == Type::IfcDiscreteAccessory || IfcElementComponent::is(v); } Type::Enum IfcDiscreteAccessory::type() const { return Type::IfcDiscreteAccessory; } Type::Enum IfcDiscreteAccessory::Class() { return Type::IfcDiscreteAccessory; } IfcDiscreteAccessory::IfcDiscreteAccessory(IfcAbstractEntityPtr e) { if (!is(Type::IfcDiscreteAccessory)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDiscreteAccessory::IfcDiscreteAccessory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcDiscreteAccessory::IfcDiscreteAccessory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDiscreteAccessoryType bool IfcDiscreteAccessoryType::is(Type::Enum v) const { return v == Type::IfcDiscreteAccessoryType || IfcElementComponentType::is(v); } Type::Enum IfcDiscreteAccessoryType::type() const { return Type::IfcDiscreteAccessoryType; } Type::Enum IfcDiscreteAccessoryType::Class() { return Type::IfcDiscreteAccessoryType; } IfcDiscreteAccessoryType::IfcDiscreteAccessoryType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDiscreteAccessoryType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDiscreteAccessoryType::IfcDiscreteAccessoryType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcDiscreteAccessoryType::IfcDiscreteAccessoryType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionChamberElement bool IfcDistributionChamberElement::is(Type::Enum v) const { return v == Type::IfcDistributionChamberElement || IfcDistributionFlowElement::is(v); } Type::Enum IfcDistributionChamberElement::type() const { return Type::IfcDistributionChamberElement; } Type::Enum IfcDistributionChamberElement::Class() { return Type::IfcDistributionChamberElement; } IfcDistributionChamberElement::IfcDistributionChamberElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionChamberElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionChamberElement::IfcDistributionChamberElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcDistributionChamberElement::IfcDistributionChamberElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionChamberElementType IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum IfcDistributionChamberElementType::PredefinedType() { return IfcDistributionChamberElementTypeEnum::FromString(*entity->getArgument(9)); } void IfcDistributionChamberElementType::setPredefinedType(IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcDistributionChamberElementTypeEnum::ToString(v)); } @@ -6420,7 +6420,7 @@ bool IfcDistributionChamberElementType::is(Type::Enum v) const { return v == Typ Type::Enum IfcDistributionChamberElementType::type() const { return Type::IfcDistributionChamberElementType; } Type::Enum IfcDistributionChamberElementType::Class() { return Type::IfcDistributionChamberElementType; } IfcDistributionChamberElementType::IfcDistributionChamberElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionChamberElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionChamberElementType::IfcDistributionChamberElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcDistributionChamberElementType::IfcDistributionChamberElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcDistributionChamberElementTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionControlElement bool IfcDistributionControlElement::hasControlElementId() { return !entity->getArgument(8)->isNull(); } IfcIdentifier IfcDistributionControlElement::ControlElementId() { return *entity->getArgument(8); } @@ -6430,38 +6430,38 @@ bool IfcDistributionControlElement::is(Type::Enum v) const { return v == Type::I Type::Enum IfcDistributionControlElement::type() const { return Type::IfcDistributionControlElement; } Type::Enum IfcDistributionControlElement::Class() { return Type::IfcDistributionControlElement; } IfcDistributionControlElement::IfcDistributionControlElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionControlElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionControlElement::IfcDistributionControlElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcIdentifier v9_ControlElementId) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ControlElementId); entity = e; } +IfcDistributionControlElement::IfcDistributionControlElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_ControlElementId) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ControlElementId) { e->setArgument(8,(*v9_ControlElementId)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionControlElementType bool IfcDistributionControlElementType::is(Type::Enum v) const { return v == Type::IfcDistributionControlElementType || IfcDistributionElementType::is(v); } Type::Enum IfcDistributionControlElementType::type() const { return Type::IfcDistributionControlElementType; } Type::Enum IfcDistributionControlElementType::Class() { return Type::IfcDistributionControlElementType; } IfcDistributionControlElementType::IfcDistributionControlElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionControlElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionControlElementType::IfcDistributionControlElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcDistributionControlElementType::IfcDistributionControlElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionElement bool IfcDistributionElement::is(Type::Enum v) const { return v == Type::IfcDistributionElement || IfcElement::is(v); } Type::Enum IfcDistributionElement::type() const { return Type::IfcDistributionElement; } Type::Enum IfcDistributionElement::Class() { return Type::IfcDistributionElement; } IfcDistributionElement::IfcDistributionElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionElement::IfcDistributionElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcDistributionElement::IfcDistributionElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionElementType bool IfcDistributionElementType::is(Type::Enum v) const { return v == Type::IfcDistributionElementType || IfcElementType::is(v); } Type::Enum IfcDistributionElementType::type() const { return Type::IfcDistributionElementType; } Type::Enum IfcDistributionElementType::Class() { return Type::IfcDistributionElementType; } IfcDistributionElementType::IfcDistributionElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionElementType::IfcDistributionElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcDistributionElementType::IfcDistributionElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionFlowElement IfcRelFlowControlElements::list IfcDistributionFlowElement::HasControlElements() { RETURN_INVERSE(IfcRelFlowControlElements) } bool IfcDistributionFlowElement::is(Type::Enum v) const { return v == Type::IfcDistributionFlowElement || IfcDistributionElement::is(v); } Type::Enum IfcDistributionFlowElement::type() const { return Type::IfcDistributionFlowElement; } Type::Enum IfcDistributionFlowElement::Class() { return Type::IfcDistributionFlowElement; } IfcDistributionFlowElement::IfcDistributionFlowElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionFlowElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionFlowElement::IfcDistributionFlowElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcDistributionFlowElement::IfcDistributionFlowElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionFlowElementType bool IfcDistributionFlowElementType::is(Type::Enum v) const { return v == Type::IfcDistributionFlowElementType || IfcDistributionElementType::is(v); } Type::Enum IfcDistributionFlowElementType::type() const { return Type::IfcDistributionFlowElementType; } Type::Enum IfcDistributionFlowElementType::Class() { return Type::IfcDistributionFlowElementType; } IfcDistributionFlowElementType::IfcDistributionFlowElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionFlowElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionFlowElementType::IfcDistributionFlowElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcDistributionFlowElementType::IfcDistributionFlowElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDistributionPort bool IfcDistributionPort::hasFlowDirection() { return !entity->getArgument(7)->isNull(); } IfcFlowDirectionEnum::IfcFlowDirectionEnum IfcDistributionPort::FlowDirection() { return IfcFlowDirectionEnum::FromString(*entity->getArgument(7)); } @@ -6470,7 +6470,7 @@ bool IfcDistributionPort::is(Type::Enum v) const { return v == Type::IfcDistribu Type::Enum IfcDistributionPort::type() const { return Type::IfcDistributionPort; } Type::Enum IfcDistributionPort::Class() { return Type::IfcDistributionPort; } IfcDistributionPort::IfcDistributionPort(IfcAbstractEntityPtr e) { if (!is(Type::IfcDistributionPort)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDistributionPort::IfcDistributionPort(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcFlowDirectionEnum::IfcFlowDirectionEnum v8_FlowDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_FlowDirection); entity = e; } +IfcDistributionPort::IfcDistributionPort(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_FlowDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_FlowDirection) { e->setArgument(7,*v8_FlowDirection,IfcFlowDirectionEnum::ToString(*v8_FlowDirection)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDocumentElectronicFormat bool IfcDocumentElectronicFormat::hasFileExtension() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcDocumentElectronicFormat::FileExtension() { return *entity->getArgument(0); } @@ -6485,7 +6485,7 @@ bool IfcDocumentElectronicFormat::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcDocumentElectronicFormat::type() const { return Type::IfcDocumentElectronicFormat; } Type::Enum IfcDocumentElectronicFormat::Class() { return Type::IfcDocumentElectronicFormat; } IfcDocumentElectronicFormat::IfcDocumentElectronicFormat(IfcAbstractEntityPtr e) { if (!is(Type::IfcDocumentElectronicFormat)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDocumentElectronicFormat::IfcDocumentElectronicFormat(IfcLabel v1_FileExtension, IfcLabel v2_MimeContentType, IfcLabel v3_MimeSubtype) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_FileExtension); e->setArgument(1,v2_MimeContentType); e->setArgument(2,v3_MimeSubtype); entity = e; } +IfcDocumentElectronicFormat::IfcDocumentElectronicFormat(optional v1_FileExtension, optional v2_MimeContentType, optional v3_MimeSubtype) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_FileExtension) { e->setArgument(0,(*v1_FileExtension)); } else { e->setArgument(0); } ; if (v2_MimeContentType) { e->setArgument(1,(*v2_MimeContentType)); } else { e->setArgument(1); } ; if (v3_MimeSubtype) { e->setArgument(2,(*v3_MimeSubtype)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDocumentInformation IfcIdentifier IfcDocumentInformation::DocumentId() { return *entity->getArgument(0); } void IfcDocumentInformation::setDocumentId(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6542,7 +6542,7 @@ bool IfcDocumentInformation::is(Type::Enum v) const { return v == Type::IfcDocum Type::Enum IfcDocumentInformation::type() const { return Type::IfcDocumentInformation; } Type::Enum IfcDocumentInformation::Class() { return Type::IfcDocumentInformation; } IfcDocumentInformation::IfcDocumentInformation(IfcAbstractEntityPtr e) { if (!is(Type::IfcDocumentInformation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDocumentInformation::IfcDocumentInformation(IfcIdentifier v1_DocumentId, IfcLabel v2_Name, IfcText v3_Description, SHARED_PTR< IfcTemplatedEntityList > v4_DocumentReferences, IfcText v5_Purpose, IfcText v6_IntendedUse, IfcText v7_Scope, IfcLabel v8_Revision, IfcActorSelect v9_DocumentOwner, IfcEntities v10_Editors, IfcDateAndTime* v11_CreationTime, IfcDateAndTime* v12_LastRevisionTime, IfcDocumentElectronicFormat* v13_ElectronicFormat, IfcCalendarDate* v14_ValidFrom, IfcCalendarDate* v15_ValidUntil, IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum v16_Confidentiality, IfcDocumentStatusEnum::IfcDocumentStatusEnum v17_Status) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DocumentId); e->setArgument(1,v2_Name); e->setArgument(2,v3_Description); e->setArgument(3,v4_DocumentReferences->generalize()); e->setArgument(4,v5_Purpose); e->setArgument(5,v6_IntendedUse); e->setArgument(6,v7_Scope); e->setArgument(7,v8_Revision); e->setArgument(8,v9_DocumentOwner); e->setArgument(9,v10_Editors); e->setArgument(10,v11_CreationTime); e->setArgument(11,v12_LastRevisionTime); e->setArgument(12,v13_ElectronicFormat); e->setArgument(13,v14_ValidFrom); e->setArgument(14,v15_ValidUntil); e->setArgument(15,v16_Confidentiality); e->setArgument(16,v17_Status); entity = e; } +IfcDocumentInformation::IfcDocumentInformation(IfcIdentifier v1_DocumentId, IfcLabel v2_Name, optional v3_Description, optional >> v4_DocumentReferences, optional v5_Purpose, optional v6_IntendedUse, optional v7_Scope, optional v8_Revision, optional v9_DocumentOwner, optional v10_Editors, IfcDateAndTime* v11_CreationTime, IfcDateAndTime* v12_LastRevisionTime, IfcDocumentElectronicFormat* v13_ElectronicFormat, IfcCalendarDate* v14_ValidFrom, IfcCalendarDate* v15_ValidUntil, optional v16_Confidentiality, optional v17_Status) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DocumentId)); e->setArgument(1,(v2_Name)); if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; if (v4_DocumentReferences) { e->setArgument(3,(*v4_DocumentReferences)->generalize()); } else { e->setArgument(3); } ; if (v5_Purpose) { e->setArgument(4,(*v5_Purpose)); } else { e->setArgument(4); } ; if (v6_IntendedUse) { e->setArgument(5,(*v6_IntendedUse)); } else { e->setArgument(5); } ; if (v7_Scope) { e->setArgument(6,(*v7_Scope)); } else { e->setArgument(6); } ; if (v8_Revision) { e->setArgument(7,(*v8_Revision)); } else { e->setArgument(7); } ; if (v9_DocumentOwner) { e->setArgument(8,(*v9_DocumentOwner)); } else { e->setArgument(8); } ; if (v10_Editors) { e->setArgument(9,(*v10_Editors)); } else { e->setArgument(9); } ; e->setArgument(10,(v11_CreationTime)); e->setArgument(11,(v12_LastRevisionTime)); e->setArgument(12,(v13_ElectronicFormat)); e->setArgument(13,(v14_ValidFrom)); e->setArgument(14,(v15_ValidUntil)); if (v16_Confidentiality) { e->setArgument(15,*v16_Confidentiality,IfcDocumentConfidentialityEnum::ToString(*v16_Confidentiality)); } else { e->setArgument(15); } ; if (v17_Status) { e->setArgument(16,*v17_Status,IfcDocumentStatusEnum::ToString(*v17_Status)); } else { e->setArgument(16); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDocumentInformationRelationship IfcDocumentInformation* IfcDocumentInformationRelationship::RelatingDocument() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcDocumentInformationRelationship::setRelatingDocument(IfcDocumentInformation* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6555,14 +6555,14 @@ bool IfcDocumentInformationRelationship::is(Type::Enum v) const { return v == Ty Type::Enum IfcDocumentInformationRelationship::type() const { return Type::IfcDocumentInformationRelationship; } Type::Enum IfcDocumentInformationRelationship::Class() { return Type::IfcDocumentInformationRelationship; } IfcDocumentInformationRelationship::IfcDocumentInformationRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcDocumentInformationRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDocumentInformationRelationship::IfcDocumentInformationRelationship(IfcDocumentInformation* v1_RelatingDocument, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedDocuments, IfcLabel v3_RelationshipType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelatingDocument); e->setArgument(1,v2_RelatedDocuments->generalize()); e->setArgument(2,v3_RelationshipType); entity = e; } +IfcDocumentInformationRelationship::IfcDocumentInformationRelationship(IfcDocumentInformation* v1_RelatingDocument, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedDocuments, optional v3_RelationshipType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelatingDocument)); e->setArgument(1,(v2_RelatedDocuments)->generalize()); if (v3_RelationshipType) { e->setArgument(2,(*v3_RelationshipType)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDocumentReference IfcDocumentInformation::list IfcDocumentReference::ReferenceToDocument() { RETURN_INVERSE(IfcDocumentInformation) } bool IfcDocumentReference::is(Type::Enum v) const { return v == Type::IfcDocumentReference || IfcExternalReference::is(v); } Type::Enum IfcDocumentReference::type() const { return Type::IfcDocumentReference; } Type::Enum IfcDocumentReference::Class() { return Type::IfcDocumentReference; } IfcDocumentReference::IfcDocumentReference(IfcAbstractEntityPtr e) { if (!is(Type::IfcDocumentReference)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDocumentReference::IfcDocumentReference(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcDocumentReference::IfcDocumentReference(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDoor bool IfcDoor::hasOverallHeight() { return !entity->getArgument(8)->isNull(); } IfcPositiveLengthMeasure IfcDoor::OverallHeight() { return *entity->getArgument(8); } @@ -6574,7 +6574,7 @@ bool IfcDoor::is(Type::Enum v) const { return v == Type::IfcDoor || IfcBuildingE Type::Enum IfcDoor::type() const { return Type::IfcDoor; } Type::Enum IfcDoor::Class() { return Type::IfcDoor; } IfcDoor::IfcDoor(IfcAbstractEntityPtr e) { if (!is(Type::IfcDoor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDoor::IfcDoor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_OverallHeight, IfcPositiveLengthMeasure v10_OverallWidth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_OverallHeight); e->setArgument(9,v10_OverallWidth); entity = e; } +IfcDoor::IfcDoor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OverallHeight, optional v10_OverallWidth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_OverallHeight) { e->setArgument(8,(*v9_OverallHeight)); } else { e->setArgument(8); } ; if (v10_OverallWidth) { e->setArgument(9,(*v10_OverallWidth)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDoorLiningProperties bool IfcDoorLiningProperties::hasLiningDepth() { return !entity->getArgument(4)->isNull(); } IfcPositiveLengthMeasure IfcDoorLiningProperties::LiningDepth() { return *entity->getArgument(4); } @@ -6613,7 +6613,7 @@ bool IfcDoorLiningProperties::is(Type::Enum v) const { return v == Type::IfcDoor Type::Enum IfcDoorLiningProperties::type() const { return Type::IfcDoorLiningProperties; } Type::Enum IfcDoorLiningProperties::Class() { return Type::IfcDoorLiningProperties; } IfcDoorLiningProperties::IfcDoorLiningProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcDoorLiningProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDoorLiningProperties::IfcDoorLiningProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_LiningDepth, IfcPositiveLengthMeasure v6_LiningThickness, IfcPositiveLengthMeasure v7_ThresholdDepth, IfcPositiveLengthMeasure v8_ThresholdThickness, IfcPositiveLengthMeasure v9_TransomThickness, IfcLengthMeasure v10_TransomOffset, IfcLengthMeasure v11_LiningOffset, IfcLengthMeasure v12_ThresholdOffset, IfcPositiveLengthMeasure v13_CasingThickness, IfcPositiveLengthMeasure v14_CasingDepth, IfcShapeAspect* v15_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_LiningDepth); e->setArgument(5,v6_LiningThickness); e->setArgument(6,v7_ThresholdDepth); e->setArgument(7,v8_ThresholdThickness); e->setArgument(8,v9_TransomThickness); e->setArgument(9,v10_TransomOffset); e->setArgument(10,v11_LiningOffset); e->setArgument(11,v12_ThresholdOffset); e->setArgument(12,v13_CasingThickness); e->setArgument(13,v14_CasingDepth); e->setArgument(14,v15_ShapeAspectStyle); entity = e; } +IfcDoorLiningProperties::IfcDoorLiningProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_LiningDepth, optional v6_LiningThickness, optional v7_ThresholdDepth, optional v8_ThresholdThickness, optional v9_TransomThickness, optional v10_TransomOffset, optional v11_LiningOffset, optional v12_ThresholdOffset, optional v13_CasingThickness, optional v14_CasingDepth, IfcShapeAspect* v15_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_LiningDepth) { e->setArgument(4,(*v5_LiningDepth)); } else { e->setArgument(4); } ; if (v6_LiningThickness) { e->setArgument(5,(*v6_LiningThickness)); } else { e->setArgument(5); } ; if (v7_ThresholdDepth) { e->setArgument(6,(*v7_ThresholdDepth)); } else { e->setArgument(6); } ; if (v8_ThresholdThickness) { e->setArgument(7,(*v8_ThresholdThickness)); } else { e->setArgument(7); } ; if (v9_TransomThickness) { e->setArgument(8,(*v9_TransomThickness)); } else { e->setArgument(8); } ; if (v10_TransomOffset) { e->setArgument(9,(*v10_TransomOffset)); } else { e->setArgument(9); } ; if (v11_LiningOffset) { e->setArgument(10,(*v11_LiningOffset)); } else { e->setArgument(10); } ; if (v12_ThresholdOffset) { e->setArgument(11,(*v12_ThresholdOffset)); } else { e->setArgument(11); } ; if (v13_CasingThickness) { e->setArgument(12,(*v13_CasingThickness)); } else { e->setArgument(12); } ; if (v14_CasingDepth) { e->setArgument(13,(*v14_CasingDepth)); } else { e->setArgument(13); } ; e->setArgument(14,(v15_ShapeAspectStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDoorPanelProperties bool IfcDoorPanelProperties::hasPanelDepth() { return !entity->getArgument(4)->isNull(); } IfcPositiveLengthMeasure IfcDoorPanelProperties::PanelDepth() { return *entity->getArgument(4); } @@ -6632,7 +6632,7 @@ bool IfcDoorPanelProperties::is(Type::Enum v) const { return v == Type::IfcDoorP Type::Enum IfcDoorPanelProperties::type() const { return Type::IfcDoorPanelProperties; } Type::Enum IfcDoorPanelProperties::Class() { return Type::IfcDoorPanelProperties; } IfcDoorPanelProperties::IfcDoorPanelProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcDoorPanelProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDoorPanelProperties::IfcDoorPanelProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_PanelDepth, IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum v6_PanelOperation, IfcNormalisedRatioMeasure v7_PanelWidth, IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum v8_PanelPosition, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_PanelDepth); e->setArgument(5,v6_PanelOperation); e->setArgument(6,v7_PanelWidth); e->setArgument(7,v8_PanelPosition); e->setArgument(8,v9_ShapeAspectStyle); entity = e; } +IfcDoorPanelProperties::IfcDoorPanelProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_PanelDepth, IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum v6_PanelOperation, optional v7_PanelWidth, IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum v8_PanelPosition, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_PanelDepth) { e->setArgument(4,(*v5_PanelDepth)); } else { e->setArgument(4); } ; e->setArgument(5,v6_PanelOperation,IfcDoorPanelOperationEnum::ToString(v6_PanelOperation)); if (v7_PanelWidth) { e->setArgument(6,(*v7_PanelWidth)); } else { e->setArgument(6); } ; e->setArgument(7,v8_PanelPosition,IfcDoorPanelPositionEnum::ToString(v8_PanelPosition)); e->setArgument(8,(v9_ShapeAspectStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDoorStyle IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum IfcDoorStyle::OperationType() { return IfcDoorStyleOperationEnum::FromString(*entity->getArgument(8)); } void IfcDoorStyle::setOperationType(IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcDoorStyleOperationEnum::ToString(v)); } @@ -6646,7 +6646,7 @@ bool IfcDoorStyle::is(Type::Enum v) const { return v == Type::IfcDoorStyle || If Type::Enum IfcDoorStyle::type() const { return Type::IfcDoorStyle; } Type::Enum IfcDoorStyle::Class() { return Type::IfcDoorStyle; } IfcDoorStyle::IfcDoorStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcDoorStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDoorStyle::IfcDoorStyle(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum v9_OperationType, IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum v10_ConstructionType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_OperationType); e->setArgument(9,v10_ConstructionType); e->setArgument(10,v11_ParameterTakesPrecedence); e->setArgument(11,v12_Sizeable); entity = e; } +IfcDoorStyle::IfcDoorStyle(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum v9_OperationType, IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum v10_ConstructionType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_OperationType,IfcDoorStyleOperationEnum::ToString(v9_OperationType)); e->setArgument(9,v10_ConstructionType,IfcDoorStyleConstructionEnum::ToString(v10_ConstructionType)); e->setArgument(10,(v11_ParameterTakesPrecedence)); e->setArgument(11,(v12_Sizeable)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDraughtingCallout SHARED_PTR< IfcTemplatedEntityList > IfcDraughtingCallout::Contents() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcDraughtingCallout::setContents(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -6656,7 +6656,7 @@ bool IfcDraughtingCallout::is(Type::Enum v) const { return v == Type::IfcDraught Type::Enum IfcDraughtingCallout::type() const { return Type::IfcDraughtingCallout; } Type::Enum IfcDraughtingCallout::Class() { return Type::IfcDraughtingCallout; } IfcDraughtingCallout::IfcDraughtingCallout(IfcAbstractEntityPtr e) { if (!is(Type::IfcDraughtingCallout)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDraughtingCallout::IfcDraughtingCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcDraughtingCallout::IfcDraughtingCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDraughtingCalloutRelationship bool IfcDraughtingCalloutRelationship::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcDraughtingCalloutRelationship::Name() { return *entity->getArgument(0); } @@ -6672,25 +6672,25 @@ bool IfcDraughtingCalloutRelationship::is(Type::Enum v) const { return v == Type Type::Enum IfcDraughtingCalloutRelationship::type() const { return Type::IfcDraughtingCalloutRelationship; } Type::Enum IfcDraughtingCalloutRelationship::Class() { return Type::IfcDraughtingCalloutRelationship; } IfcDraughtingCalloutRelationship::IfcDraughtingCalloutRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcDraughtingCalloutRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDraughtingCalloutRelationship::IfcDraughtingCalloutRelationship(IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingDraughtingCallout); e->setArgument(3,v4_RelatedDraughtingCallout); entity = e; } +IfcDraughtingCalloutRelationship::IfcDraughtingCalloutRelationship(optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingDraughtingCallout)); e->setArgument(3,(v4_RelatedDraughtingCallout)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDraughtingPreDefinedColour bool IfcDraughtingPreDefinedColour::is(Type::Enum v) const { return v == Type::IfcDraughtingPreDefinedColour || IfcPreDefinedColour::is(v); } Type::Enum IfcDraughtingPreDefinedColour::type() const { return Type::IfcDraughtingPreDefinedColour; } Type::Enum IfcDraughtingPreDefinedColour::Class() { return Type::IfcDraughtingPreDefinedColour; } IfcDraughtingPreDefinedColour::IfcDraughtingPreDefinedColour(IfcAbstractEntityPtr e) { if (!is(Type::IfcDraughtingPreDefinedColour)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDraughtingPreDefinedColour::IfcDraughtingPreDefinedColour(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcDraughtingPreDefinedColour::IfcDraughtingPreDefinedColour(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDraughtingPreDefinedCurveFont bool IfcDraughtingPreDefinedCurveFont::is(Type::Enum v) const { return v == Type::IfcDraughtingPreDefinedCurveFont || IfcPreDefinedCurveFont::is(v); } Type::Enum IfcDraughtingPreDefinedCurveFont::type() const { return Type::IfcDraughtingPreDefinedCurveFont; } Type::Enum IfcDraughtingPreDefinedCurveFont::Class() { return Type::IfcDraughtingPreDefinedCurveFont; } IfcDraughtingPreDefinedCurveFont::IfcDraughtingPreDefinedCurveFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcDraughtingPreDefinedCurveFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDraughtingPreDefinedCurveFont::IfcDraughtingPreDefinedCurveFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcDraughtingPreDefinedCurveFont::IfcDraughtingPreDefinedCurveFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDraughtingPreDefinedTextFont bool IfcDraughtingPreDefinedTextFont::is(Type::Enum v) const { return v == Type::IfcDraughtingPreDefinedTextFont || IfcPreDefinedTextFont::is(v); } Type::Enum IfcDraughtingPreDefinedTextFont::type() const { return Type::IfcDraughtingPreDefinedTextFont; } Type::Enum IfcDraughtingPreDefinedTextFont::Class() { return Type::IfcDraughtingPreDefinedTextFont; } IfcDraughtingPreDefinedTextFont::IfcDraughtingPreDefinedTextFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcDraughtingPreDefinedTextFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDraughtingPreDefinedTextFont::IfcDraughtingPreDefinedTextFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcDraughtingPreDefinedTextFont::IfcDraughtingPreDefinedTextFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDuctFittingType IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum IfcDuctFittingType::PredefinedType() { return IfcDuctFittingTypeEnum::FromString(*entity->getArgument(9)); } void IfcDuctFittingType::setPredefinedType(IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcDuctFittingTypeEnum::ToString(v)); } @@ -6698,7 +6698,7 @@ bool IfcDuctFittingType::is(Type::Enum v) const { return v == Type::IfcDuctFitti Type::Enum IfcDuctFittingType::type() const { return Type::IfcDuctFittingType; } Type::Enum IfcDuctFittingType::Class() { return Type::IfcDuctFittingType; } IfcDuctFittingType::IfcDuctFittingType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDuctFittingType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDuctFittingType::IfcDuctFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcDuctFittingType::IfcDuctFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcDuctFittingTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDuctSegmentType IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum IfcDuctSegmentType::PredefinedType() { return IfcDuctSegmentTypeEnum::FromString(*entity->getArgument(9)); } void IfcDuctSegmentType::setPredefinedType(IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcDuctSegmentTypeEnum::ToString(v)); } @@ -6706,7 +6706,7 @@ bool IfcDuctSegmentType::is(Type::Enum v) const { return v == Type::IfcDuctSegme Type::Enum IfcDuctSegmentType::type() const { return Type::IfcDuctSegmentType; } Type::Enum IfcDuctSegmentType::Class() { return Type::IfcDuctSegmentType; } IfcDuctSegmentType::IfcDuctSegmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDuctSegmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDuctSegmentType::IfcDuctSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcDuctSegmentType::IfcDuctSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcDuctSegmentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcDuctSilencerType IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum IfcDuctSilencerType::PredefinedType() { return IfcDuctSilencerTypeEnum::FromString(*entity->getArgument(9)); } void IfcDuctSilencerType::setPredefinedType(IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcDuctSilencerTypeEnum::ToString(v)); } @@ -6714,7 +6714,7 @@ bool IfcDuctSilencerType::is(Type::Enum v) const { return v == Type::IfcDuctSile Type::Enum IfcDuctSilencerType::type() const { return Type::IfcDuctSilencerType; } Type::Enum IfcDuctSilencerType::Class() { return Type::IfcDuctSilencerType; } IfcDuctSilencerType::IfcDuctSilencerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcDuctSilencerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcDuctSilencerType::IfcDuctSilencerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcDuctSilencerType::IfcDuctSilencerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcDuctSilencerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEdge IfcVertex* IfcEdge::EdgeStart() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcEdge::setEdgeStart(IfcVertex* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6724,7 +6724,7 @@ bool IfcEdge::is(Type::Enum v) const { return v == Type::IfcEdge || IfcTopologic Type::Enum IfcEdge::type() const { return Type::IfcEdge; } Type::Enum IfcEdge::Class() { return Type::IfcEdge; } IfcEdge::IfcEdge(IfcAbstractEntityPtr e) { if (!is(Type::IfcEdge)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEdge::IfcEdge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeStart); e->setArgument(1,v2_EdgeEnd); entity = e; } +IfcEdge::IfcEdge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeStart)); e->setArgument(1,(v2_EdgeEnd)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEdgeCurve IfcCurve* IfcEdgeCurve::EdgeGeometry() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcEdgeCurve::setEdgeGeometry(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -6734,7 +6734,7 @@ bool IfcEdgeCurve::is(Type::Enum v) const { return v == Type::IfcEdgeCurve || If Type::Enum IfcEdgeCurve::type() const { return Type::IfcEdgeCurve; } Type::Enum IfcEdgeCurve::Class() { return Type::IfcEdgeCurve; } IfcEdgeCurve::IfcEdgeCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcEdgeCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEdgeCurve::IfcEdgeCurve(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcCurve* v3_EdgeGeometry, bool v4_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeStart); e->setArgument(1,v2_EdgeEnd); e->setArgument(2,v3_EdgeGeometry); e->setArgument(3,v4_SameSense); entity = e; } +IfcEdgeCurve::IfcEdgeCurve(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcCurve* v3_EdgeGeometry, bool v4_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeStart)); e->setArgument(1,(v2_EdgeEnd)); e->setArgument(2,(v3_EdgeGeometry)); e->setArgument(3,(v4_SameSense)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEdgeFeature bool IfcEdgeFeature::hasFeatureLength() { return !entity->getArgument(8)->isNull(); } IfcPositiveLengthMeasure IfcEdgeFeature::FeatureLength() { return *entity->getArgument(8); } @@ -6743,7 +6743,7 @@ bool IfcEdgeFeature::is(Type::Enum v) const { return v == Type::IfcEdgeFeature | Type::Enum IfcEdgeFeature::type() const { return Type::IfcEdgeFeature; } Type::Enum IfcEdgeFeature::Class() { return Type::IfcEdgeFeature; } IfcEdgeFeature::IfcEdgeFeature(IfcAbstractEntityPtr e) { if (!is(Type::IfcEdgeFeature)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEdgeFeature::IfcEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_FeatureLength); entity = e; } +IfcEdgeFeature::IfcEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_FeatureLength) { e->setArgument(8,(*v9_FeatureLength)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEdgeLoop SHARED_PTR< IfcTemplatedEntityList > IfcEdgeLoop::EdgeList() { RETURN_AS_LIST(IfcOrientedEdge,0) } void IfcEdgeLoop::setEdgeList(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -6751,7 +6751,7 @@ bool IfcEdgeLoop::is(Type::Enum v) const { return v == Type::IfcEdgeLoop || IfcL Type::Enum IfcEdgeLoop::type() const { return Type::IfcEdgeLoop; } Type::Enum IfcEdgeLoop::Class() { return Type::IfcEdgeLoop; } IfcEdgeLoop::IfcEdgeLoop(IfcAbstractEntityPtr e) { if (!is(Type::IfcEdgeLoop)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEdgeLoop::IfcEdgeLoop(SHARED_PTR< IfcTemplatedEntityList > v1_EdgeList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeList->generalize()); entity = e; } +IfcEdgeLoop::IfcEdgeLoop(SHARED_PTR< IfcTemplatedEntityList > v1_EdgeList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeList)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricApplianceType IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum IfcElectricApplianceType::PredefinedType() { return IfcElectricApplianceTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricApplianceType::setPredefinedType(IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricApplianceTypeEnum::ToString(v)); } @@ -6759,7 +6759,7 @@ bool IfcElectricApplianceType::is(Type::Enum v) const { return v == Type::IfcEle Type::Enum IfcElectricApplianceType::type() const { return Type::IfcElectricApplianceType; } Type::Enum IfcElectricApplianceType::Class() { return Type::IfcElectricApplianceType; } IfcElectricApplianceType::IfcElectricApplianceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricApplianceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricApplianceType::IfcElectricApplianceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricApplianceType::IfcElectricApplianceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricApplianceTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricDistributionPoint IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum IfcElectricDistributionPoint::DistributionPointFunction() { return IfcElectricDistributionPointFunctionEnum::FromString(*entity->getArgument(8)); } void IfcElectricDistributionPoint::setDistributionPointFunction(IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcElectricDistributionPointFunctionEnum::ToString(v)); } @@ -6770,7 +6770,7 @@ bool IfcElectricDistributionPoint::is(Type::Enum v) const { return v == Type::If Type::Enum IfcElectricDistributionPoint::type() const { return Type::IfcElectricDistributionPoint; } Type::Enum IfcElectricDistributionPoint::Class() { return Type::IfcElectricDistributionPoint; } IfcElectricDistributionPoint::IfcElectricDistributionPoint(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricDistributionPoint)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricDistributionPoint::IfcElectricDistributionPoint(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum v9_DistributionPointFunction, IfcLabel v10_UserDefinedFunction) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_DistributionPointFunction); e->setArgument(9,v10_UserDefinedFunction); entity = e; } +IfcElectricDistributionPoint::IfcElectricDistributionPoint(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum v9_DistributionPointFunction, optional v10_UserDefinedFunction) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_DistributionPointFunction,IfcElectricDistributionPointFunctionEnum::ToString(v9_DistributionPointFunction)); if (v10_UserDefinedFunction) { e->setArgument(9,(*v10_UserDefinedFunction)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricFlowStorageDeviceType IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum IfcElectricFlowStorageDeviceType::PredefinedType() { return IfcElectricFlowStorageDeviceTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricFlowStorageDeviceType::setPredefinedType(IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricFlowStorageDeviceTypeEnum::ToString(v)); } @@ -6778,7 +6778,7 @@ bool IfcElectricFlowStorageDeviceType::is(Type::Enum v) const { return v == Type Type::Enum IfcElectricFlowStorageDeviceType::type() const { return Type::IfcElectricFlowStorageDeviceType; } Type::Enum IfcElectricFlowStorageDeviceType::Class() { return Type::IfcElectricFlowStorageDeviceType; } IfcElectricFlowStorageDeviceType::IfcElectricFlowStorageDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricFlowStorageDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricFlowStorageDeviceType::IfcElectricFlowStorageDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricFlowStorageDeviceType::IfcElectricFlowStorageDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricFlowStorageDeviceTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricGeneratorType IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum IfcElectricGeneratorType::PredefinedType() { return IfcElectricGeneratorTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricGeneratorType::setPredefinedType(IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricGeneratorTypeEnum::ToString(v)); } @@ -6786,7 +6786,7 @@ bool IfcElectricGeneratorType::is(Type::Enum v) const { return v == Type::IfcEle Type::Enum IfcElectricGeneratorType::type() const { return Type::IfcElectricGeneratorType; } Type::Enum IfcElectricGeneratorType::Class() { return Type::IfcElectricGeneratorType; } IfcElectricGeneratorType::IfcElectricGeneratorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricGeneratorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricGeneratorType::IfcElectricGeneratorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricGeneratorType::IfcElectricGeneratorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricGeneratorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricHeaterType IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum IfcElectricHeaterType::PredefinedType() { return IfcElectricHeaterTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricHeaterType::setPredefinedType(IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricHeaterTypeEnum::ToString(v)); } @@ -6794,7 +6794,7 @@ bool IfcElectricHeaterType::is(Type::Enum v) const { return v == Type::IfcElectr Type::Enum IfcElectricHeaterType::type() const { return Type::IfcElectricHeaterType; } Type::Enum IfcElectricHeaterType::Class() { return Type::IfcElectricHeaterType; } IfcElectricHeaterType::IfcElectricHeaterType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricHeaterType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricHeaterType::IfcElectricHeaterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricHeaterType::IfcElectricHeaterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricHeaterTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricMotorType IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum IfcElectricMotorType::PredefinedType() { return IfcElectricMotorTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricMotorType::setPredefinedType(IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricMotorTypeEnum::ToString(v)); } @@ -6802,7 +6802,7 @@ bool IfcElectricMotorType::is(Type::Enum v) const { return v == Type::IfcElectri Type::Enum IfcElectricMotorType::type() const { return Type::IfcElectricMotorType; } Type::Enum IfcElectricMotorType::Class() { return Type::IfcElectricMotorType; } IfcElectricMotorType::IfcElectricMotorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricMotorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricMotorType::IfcElectricMotorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricMotorType::IfcElectricMotorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricMotorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricTimeControlType IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum IfcElectricTimeControlType::PredefinedType() { return IfcElectricTimeControlTypeEnum::FromString(*entity->getArgument(9)); } void IfcElectricTimeControlType::setPredefinedType(IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcElectricTimeControlTypeEnum::ToString(v)); } @@ -6810,7 +6810,7 @@ bool IfcElectricTimeControlType::is(Type::Enum v) const { return v == Type::IfcE Type::Enum IfcElectricTimeControlType::type() const { return Type::IfcElectricTimeControlType; } Type::Enum IfcElectricTimeControlType::Class() { return Type::IfcElectricTimeControlType; } IfcElectricTimeControlType::IfcElectricTimeControlType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricTimeControlType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricTimeControlType::IfcElectricTimeControlType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElectricTimeControlType::IfcElectricTimeControlType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElectricTimeControlTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricalBaseProperties bool IfcElectricalBaseProperties::hasElectricCurrentType() { return !entity->getArgument(6)->isNull(); } IfcElectricCurrentEnum::IfcElectricCurrentEnum IfcElectricalBaseProperties::ElectricCurrentType() { return IfcElectricCurrentEnum::FromString(*entity->getArgument(6)); } @@ -6837,19 +6837,19 @@ bool IfcElectricalBaseProperties::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcElectricalBaseProperties::type() const { return Type::IfcElectricalBaseProperties; } Type::Enum IfcElectricalBaseProperties::Class() { return Type::IfcElectricalBaseProperties; } IfcElectricalBaseProperties::IfcElectricalBaseProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricalBaseProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricalBaseProperties::IfcElectricalBaseProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcEnergySequenceEnum::IfcEnergySequenceEnum v5_EnergySequence, IfcLabel v6_UserDefinedEnergySequence, IfcElectricCurrentEnum::IfcElectricCurrentEnum v7_ElectricCurrentType, IfcElectricVoltageMeasure v8_InputVoltage, IfcFrequencyMeasure v9_InputFrequency, IfcElectricCurrentMeasure v10_FullLoadCurrent, IfcElectricCurrentMeasure v11_MinimumCircuitCurrent, IfcPowerMeasure v12_MaximumPowerInput, IfcPowerMeasure v13_RatedPowerInput, int v14_InputPhase) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_EnergySequence); e->setArgument(5,v6_UserDefinedEnergySequence); e->setArgument(6,v7_ElectricCurrentType); e->setArgument(7,v8_InputVoltage); e->setArgument(8,v9_InputFrequency); e->setArgument(9,v10_FullLoadCurrent); e->setArgument(10,v11_MinimumCircuitCurrent); e->setArgument(11,v12_MaximumPowerInput); e->setArgument(12,v13_RatedPowerInput); e->setArgument(13,v14_InputPhase); entity = e; } +IfcElectricalBaseProperties::IfcElectricalBaseProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_EnergySequence, optional v6_UserDefinedEnergySequence, optional v7_ElectricCurrentType, IfcElectricVoltageMeasure v8_InputVoltage, IfcFrequencyMeasure v9_InputFrequency, optional v10_FullLoadCurrent, optional v11_MinimumCircuitCurrent, optional v12_MaximumPowerInput, optional v13_RatedPowerInput, int v14_InputPhase) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_EnergySequence) { e->setArgument(4,*v5_EnergySequence,IfcEnergySequenceEnum::ToString(*v5_EnergySequence)); } else { e->setArgument(4); } ; if (v6_UserDefinedEnergySequence) { e->setArgument(5,(*v6_UserDefinedEnergySequence)); } else { e->setArgument(5); } ; if (v7_ElectricCurrentType) { e->setArgument(6,*v7_ElectricCurrentType,IfcElectricCurrentEnum::ToString(*v7_ElectricCurrentType)); } else { e->setArgument(6); } ; e->setArgument(7,(v8_InputVoltage)); e->setArgument(8,(v9_InputFrequency)); if (v10_FullLoadCurrent) { e->setArgument(9,(*v10_FullLoadCurrent)); } else { e->setArgument(9); } ; if (v11_MinimumCircuitCurrent) { e->setArgument(10,(*v11_MinimumCircuitCurrent)); } else { e->setArgument(10); } ; if (v12_MaximumPowerInput) { e->setArgument(11,(*v12_MaximumPowerInput)); } else { e->setArgument(11); } ; if (v13_RatedPowerInput) { e->setArgument(12,(*v13_RatedPowerInput)); } else { e->setArgument(12); } ; e->setArgument(13,(v14_InputPhase)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricalCircuit bool IfcElectricalCircuit::is(Type::Enum v) const { return v == Type::IfcElectricalCircuit || IfcSystem::is(v); } Type::Enum IfcElectricalCircuit::type() const { return Type::IfcElectricalCircuit; } Type::Enum IfcElectricalCircuit::Class() { return Type::IfcElectricalCircuit; } IfcElectricalCircuit::IfcElectricalCircuit(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricalCircuit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricalCircuit::IfcElectricalCircuit(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcElectricalCircuit::IfcElectricalCircuit(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElectricalElement bool IfcElectricalElement::is(Type::Enum v) const { return v == Type::IfcElectricalElement || IfcElement::is(v); } Type::Enum IfcElectricalElement::type() const { return Type::IfcElectricalElement; } Type::Enum IfcElectricalElement::Class() { return Type::IfcElectricalElement; } IfcElectricalElement::IfcElectricalElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcElectricalElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElectricalElement::IfcElectricalElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcElectricalElement::IfcElectricalElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElement bool IfcElement::hasTag() { return !entity->getArgument(7)->isNull(); } IfcIdentifier IfcElement::Tag() { return *entity->getArgument(7); } @@ -6870,7 +6870,7 @@ bool IfcElement::is(Type::Enum v) const { return v == Type::IfcElement || IfcPro Type::Enum IfcElement::type() const { return Type::IfcElement; } Type::Enum IfcElement::Class() { return Type::IfcElement; } IfcElement::IfcElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElement::IfcElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcElement::IfcElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementAssembly bool IfcElementAssembly::hasAssemblyPlace() { return !entity->getArgument(8)->isNull(); } IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum IfcElementAssembly::AssemblyPlace() { return IfcAssemblyPlaceEnum::FromString(*entity->getArgument(8)); } @@ -6881,19 +6881,19 @@ bool IfcElementAssembly::is(Type::Enum v) const { return v == Type::IfcElementAs Type::Enum IfcElementAssembly::type() const { return Type::IfcElementAssembly; } Type::Enum IfcElementAssembly::Class() { return Type::IfcElementAssembly; } IfcElementAssembly::IfcElementAssembly(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementAssembly)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementAssembly::IfcElementAssembly(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v9_AssemblyPlace, IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_AssemblyPlace); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcElementAssembly::IfcElementAssembly(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_AssemblyPlace, IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_AssemblyPlace) { e->setArgument(8,*v9_AssemblyPlace,IfcAssemblyPlaceEnum::ToString(*v9_AssemblyPlace)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcElementAssemblyTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementComponent bool IfcElementComponent::is(Type::Enum v) const { return v == Type::IfcElementComponent || IfcElement::is(v); } Type::Enum IfcElementComponent::type() const { return Type::IfcElementComponent; } Type::Enum IfcElementComponent::Class() { return Type::IfcElementComponent; } IfcElementComponent::IfcElementComponent(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementComponent)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementComponent::IfcElementComponent(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcElementComponent::IfcElementComponent(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementComponentType bool IfcElementComponentType::is(Type::Enum v) const { return v == Type::IfcElementComponentType || IfcElementType::is(v); } Type::Enum IfcElementComponentType::type() const { return Type::IfcElementComponentType; } Type::Enum IfcElementComponentType::Class() { return Type::IfcElementComponentType; } IfcElementComponentType::IfcElementComponentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementComponentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementComponentType::IfcElementComponentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcElementComponentType::IfcElementComponentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementQuantity bool IfcElementQuantity::hasMethodOfMeasurement() { return !entity->getArgument(4)->isNull(); } IfcLabel IfcElementQuantity::MethodOfMeasurement() { return *entity->getArgument(4); } @@ -6904,7 +6904,7 @@ bool IfcElementQuantity::is(Type::Enum v) const { return v == Type::IfcElementQu Type::Enum IfcElementQuantity::type() const { return Type::IfcElementQuantity; } Type::Enum IfcElementQuantity::Class() { return Type::IfcElementQuantity; } IfcElementQuantity::IfcElementQuantity(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementQuantity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementQuantity::IfcElementQuantity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_MethodOfMeasurement, SHARED_PTR< IfcTemplatedEntityList > v6_Quantities) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_MethodOfMeasurement); e->setArgument(5,v6_Quantities->generalize()); entity = e; } +IfcElementQuantity::IfcElementQuantity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_MethodOfMeasurement, SHARED_PTR< IfcTemplatedEntityList > v6_Quantities) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_MethodOfMeasurement) { e->setArgument(4,(*v5_MethodOfMeasurement)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Quantities)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementType bool IfcElementType::hasElementType() { return !entity->getArgument(8)->isNull(); } IfcLabel IfcElementType::ElementType() { return *entity->getArgument(8); } @@ -6913,7 +6913,7 @@ bool IfcElementType::is(Type::Enum v) const { return v == Type::IfcElementType | Type::Enum IfcElementType::type() const { return Type::IfcElementType; } Type::Enum IfcElementType::Class() { return Type::IfcElementType; } IfcElementType::IfcElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementType::IfcElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcElementType::IfcElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcElementarySurface IfcAxis2Placement3D* IfcElementarySurface::Position() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcElementarySurface::setPosition(IfcAxis2Placement3D* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -6921,7 +6921,7 @@ bool IfcElementarySurface::is(Type::Enum v) const { return v == Type::IfcElement Type::Enum IfcElementarySurface::type() const { return Type::IfcElementarySurface; } Type::Enum IfcElementarySurface::Class() { return Type::IfcElementarySurface; } IfcElementarySurface::IfcElementarySurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcElementarySurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcElementarySurface::IfcElementarySurface(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); entity = e; } +IfcElementarySurface::IfcElementarySurface(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEllipse IfcPositiveLengthMeasure IfcEllipse::SemiAxis1() { return *entity->getArgument(1); } void IfcEllipse::setSemiAxis1(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -6931,7 +6931,7 @@ bool IfcEllipse::is(Type::Enum v) const { return v == Type::IfcEllipse || IfcCon Type::Enum IfcEllipse::type() const { return Type::IfcEllipse; } Type::Enum IfcEllipse::Class() { return Type::IfcEllipse; } IfcEllipse::IfcEllipse(IfcAbstractEntityPtr e) { if (!is(Type::IfcEllipse)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEllipse::IfcEllipse(IfcAxis2Placement v1_Position, IfcPositiveLengthMeasure v2_SemiAxis1, IfcPositiveLengthMeasure v3_SemiAxis2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_SemiAxis1); e->setArgument(2,v3_SemiAxis2); entity = e; } +IfcEllipse::IfcEllipse(IfcAxis2Placement v1_Position, IfcPositiveLengthMeasure v2_SemiAxis1, IfcPositiveLengthMeasure v3_SemiAxis2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_SemiAxis1)); e->setArgument(2,(v3_SemiAxis2)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEllipseProfileDef IfcPositiveLengthMeasure IfcEllipseProfileDef::SemiAxis1() { return *entity->getArgument(3); } void IfcEllipseProfileDef::setSemiAxis1(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -6941,19 +6941,19 @@ bool IfcEllipseProfileDef::is(Type::Enum v) const { return v == Type::IfcEllipse Type::Enum IfcEllipseProfileDef::type() const { return Type::IfcEllipseProfileDef; } Type::Enum IfcEllipseProfileDef::Class() { return Type::IfcEllipseProfileDef; } IfcEllipseProfileDef::IfcEllipseProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcEllipseProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEllipseProfileDef::IfcEllipseProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_SemiAxis1, IfcPositiveLengthMeasure v5_SemiAxis2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_SemiAxis1); e->setArgument(4,v5_SemiAxis2); entity = e; } +IfcEllipseProfileDef::IfcEllipseProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_SemiAxis1, IfcPositiveLengthMeasure v5_SemiAxis2) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_SemiAxis1)); e->setArgument(4,(v5_SemiAxis2)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEnergyConversionDevice bool IfcEnergyConversionDevice::is(Type::Enum v) const { return v == Type::IfcEnergyConversionDevice || IfcDistributionFlowElement::is(v); } Type::Enum IfcEnergyConversionDevice::type() const { return Type::IfcEnergyConversionDevice; } Type::Enum IfcEnergyConversionDevice::Class() { return Type::IfcEnergyConversionDevice; } IfcEnergyConversionDevice::IfcEnergyConversionDevice(IfcAbstractEntityPtr e) { if (!is(Type::IfcEnergyConversionDevice)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEnergyConversionDevice::IfcEnergyConversionDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcEnergyConversionDevice::IfcEnergyConversionDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEnergyConversionDeviceType bool IfcEnergyConversionDeviceType::is(Type::Enum v) const { return v == Type::IfcEnergyConversionDeviceType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcEnergyConversionDeviceType::type() const { return Type::IfcEnergyConversionDeviceType; } Type::Enum IfcEnergyConversionDeviceType::Class() { return Type::IfcEnergyConversionDeviceType; } IfcEnergyConversionDeviceType::IfcEnergyConversionDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcEnergyConversionDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEnergyConversionDeviceType::IfcEnergyConversionDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcEnergyConversionDeviceType::IfcEnergyConversionDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEnergyProperties bool IfcEnergyProperties::hasEnergySequence() { return !entity->getArgument(4)->isNull(); } IfcEnergySequenceEnum::IfcEnergySequenceEnum IfcEnergyProperties::EnergySequence() { return IfcEnergySequenceEnum::FromString(*entity->getArgument(4)); } @@ -6965,7 +6965,7 @@ bool IfcEnergyProperties::is(Type::Enum v) const { return v == Type::IfcEnergyPr Type::Enum IfcEnergyProperties::type() const { return Type::IfcEnergyProperties; } Type::Enum IfcEnergyProperties::Class() { return Type::IfcEnergyProperties; } IfcEnergyProperties::IfcEnergyProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcEnergyProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEnergyProperties::IfcEnergyProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcEnergySequenceEnum::IfcEnergySequenceEnum v5_EnergySequence, IfcLabel v6_UserDefinedEnergySequence) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_EnergySequence); e->setArgument(5,v6_UserDefinedEnergySequence); entity = e; } +IfcEnergyProperties::IfcEnergyProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_EnergySequence, optional v6_UserDefinedEnergySequence) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_EnergySequence) { e->setArgument(4,*v5_EnergySequence,IfcEnergySequenceEnum::ToString(*v5_EnergySequence)); } else { e->setArgument(4); } ; if (v6_UserDefinedEnergySequence) { e->setArgument(5,(*v6_UserDefinedEnergySequence)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEnvironmentalImpactValue IfcLabel IfcEnvironmentalImpactValue::ImpactType() { return *entity->getArgument(6); } void IfcEnvironmentalImpactValue::setImpactType(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -6978,19 +6978,19 @@ bool IfcEnvironmentalImpactValue::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcEnvironmentalImpactValue::type() const { return Type::IfcEnvironmentalImpactValue; } Type::Enum IfcEnvironmentalImpactValue::Class() { return Type::IfcEnvironmentalImpactValue; } IfcEnvironmentalImpactValue::IfcEnvironmentalImpactValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcEnvironmentalImpactValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEnvironmentalImpactValue::IfcEnvironmentalImpactValue(IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate, IfcLabel v7_ImpactType, IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum v8_Category, IfcLabel v9_UserDefinedCategory) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_AppliedValue); e->setArgument(3,v4_UnitBasis); e->setArgument(4,v5_ApplicableDate); e->setArgument(5,v6_FixedUntilDate); e->setArgument(6,v7_ImpactType); e->setArgument(7,v8_Category); e->setArgument(8,v9_UserDefinedCategory); entity = e; } +IfcEnvironmentalImpactValue::IfcEnvironmentalImpactValue(optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate, IfcLabel v7_ImpactType, IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum v8_Category, optional v9_UserDefinedCategory) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_AppliedValue) { e->setArgument(2,(*v3_AppliedValue)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_UnitBasis)); if (v5_ApplicableDate) { e->setArgument(4,(*v5_ApplicableDate)); } else { e->setArgument(4); } ; if (v6_FixedUntilDate) { e->setArgument(5,(*v6_FixedUntilDate)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_ImpactType)); e->setArgument(7,v8_Category,IfcEnvironmentalImpactCategoryEnum::ToString(v8_Category)); if (v9_UserDefinedCategory) { e->setArgument(8,(*v9_UserDefinedCategory)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEquipmentElement bool IfcEquipmentElement::is(Type::Enum v) const { return v == Type::IfcEquipmentElement || IfcElement::is(v); } Type::Enum IfcEquipmentElement::type() const { return Type::IfcEquipmentElement; } Type::Enum IfcEquipmentElement::Class() { return Type::IfcEquipmentElement; } IfcEquipmentElement::IfcEquipmentElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcEquipmentElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEquipmentElement::IfcEquipmentElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcEquipmentElement::IfcEquipmentElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEquipmentStandard bool IfcEquipmentStandard::is(Type::Enum v) const { return v == Type::IfcEquipmentStandard || IfcControl::is(v); } Type::Enum IfcEquipmentStandard::type() const { return Type::IfcEquipmentStandard; } Type::Enum IfcEquipmentStandard::Class() { return Type::IfcEquipmentStandard; } IfcEquipmentStandard::IfcEquipmentStandard(IfcAbstractEntityPtr e) { if (!is(Type::IfcEquipmentStandard)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEquipmentStandard::IfcEquipmentStandard(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcEquipmentStandard::IfcEquipmentStandard(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEvaporativeCoolerType IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum IfcEvaporativeCoolerType::PredefinedType() { return IfcEvaporativeCoolerTypeEnum::FromString(*entity->getArgument(9)); } void IfcEvaporativeCoolerType::setPredefinedType(IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcEvaporativeCoolerTypeEnum::ToString(v)); } @@ -6998,7 +6998,7 @@ bool IfcEvaporativeCoolerType::is(Type::Enum v) const { return v == Type::IfcEva Type::Enum IfcEvaporativeCoolerType::type() const { return Type::IfcEvaporativeCoolerType; } Type::Enum IfcEvaporativeCoolerType::Class() { return Type::IfcEvaporativeCoolerType; } IfcEvaporativeCoolerType::IfcEvaporativeCoolerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcEvaporativeCoolerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEvaporativeCoolerType::IfcEvaporativeCoolerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcEvaporativeCoolerType::IfcEvaporativeCoolerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcEvaporativeCoolerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcEvaporatorType IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum IfcEvaporatorType::PredefinedType() { return IfcEvaporatorTypeEnum::FromString(*entity->getArgument(9)); } void IfcEvaporatorType::setPredefinedType(IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcEvaporatorTypeEnum::ToString(v)); } @@ -7006,7 +7006,7 @@ bool IfcEvaporatorType::is(Type::Enum v) const { return v == Type::IfcEvaporator Type::Enum IfcEvaporatorType::type() const { return Type::IfcEvaporatorType; } Type::Enum IfcEvaporatorType::Class() { return Type::IfcEvaporatorType; } IfcEvaporatorType::IfcEvaporatorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcEvaporatorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcEvaporatorType::IfcEvaporatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcEvaporatorType::IfcEvaporatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcEvaporatorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExtendedMaterialProperties SHARED_PTR< IfcTemplatedEntityList > IfcExtendedMaterialProperties::ExtendedProperties() { RETURN_AS_LIST(IfcProperty,1) } void IfcExtendedMaterialProperties::setExtendedProperties(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v->generalize()); } @@ -7019,7 +7019,7 @@ bool IfcExtendedMaterialProperties::is(Type::Enum v) const { return v == Type::I Type::Enum IfcExtendedMaterialProperties::type() const { return Type::IfcExtendedMaterialProperties; } Type::Enum IfcExtendedMaterialProperties::Class() { return Type::IfcExtendedMaterialProperties; } IfcExtendedMaterialProperties::IfcExtendedMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcExtendedMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExtendedMaterialProperties::IfcExtendedMaterialProperties(IfcMaterial* v1_Material, SHARED_PTR< IfcTemplatedEntityList > v2_ExtendedProperties, IfcText v3_Description, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_ExtendedProperties->generalize()); e->setArgument(2,v3_Description); e->setArgument(3,v4_Name); entity = e; } +IfcExtendedMaterialProperties::IfcExtendedMaterialProperties(IfcMaterial* v1_Material, SHARED_PTR< IfcTemplatedEntityList > v2_ExtendedProperties, optional v3_Description, IfcLabel v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); e->setArgument(1,(v2_ExtendedProperties)->generalize()); if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExternalReference bool IfcExternalReference::hasLocation() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcExternalReference::Location() { return *entity->getArgument(0); } @@ -7034,31 +7034,31 @@ bool IfcExternalReference::is(Type::Enum v) const { return v == Type::IfcExterna Type::Enum IfcExternalReference::type() const { return Type::IfcExternalReference; } Type::Enum IfcExternalReference::Class() { return Type::IfcExternalReference; } IfcExternalReference::IfcExternalReference(IfcAbstractEntityPtr e) { if (!is(Type::IfcExternalReference)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExternalReference::IfcExternalReference(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcExternalReference::IfcExternalReference(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExternallyDefinedHatchStyle bool IfcExternallyDefinedHatchStyle::is(Type::Enum v) const { return v == Type::IfcExternallyDefinedHatchStyle || IfcExternalReference::is(v); } Type::Enum IfcExternallyDefinedHatchStyle::type() const { return Type::IfcExternallyDefinedHatchStyle; } Type::Enum IfcExternallyDefinedHatchStyle::Class() { return Type::IfcExternallyDefinedHatchStyle; } IfcExternallyDefinedHatchStyle::IfcExternallyDefinedHatchStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcExternallyDefinedHatchStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExternallyDefinedHatchStyle::IfcExternallyDefinedHatchStyle(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcExternallyDefinedHatchStyle::IfcExternallyDefinedHatchStyle(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExternallyDefinedSurfaceStyle bool IfcExternallyDefinedSurfaceStyle::is(Type::Enum v) const { return v == Type::IfcExternallyDefinedSurfaceStyle || IfcExternalReference::is(v); } Type::Enum IfcExternallyDefinedSurfaceStyle::type() const { return Type::IfcExternallyDefinedSurfaceStyle; } Type::Enum IfcExternallyDefinedSurfaceStyle::Class() { return Type::IfcExternallyDefinedSurfaceStyle; } IfcExternallyDefinedSurfaceStyle::IfcExternallyDefinedSurfaceStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcExternallyDefinedSurfaceStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExternallyDefinedSurfaceStyle::IfcExternallyDefinedSurfaceStyle(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcExternallyDefinedSurfaceStyle::IfcExternallyDefinedSurfaceStyle(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExternallyDefinedSymbol bool IfcExternallyDefinedSymbol::is(Type::Enum v) const { return v == Type::IfcExternallyDefinedSymbol || IfcExternalReference::is(v); } Type::Enum IfcExternallyDefinedSymbol::type() const { return Type::IfcExternallyDefinedSymbol; } Type::Enum IfcExternallyDefinedSymbol::Class() { return Type::IfcExternallyDefinedSymbol; } IfcExternallyDefinedSymbol::IfcExternallyDefinedSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcExternallyDefinedSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExternallyDefinedSymbol::IfcExternallyDefinedSymbol(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcExternallyDefinedSymbol::IfcExternallyDefinedSymbol(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExternallyDefinedTextFont bool IfcExternallyDefinedTextFont::is(Type::Enum v) const { return v == Type::IfcExternallyDefinedTextFont || IfcExternalReference::is(v); } Type::Enum IfcExternallyDefinedTextFont::type() const { return Type::IfcExternallyDefinedTextFont; } Type::Enum IfcExternallyDefinedTextFont::Class() { return Type::IfcExternallyDefinedTextFont; } IfcExternallyDefinedTextFont::IfcExternallyDefinedTextFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcExternallyDefinedTextFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExternallyDefinedTextFont::IfcExternallyDefinedTextFont(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcExternallyDefinedTextFont::IfcExternallyDefinedTextFont(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcExtrudedAreaSolid IfcDirection* IfcExtrudedAreaSolid::ExtrudedDirection() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcExtrudedAreaSolid::setExtrudedDirection(IfcDirection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -7068,7 +7068,7 @@ bool IfcExtrudedAreaSolid::is(Type::Enum v) const { return v == Type::IfcExtrude Type::Enum IfcExtrudedAreaSolid::type() const { return Type::IfcExtrudedAreaSolid; } Type::Enum IfcExtrudedAreaSolid::Class() { return Type::IfcExtrudedAreaSolid; } IfcExtrudedAreaSolid::IfcExtrudedAreaSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcExtrudedAreaSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcExtrudedAreaSolid::IfcExtrudedAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcDirection* v3_ExtrudedDirection, IfcPositiveLengthMeasure v4_Depth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptArea); e->setArgument(1,v2_Position); e->setArgument(2,v3_ExtrudedDirection); e->setArgument(3,v4_Depth); entity = e; } +IfcExtrudedAreaSolid::IfcExtrudedAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcDirection* v3_ExtrudedDirection, IfcPositiveLengthMeasure v4_Depth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptArea)); e->setArgument(1,(v2_Position)); e->setArgument(2,(v3_ExtrudedDirection)); e->setArgument(3,(v4_Depth)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFace SHARED_PTR< IfcTemplatedEntityList > IfcFace::Bounds() { RETURN_AS_LIST(IfcFaceBound,0) } void IfcFace::setBounds(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -7076,7 +7076,7 @@ bool IfcFace::is(Type::Enum v) const { return v == Type::IfcFace || IfcTopologic Type::Enum IfcFace::type() const { return Type::IfcFace; } Type::Enum IfcFace::Class() { return Type::IfcFace; } IfcFace::IfcFace(IfcAbstractEntityPtr e) { if (!is(Type::IfcFace)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFace::IfcFace(SHARED_PTR< IfcTemplatedEntityList > v1_Bounds) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Bounds->generalize()); entity = e; } +IfcFace::IfcFace(SHARED_PTR< IfcTemplatedEntityList > v1_Bounds) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Bounds)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFaceBasedSurfaceModel SHARED_PTR< IfcTemplatedEntityList > IfcFaceBasedSurfaceModel::FbsmFaces() { RETURN_AS_LIST(IfcConnectedFaceSet,0) } void IfcFaceBasedSurfaceModel::setFbsmFaces(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -7084,7 +7084,7 @@ bool IfcFaceBasedSurfaceModel::is(Type::Enum v) const { return v == Type::IfcFac Type::Enum IfcFaceBasedSurfaceModel::type() const { return Type::IfcFaceBasedSurfaceModel; } Type::Enum IfcFaceBasedSurfaceModel::Class() { return Type::IfcFaceBasedSurfaceModel; } IfcFaceBasedSurfaceModel::IfcFaceBasedSurfaceModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcFaceBasedSurfaceModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFaceBasedSurfaceModel::IfcFaceBasedSurfaceModel(SHARED_PTR< IfcTemplatedEntityList > v1_FbsmFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_FbsmFaces->generalize()); entity = e; } +IfcFaceBasedSurfaceModel::IfcFaceBasedSurfaceModel(SHARED_PTR< IfcTemplatedEntityList > v1_FbsmFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_FbsmFaces)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFaceBound IfcLoop* IfcFaceBound::Bound() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcFaceBound::setBound(IfcLoop* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7094,13 +7094,13 @@ bool IfcFaceBound::is(Type::Enum v) const { return v == Type::IfcFaceBound || If Type::Enum IfcFaceBound::type() const { return Type::IfcFaceBound; } Type::Enum IfcFaceBound::Class() { return Type::IfcFaceBound; } IfcFaceBound::IfcFaceBound(IfcAbstractEntityPtr e) { if (!is(Type::IfcFaceBound)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFaceBound::IfcFaceBound(IfcLoop* v1_Bound, bool v2_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Bound); e->setArgument(1,v2_Orientation); entity = e; } +IfcFaceBound::IfcFaceBound(IfcLoop* v1_Bound, bool v2_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Bound)); e->setArgument(1,(v2_Orientation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFaceOuterBound bool IfcFaceOuterBound::is(Type::Enum v) const { return v == Type::IfcFaceOuterBound || IfcFaceBound::is(v); } Type::Enum IfcFaceOuterBound::type() const { return Type::IfcFaceOuterBound; } Type::Enum IfcFaceOuterBound::Class() { return Type::IfcFaceOuterBound; } IfcFaceOuterBound::IfcFaceOuterBound(IfcAbstractEntityPtr e) { if (!is(Type::IfcFaceOuterBound)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFaceOuterBound::IfcFaceOuterBound(IfcLoop* v1_Bound, bool v2_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Bound); e->setArgument(1,v2_Orientation); entity = e; } +IfcFaceOuterBound::IfcFaceOuterBound(IfcLoop* v1_Bound, bool v2_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Bound)); e->setArgument(1,(v2_Orientation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFaceSurface IfcSurface* IfcFaceSurface::FaceSurface() { return reinterpret_pointer_cast(*entity->getArgument(1)); } void IfcFaceSurface::setFaceSurface(IfcSurface* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -7110,13 +7110,13 @@ bool IfcFaceSurface::is(Type::Enum v) const { return v == Type::IfcFaceSurface | Type::Enum IfcFaceSurface::type() const { return Type::IfcFaceSurface; } Type::Enum IfcFaceSurface::Class() { return Type::IfcFaceSurface; } IfcFaceSurface::IfcFaceSurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcFaceSurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFaceSurface::IfcFaceSurface(SHARED_PTR< IfcTemplatedEntityList > v1_Bounds, IfcSurface* v2_FaceSurface, bool v3_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Bounds->generalize()); e->setArgument(1,v2_FaceSurface); e->setArgument(2,v3_SameSense); entity = e; } +IfcFaceSurface::IfcFaceSurface(SHARED_PTR< IfcTemplatedEntityList > v1_Bounds, IfcSurface* v2_FaceSurface, bool v3_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Bounds)->generalize()); e->setArgument(1,(v2_FaceSurface)); e->setArgument(2,(v3_SameSense)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFacetedBrep bool IfcFacetedBrep::is(Type::Enum v) const { return v == Type::IfcFacetedBrep || IfcManifoldSolidBrep::is(v); } Type::Enum IfcFacetedBrep::type() const { return Type::IfcFacetedBrep; } Type::Enum IfcFacetedBrep::Class() { return Type::IfcFacetedBrep; } IfcFacetedBrep::IfcFacetedBrep(IfcAbstractEntityPtr e) { if (!is(Type::IfcFacetedBrep)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFacetedBrep::IfcFacetedBrep(IfcClosedShell* v1_Outer) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Outer); entity = e; } +IfcFacetedBrep::IfcFacetedBrep(IfcClosedShell* v1_Outer) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Outer)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFacetedBrepWithVoids SHARED_PTR< IfcTemplatedEntityList > IfcFacetedBrepWithVoids::Voids() { RETURN_AS_LIST(IfcClosedShell,1) } void IfcFacetedBrepWithVoids::setVoids(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v->generalize()); } @@ -7124,7 +7124,7 @@ bool IfcFacetedBrepWithVoids::is(Type::Enum v) const { return v == Type::IfcFace Type::Enum IfcFacetedBrepWithVoids::type() const { return Type::IfcFacetedBrepWithVoids; } Type::Enum IfcFacetedBrepWithVoids::Class() { return Type::IfcFacetedBrepWithVoids; } IfcFacetedBrepWithVoids::IfcFacetedBrepWithVoids(IfcAbstractEntityPtr e) { if (!is(Type::IfcFacetedBrepWithVoids)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFacetedBrepWithVoids::IfcFacetedBrepWithVoids(IfcClosedShell* v1_Outer, SHARED_PTR< IfcTemplatedEntityList > v2_Voids) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Outer); e->setArgument(1,v2_Voids->generalize()); entity = e; } +IfcFacetedBrepWithVoids::IfcFacetedBrepWithVoids(IfcClosedShell* v1_Outer, SHARED_PTR< IfcTemplatedEntityList > v2_Voids) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Outer)); e->setArgument(1,(v2_Voids)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFailureConnectionCondition bool IfcFailureConnectionCondition::hasTensionFailureX() { return !entity->getArgument(1)->isNull(); } IfcForceMeasure IfcFailureConnectionCondition::TensionFailureX() { return *entity->getArgument(1); } @@ -7148,7 +7148,7 @@ bool IfcFailureConnectionCondition::is(Type::Enum v) const { return v == Type::I Type::Enum IfcFailureConnectionCondition::type() const { return Type::IfcFailureConnectionCondition; } Type::Enum IfcFailureConnectionCondition::Class() { return Type::IfcFailureConnectionCondition; } IfcFailureConnectionCondition::IfcFailureConnectionCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcFailureConnectionCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFailureConnectionCondition::IfcFailureConnectionCondition(IfcLabel v1_Name, IfcForceMeasure v2_TensionFailureX, IfcForceMeasure v3_TensionFailureY, IfcForceMeasure v4_TensionFailureZ, IfcForceMeasure v5_CompressionFailureX, IfcForceMeasure v6_CompressionFailureY, IfcForceMeasure v7_CompressionFailureZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_TensionFailureX); e->setArgument(2,v3_TensionFailureY); e->setArgument(3,v4_TensionFailureZ); e->setArgument(4,v5_CompressionFailureX); e->setArgument(5,v6_CompressionFailureY); e->setArgument(6,v7_CompressionFailureZ); entity = e; } +IfcFailureConnectionCondition::IfcFailureConnectionCondition(optional v1_Name, optional v2_TensionFailureX, optional v3_TensionFailureY, optional v4_TensionFailureZ, optional v5_CompressionFailureX, optional v6_CompressionFailureY, optional v7_CompressionFailureZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_TensionFailureX) { e->setArgument(1,(*v2_TensionFailureX)); } else { e->setArgument(1); } ; if (v3_TensionFailureY) { e->setArgument(2,(*v3_TensionFailureY)); } else { e->setArgument(2); } ; if (v4_TensionFailureZ) { e->setArgument(3,(*v4_TensionFailureZ)); } else { e->setArgument(3); } ; if (v5_CompressionFailureX) { e->setArgument(4,(*v5_CompressionFailureX)); } else { e->setArgument(4); } ; if (v6_CompressionFailureY) { e->setArgument(5,(*v6_CompressionFailureY)); } else { e->setArgument(5); } ; if (v7_CompressionFailureZ) { e->setArgument(6,(*v7_CompressionFailureZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFanType IfcFanTypeEnum::IfcFanTypeEnum IfcFanType::PredefinedType() { return IfcFanTypeEnum::FromString(*entity->getArgument(9)); } void IfcFanType::setPredefinedType(IfcFanTypeEnum::IfcFanTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcFanTypeEnum::ToString(v)); } @@ -7156,39 +7156,39 @@ bool IfcFanType::is(Type::Enum v) const { return v == Type::IfcFanType || IfcFlo Type::Enum IfcFanType::type() const { return Type::IfcFanType; } Type::Enum IfcFanType::Class() { return Type::IfcFanType; } IfcFanType::IfcFanType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFanType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFanType::IfcFanType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFanTypeEnum::IfcFanTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcFanType::IfcFanType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFanTypeEnum::IfcFanTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcFanTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFastener bool IfcFastener::is(Type::Enum v) const { return v == Type::IfcFastener || IfcElementComponent::is(v); } Type::Enum IfcFastener::type() const { return Type::IfcFastener; } Type::Enum IfcFastener::Class() { return Type::IfcFastener; } IfcFastener::IfcFastener(IfcAbstractEntityPtr e) { if (!is(Type::IfcFastener)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFastener::IfcFastener(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFastener::IfcFastener(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFastenerType bool IfcFastenerType::is(Type::Enum v) const { return v == Type::IfcFastenerType || IfcElementComponentType::is(v); } Type::Enum IfcFastenerType::type() const { return Type::IfcFastenerType; } Type::Enum IfcFastenerType::Class() { return Type::IfcFastenerType; } IfcFastenerType::IfcFastenerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFastenerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFastenerType::IfcFastenerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFastenerType::IfcFastenerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFeatureElement bool IfcFeatureElement::is(Type::Enum v) const { return v == Type::IfcFeatureElement || IfcElement::is(v); } Type::Enum IfcFeatureElement::type() const { return Type::IfcFeatureElement; } Type::Enum IfcFeatureElement::Class() { return Type::IfcFeatureElement; } IfcFeatureElement::IfcFeatureElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcFeatureElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFeatureElement::IfcFeatureElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFeatureElement::IfcFeatureElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFeatureElementAddition IfcRelProjectsElement::list IfcFeatureElementAddition::ProjectsElements() { RETURN_INVERSE(IfcRelProjectsElement) } bool IfcFeatureElementAddition::is(Type::Enum v) const { return v == Type::IfcFeatureElementAddition || IfcFeatureElement::is(v); } Type::Enum IfcFeatureElementAddition::type() const { return Type::IfcFeatureElementAddition; } Type::Enum IfcFeatureElementAddition::Class() { return Type::IfcFeatureElementAddition; } IfcFeatureElementAddition::IfcFeatureElementAddition(IfcAbstractEntityPtr e) { if (!is(Type::IfcFeatureElementAddition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFeatureElementAddition::IfcFeatureElementAddition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFeatureElementAddition::IfcFeatureElementAddition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFeatureElementSubtraction IfcRelVoidsElement::list IfcFeatureElementSubtraction::VoidsElements() { RETURN_INVERSE(IfcRelVoidsElement) } bool IfcFeatureElementSubtraction::is(Type::Enum v) const { return v == Type::IfcFeatureElementSubtraction || IfcFeatureElement::is(v); } Type::Enum IfcFeatureElementSubtraction::type() const { return Type::IfcFeatureElementSubtraction; } Type::Enum IfcFeatureElementSubtraction::Class() { return Type::IfcFeatureElementSubtraction; } IfcFeatureElementSubtraction::IfcFeatureElementSubtraction(IfcAbstractEntityPtr e) { if (!is(Type::IfcFeatureElementSubtraction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFeatureElementSubtraction::IfcFeatureElementSubtraction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFeatureElementSubtraction::IfcFeatureElementSubtraction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFillAreaStyle SHARED_PTR< IfcTemplatedEntityList > IfcFillAreaStyle::FillStyles() { RETURN_AS_LIST(IfcAbstractSelect,1) } void IfcFillAreaStyle::setFillStyles(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v->generalize()); } @@ -7196,7 +7196,7 @@ bool IfcFillAreaStyle::is(Type::Enum v) const { return v == Type::IfcFillAreaSty Type::Enum IfcFillAreaStyle::type() const { return Type::IfcFillAreaStyle; } Type::Enum IfcFillAreaStyle::Class() { return Type::IfcFillAreaStyle; } IfcFillAreaStyle::IfcFillAreaStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcFillAreaStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFillAreaStyle::IfcFillAreaStyle(IfcLabel v1_Name, IfcEntities v2_FillStyles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_FillStyles); entity = e; } +IfcFillAreaStyle::IfcFillAreaStyle(optional v1_Name, IfcEntities v2_FillStyles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_FillStyles)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFillAreaStyleHatching IfcCurveStyle* IfcFillAreaStyleHatching::HatchLineAppearance() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcFillAreaStyleHatching::setHatchLineAppearance(IfcCurveStyle* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7214,7 +7214,7 @@ bool IfcFillAreaStyleHatching::is(Type::Enum v) const { return v == Type::IfcFil Type::Enum IfcFillAreaStyleHatching::type() const { return Type::IfcFillAreaStyleHatching; } Type::Enum IfcFillAreaStyleHatching::Class() { return Type::IfcFillAreaStyleHatching; } IfcFillAreaStyleHatching::IfcFillAreaStyleHatching(IfcAbstractEntityPtr e) { if (!is(Type::IfcFillAreaStyleHatching)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFillAreaStyleHatching::IfcFillAreaStyleHatching(IfcCurveStyle* v1_HatchLineAppearance, IfcHatchLineDistanceSelect v2_StartOfNextHatchLine, IfcCartesianPoint* v3_PointOfReferenceHatchLine, IfcCartesianPoint* v4_PatternStart, IfcPlaneAngleMeasure v5_HatchLineAngle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_HatchLineAppearance); e->setArgument(1,v2_StartOfNextHatchLine); e->setArgument(2,v3_PointOfReferenceHatchLine); e->setArgument(3,v4_PatternStart); e->setArgument(4,v5_HatchLineAngle); entity = e; } +IfcFillAreaStyleHatching::IfcFillAreaStyleHatching(IfcCurveStyle* v1_HatchLineAppearance, IfcHatchLineDistanceSelect v2_StartOfNextHatchLine, IfcCartesianPoint* v3_PointOfReferenceHatchLine, IfcCartesianPoint* v4_PatternStart, IfcPlaneAngleMeasure v5_HatchLineAngle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_HatchLineAppearance)); e->setArgument(1,(v2_StartOfNextHatchLine)); e->setArgument(2,(v3_PointOfReferenceHatchLine)); e->setArgument(3,(v4_PatternStart)); e->setArgument(4,(v5_HatchLineAngle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFillAreaStyleTileSymbolWithStyle IfcAnnotationSymbolOccurrence* IfcFillAreaStyleTileSymbolWithStyle::Symbol() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcFillAreaStyleTileSymbolWithStyle::setSymbol(IfcAnnotationSymbolOccurrence* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7222,7 +7222,7 @@ bool IfcFillAreaStyleTileSymbolWithStyle::is(Type::Enum v) const { return v == T Type::Enum IfcFillAreaStyleTileSymbolWithStyle::type() const { return Type::IfcFillAreaStyleTileSymbolWithStyle; } Type::Enum IfcFillAreaStyleTileSymbolWithStyle::Class() { return Type::IfcFillAreaStyleTileSymbolWithStyle; } IfcFillAreaStyleTileSymbolWithStyle::IfcFillAreaStyleTileSymbolWithStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcFillAreaStyleTileSymbolWithStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFillAreaStyleTileSymbolWithStyle::IfcFillAreaStyleTileSymbolWithStyle(IfcAnnotationSymbolOccurrence* v1_Symbol) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Symbol); entity = e; } +IfcFillAreaStyleTileSymbolWithStyle::IfcFillAreaStyleTileSymbolWithStyle(IfcAnnotationSymbolOccurrence* v1_Symbol) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Symbol)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFillAreaStyleTiles IfcOneDirectionRepeatFactor* IfcFillAreaStyleTiles::TilingPattern() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcFillAreaStyleTiles::setTilingPattern(IfcOneDirectionRepeatFactor* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7234,7 +7234,7 @@ bool IfcFillAreaStyleTiles::is(Type::Enum v) const { return v == Type::IfcFillAr Type::Enum IfcFillAreaStyleTiles::type() const { return Type::IfcFillAreaStyleTiles; } Type::Enum IfcFillAreaStyleTiles::Class() { return Type::IfcFillAreaStyleTiles; } IfcFillAreaStyleTiles::IfcFillAreaStyleTiles(IfcAbstractEntityPtr e) { if (!is(Type::IfcFillAreaStyleTiles)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFillAreaStyleTiles::IfcFillAreaStyleTiles(IfcOneDirectionRepeatFactor* v1_TilingPattern, IfcEntities v2_Tiles, IfcPositiveRatioMeasure v3_TilingScale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TilingPattern); e->setArgument(1,v2_Tiles); e->setArgument(2,v3_TilingScale); entity = e; } +IfcFillAreaStyleTiles::IfcFillAreaStyleTiles(IfcOneDirectionRepeatFactor* v1_TilingPattern, IfcEntities v2_Tiles, IfcPositiveRatioMeasure v3_TilingScale) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TilingPattern)); e->setArgument(1,(v2_Tiles)); e->setArgument(2,(v3_TilingScale)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFilterType IfcFilterTypeEnum::IfcFilterTypeEnum IfcFilterType::PredefinedType() { return IfcFilterTypeEnum::FromString(*entity->getArgument(9)); } void IfcFilterType::setPredefinedType(IfcFilterTypeEnum::IfcFilterTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcFilterTypeEnum::ToString(v)); } @@ -7242,7 +7242,7 @@ bool IfcFilterType::is(Type::Enum v) const { return v == Type::IfcFilterType || Type::Enum IfcFilterType::type() const { return Type::IfcFilterType; } Type::Enum IfcFilterType::Class() { return Type::IfcFilterType; } IfcFilterType::IfcFilterType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFilterType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFilterType::IfcFilterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFilterTypeEnum::IfcFilterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcFilterType::IfcFilterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFilterTypeEnum::IfcFilterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcFilterTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFireSuppressionTerminalType IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum IfcFireSuppressionTerminalType::PredefinedType() { return IfcFireSuppressionTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcFireSuppressionTerminalType::setPredefinedType(IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcFireSuppressionTerminalTypeEnum::ToString(v)); } @@ -7250,31 +7250,31 @@ bool IfcFireSuppressionTerminalType::is(Type::Enum v) const { return v == Type:: Type::Enum IfcFireSuppressionTerminalType::type() const { return Type::IfcFireSuppressionTerminalType; } Type::Enum IfcFireSuppressionTerminalType::Class() { return Type::IfcFireSuppressionTerminalType; } IfcFireSuppressionTerminalType::IfcFireSuppressionTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFireSuppressionTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFireSuppressionTerminalType::IfcFireSuppressionTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcFireSuppressionTerminalType::IfcFireSuppressionTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcFireSuppressionTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowController bool IfcFlowController::is(Type::Enum v) const { return v == Type::IfcFlowController || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowController::type() const { return Type::IfcFlowController; } Type::Enum IfcFlowController::Class() { return Type::IfcFlowController; } IfcFlowController::IfcFlowController(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowController)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowController::IfcFlowController(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowController::IfcFlowController(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowControllerType bool IfcFlowControllerType::is(Type::Enum v) const { return v == Type::IfcFlowControllerType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowControllerType::type() const { return Type::IfcFlowControllerType; } Type::Enum IfcFlowControllerType::Class() { return Type::IfcFlowControllerType; } IfcFlowControllerType::IfcFlowControllerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowControllerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowControllerType::IfcFlowControllerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowControllerType::IfcFlowControllerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowFitting bool IfcFlowFitting::is(Type::Enum v) const { return v == Type::IfcFlowFitting || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowFitting::type() const { return Type::IfcFlowFitting; } Type::Enum IfcFlowFitting::Class() { return Type::IfcFlowFitting; } IfcFlowFitting::IfcFlowFitting(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowFitting)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowFitting::IfcFlowFitting(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowFitting::IfcFlowFitting(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowFittingType bool IfcFlowFittingType::is(Type::Enum v) const { return v == Type::IfcFlowFittingType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowFittingType::type() const { return Type::IfcFlowFittingType; } Type::Enum IfcFlowFittingType::Class() { return Type::IfcFlowFittingType; } IfcFlowFittingType::IfcFlowFittingType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowFittingType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowFittingType::IfcFlowFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowFittingType::IfcFlowFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowInstrumentType IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum IfcFlowInstrumentType::PredefinedType() { return IfcFlowInstrumentTypeEnum::FromString(*entity->getArgument(9)); } void IfcFlowInstrumentType::setPredefinedType(IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcFlowInstrumentTypeEnum::ToString(v)); } @@ -7282,7 +7282,7 @@ bool IfcFlowInstrumentType::is(Type::Enum v) const { return v == Type::IfcFlowIn Type::Enum IfcFlowInstrumentType::type() const { return Type::IfcFlowInstrumentType; } Type::Enum IfcFlowInstrumentType::Class() { return Type::IfcFlowInstrumentType; } IfcFlowInstrumentType::IfcFlowInstrumentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowInstrumentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowInstrumentType::IfcFlowInstrumentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcFlowInstrumentType::IfcFlowInstrumentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcFlowInstrumentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowMeterType IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum IfcFlowMeterType::PredefinedType() { return IfcFlowMeterTypeEnum::FromString(*entity->getArgument(9)); } void IfcFlowMeterType::setPredefinedType(IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcFlowMeterTypeEnum::ToString(v)); } @@ -7290,67 +7290,67 @@ bool IfcFlowMeterType::is(Type::Enum v) const { return v == Type::IfcFlowMeterTy Type::Enum IfcFlowMeterType::type() const { return Type::IfcFlowMeterType; } Type::Enum IfcFlowMeterType::Class() { return Type::IfcFlowMeterType; } IfcFlowMeterType::IfcFlowMeterType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowMeterType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowMeterType::IfcFlowMeterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcFlowMeterType::IfcFlowMeterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcFlowMeterTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowMovingDevice bool IfcFlowMovingDevice::is(Type::Enum v) const { return v == Type::IfcFlowMovingDevice || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowMovingDevice::type() const { return Type::IfcFlowMovingDevice; } Type::Enum IfcFlowMovingDevice::Class() { return Type::IfcFlowMovingDevice; } IfcFlowMovingDevice::IfcFlowMovingDevice(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowMovingDevice)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowMovingDevice::IfcFlowMovingDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowMovingDevice::IfcFlowMovingDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowMovingDeviceType bool IfcFlowMovingDeviceType::is(Type::Enum v) const { return v == Type::IfcFlowMovingDeviceType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowMovingDeviceType::type() const { return Type::IfcFlowMovingDeviceType; } Type::Enum IfcFlowMovingDeviceType::Class() { return Type::IfcFlowMovingDeviceType; } IfcFlowMovingDeviceType::IfcFlowMovingDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowMovingDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowMovingDeviceType::IfcFlowMovingDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowMovingDeviceType::IfcFlowMovingDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowSegment bool IfcFlowSegment::is(Type::Enum v) const { return v == Type::IfcFlowSegment || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowSegment::type() const { return Type::IfcFlowSegment; } Type::Enum IfcFlowSegment::Class() { return Type::IfcFlowSegment; } IfcFlowSegment::IfcFlowSegment(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowSegment)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowSegment::IfcFlowSegment(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowSegment::IfcFlowSegment(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowSegmentType bool IfcFlowSegmentType::is(Type::Enum v) const { return v == Type::IfcFlowSegmentType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowSegmentType::type() const { return Type::IfcFlowSegmentType; } Type::Enum IfcFlowSegmentType::Class() { return Type::IfcFlowSegmentType; } IfcFlowSegmentType::IfcFlowSegmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowSegmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowSegmentType::IfcFlowSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowSegmentType::IfcFlowSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowStorageDevice bool IfcFlowStorageDevice::is(Type::Enum v) const { return v == Type::IfcFlowStorageDevice || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowStorageDevice::type() const { return Type::IfcFlowStorageDevice; } Type::Enum IfcFlowStorageDevice::Class() { return Type::IfcFlowStorageDevice; } IfcFlowStorageDevice::IfcFlowStorageDevice(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowStorageDevice)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowStorageDevice::IfcFlowStorageDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowStorageDevice::IfcFlowStorageDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowStorageDeviceType bool IfcFlowStorageDeviceType::is(Type::Enum v) const { return v == Type::IfcFlowStorageDeviceType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowStorageDeviceType::type() const { return Type::IfcFlowStorageDeviceType; } Type::Enum IfcFlowStorageDeviceType::Class() { return Type::IfcFlowStorageDeviceType; } IfcFlowStorageDeviceType::IfcFlowStorageDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowStorageDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowStorageDeviceType::IfcFlowStorageDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowStorageDeviceType::IfcFlowStorageDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowTerminal bool IfcFlowTerminal::is(Type::Enum v) const { return v == Type::IfcFlowTerminal || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowTerminal::type() const { return Type::IfcFlowTerminal; } Type::Enum IfcFlowTerminal::Class() { return Type::IfcFlowTerminal; } IfcFlowTerminal::IfcFlowTerminal(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowTerminal)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowTerminal::IfcFlowTerminal(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowTerminal::IfcFlowTerminal(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowTerminalType bool IfcFlowTerminalType::is(Type::Enum v) const { return v == Type::IfcFlowTerminalType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowTerminalType::type() const { return Type::IfcFlowTerminalType; } Type::Enum IfcFlowTerminalType::Class() { return Type::IfcFlowTerminalType; } IfcFlowTerminalType::IfcFlowTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowTerminalType::IfcFlowTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowTerminalType::IfcFlowTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowTreatmentDevice bool IfcFlowTreatmentDevice::is(Type::Enum v) const { return v == Type::IfcFlowTreatmentDevice || IfcDistributionFlowElement::is(v); } Type::Enum IfcFlowTreatmentDevice::type() const { return Type::IfcFlowTreatmentDevice; } Type::Enum IfcFlowTreatmentDevice::Class() { return Type::IfcFlowTreatmentDevice; } IfcFlowTreatmentDevice::IfcFlowTreatmentDevice(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowTreatmentDevice)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowTreatmentDevice::IfcFlowTreatmentDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFlowTreatmentDevice::IfcFlowTreatmentDevice(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFlowTreatmentDeviceType bool IfcFlowTreatmentDeviceType::is(Type::Enum v) const { return v == Type::IfcFlowTreatmentDeviceType || IfcDistributionFlowElementType::is(v); } Type::Enum IfcFlowTreatmentDeviceType::type() const { return Type::IfcFlowTreatmentDeviceType; } Type::Enum IfcFlowTreatmentDeviceType::Class() { return Type::IfcFlowTreatmentDeviceType; } IfcFlowTreatmentDeviceType::IfcFlowTreatmentDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFlowTreatmentDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFlowTreatmentDeviceType::IfcFlowTreatmentDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFlowTreatmentDeviceType::IfcFlowTreatmentDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFluidFlowProperties IfcPropertySourceEnum::IfcPropertySourceEnum IfcFluidFlowProperties::PropertySource() { return IfcPropertySourceEnum::FromString(*entity->getArgument(4)); } void IfcFluidFlowProperties::setPropertySource(IfcPropertySourceEnum::IfcPropertySourceEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v,IfcPropertySourceEnum::ToString(v)); } @@ -7399,7 +7399,7 @@ bool IfcFluidFlowProperties::is(Type::Enum v) const { return v == Type::IfcFluid Type::Enum IfcFluidFlowProperties::type() const { return Type::IfcFluidFlowProperties; } Type::Enum IfcFluidFlowProperties::Class() { return Type::IfcFluidFlowProperties; } IfcFluidFlowProperties::IfcFluidFlowProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcFluidFlowProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFluidFlowProperties::IfcFluidFlowProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPropertySourceEnum::IfcPropertySourceEnum v5_PropertySource, IfcTimeSeries* v6_FlowConditionTimeSeries, IfcTimeSeries* v7_VelocityTimeSeries, IfcTimeSeries* v8_FlowrateTimeSeries, IfcMaterial* v9_Fluid, IfcTimeSeries* v10_PressureTimeSeries, IfcLabel v11_UserDefinedPropertySource, IfcThermodynamicTemperatureMeasure v12_TemperatureSingleValue, IfcThermodynamicTemperatureMeasure v13_WetBulbTemperatureSingleValue, IfcTimeSeries* v14_WetBulbTemperatureTimeSeries, IfcTimeSeries* v15_TemperatureTimeSeries, IfcDerivedMeasureValue v16_FlowrateSingleValue, IfcPositiveRatioMeasure v17_FlowConditionSingleValue, IfcLinearVelocityMeasure v18_VelocitySingleValue, IfcPressureMeasure v19_PressureSingleValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_PropertySource); e->setArgument(5,v6_FlowConditionTimeSeries); e->setArgument(6,v7_VelocityTimeSeries); e->setArgument(7,v8_FlowrateTimeSeries); e->setArgument(8,v9_Fluid); e->setArgument(9,v10_PressureTimeSeries); e->setArgument(10,v11_UserDefinedPropertySource); e->setArgument(11,v12_TemperatureSingleValue); e->setArgument(12,v13_WetBulbTemperatureSingleValue); e->setArgument(13,v14_WetBulbTemperatureTimeSeries); e->setArgument(14,v15_TemperatureTimeSeries); e->setArgument(15,v16_FlowrateSingleValue); e->setArgument(16,v17_FlowConditionSingleValue); e->setArgument(17,v18_VelocitySingleValue); e->setArgument(18,v19_PressureSingleValue); entity = e; } +IfcFluidFlowProperties::IfcFluidFlowProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPropertySourceEnum::IfcPropertySourceEnum v5_PropertySource, IfcTimeSeries* v6_FlowConditionTimeSeries, IfcTimeSeries* v7_VelocityTimeSeries, IfcTimeSeries* v8_FlowrateTimeSeries, IfcMaterial* v9_Fluid, IfcTimeSeries* v10_PressureTimeSeries, optional v11_UserDefinedPropertySource, optional v12_TemperatureSingleValue, optional v13_WetBulbTemperatureSingleValue, IfcTimeSeries* v14_WetBulbTemperatureTimeSeries, IfcTimeSeries* v15_TemperatureTimeSeries, optional v16_FlowrateSingleValue, optional v17_FlowConditionSingleValue, optional v18_VelocitySingleValue, optional v19_PressureSingleValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,v5_PropertySource,IfcPropertySourceEnum::ToString(v5_PropertySource)); e->setArgument(5,(v6_FlowConditionTimeSeries)); e->setArgument(6,(v7_VelocityTimeSeries)); e->setArgument(7,(v8_FlowrateTimeSeries)); e->setArgument(8,(v9_Fluid)); e->setArgument(9,(v10_PressureTimeSeries)); if (v11_UserDefinedPropertySource) { e->setArgument(10,(*v11_UserDefinedPropertySource)); } else { e->setArgument(10); } ; if (v12_TemperatureSingleValue) { e->setArgument(11,(*v12_TemperatureSingleValue)); } else { e->setArgument(11); } ; if (v13_WetBulbTemperatureSingleValue) { e->setArgument(12,(*v13_WetBulbTemperatureSingleValue)); } else { e->setArgument(12); } ; e->setArgument(13,(v14_WetBulbTemperatureTimeSeries)); e->setArgument(14,(v15_TemperatureTimeSeries)); if (v16_FlowrateSingleValue) { e->setArgument(15,(*v16_FlowrateSingleValue)); } else { e->setArgument(15); } ; if (v17_FlowConditionSingleValue) { e->setArgument(16,(*v17_FlowConditionSingleValue)); } else { e->setArgument(16); } ; if (v18_VelocitySingleValue) { e->setArgument(17,(*v18_VelocitySingleValue)); } else { e->setArgument(17); } ; if (v19_PressureSingleValue) { e->setArgument(18,(*v19_PressureSingleValue)); } else { e->setArgument(18); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFooting IfcFootingTypeEnum::IfcFootingTypeEnum IfcFooting::PredefinedType() { return IfcFootingTypeEnum::FromString(*entity->getArgument(8)); } void IfcFooting::setPredefinedType(IfcFootingTypeEnum::IfcFootingTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcFootingTypeEnum::ToString(v)); } @@ -7407,7 +7407,7 @@ bool IfcFooting::is(Type::Enum v) const { return v == Type::IfcFooting || IfcBui Type::Enum IfcFooting::type() const { return Type::IfcFooting; } Type::Enum IfcFooting::Class() { return Type::IfcFooting; } IfcFooting::IfcFooting(IfcAbstractEntityPtr e) { if (!is(Type::IfcFooting)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFooting::IfcFooting(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcFootingTypeEnum::IfcFootingTypeEnum v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_PredefinedType); entity = e; } +IfcFooting::IfcFooting(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcFootingTypeEnum::IfcFootingTypeEnum v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_PredefinedType,IfcFootingTypeEnum::ToString(v9_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFuelProperties bool IfcFuelProperties::hasCombustionTemperature() { return !entity->getArgument(1)->isNull(); } IfcThermodynamicTemperatureMeasure IfcFuelProperties::CombustionTemperature() { return *entity->getArgument(1); } @@ -7425,25 +7425,25 @@ bool IfcFuelProperties::is(Type::Enum v) const { return v == Type::IfcFuelProper Type::Enum IfcFuelProperties::type() const { return Type::IfcFuelProperties; } Type::Enum IfcFuelProperties::Class() { return Type::IfcFuelProperties; } IfcFuelProperties::IfcFuelProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcFuelProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFuelProperties::IfcFuelProperties(IfcMaterial* v1_Material, IfcThermodynamicTemperatureMeasure v2_CombustionTemperature, IfcPositiveRatioMeasure v3_CarbonContent, IfcHeatingValueMeasure v4_LowerHeatingValue, IfcHeatingValueMeasure v5_HigherHeatingValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_CombustionTemperature); e->setArgument(2,v3_CarbonContent); e->setArgument(3,v4_LowerHeatingValue); e->setArgument(4,v5_HigherHeatingValue); entity = e; } +IfcFuelProperties::IfcFuelProperties(IfcMaterial* v1_Material, optional v2_CombustionTemperature, optional v3_CarbonContent, optional v4_LowerHeatingValue, optional v5_HigherHeatingValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_CombustionTemperature) { e->setArgument(1,(*v2_CombustionTemperature)); } else { e->setArgument(1); } ; if (v3_CarbonContent) { e->setArgument(2,(*v3_CarbonContent)); } else { e->setArgument(2); } ; if (v4_LowerHeatingValue) { e->setArgument(3,(*v4_LowerHeatingValue)); } else { e->setArgument(3); } ; if (v5_HigherHeatingValue) { e->setArgument(4,(*v5_HigherHeatingValue)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFurnishingElement bool IfcFurnishingElement::is(Type::Enum v) const { return v == Type::IfcFurnishingElement || IfcElement::is(v); } Type::Enum IfcFurnishingElement::type() const { return Type::IfcFurnishingElement; } Type::Enum IfcFurnishingElement::Class() { return Type::IfcFurnishingElement; } IfcFurnishingElement::IfcFurnishingElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcFurnishingElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFurnishingElement::IfcFurnishingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcFurnishingElement::IfcFurnishingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFurnishingElementType bool IfcFurnishingElementType::is(Type::Enum v) const { return v == Type::IfcFurnishingElementType || IfcElementType::is(v); } Type::Enum IfcFurnishingElementType::type() const { return Type::IfcFurnishingElementType; } Type::Enum IfcFurnishingElementType::Class() { return Type::IfcFurnishingElementType; } IfcFurnishingElementType::IfcFurnishingElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFurnishingElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFurnishingElementType::IfcFurnishingElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcFurnishingElementType::IfcFurnishingElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFurnitureStandard bool IfcFurnitureStandard::is(Type::Enum v) const { return v == Type::IfcFurnitureStandard || IfcControl::is(v); } Type::Enum IfcFurnitureStandard::type() const { return Type::IfcFurnitureStandard; } Type::Enum IfcFurnitureStandard::Class() { return Type::IfcFurnitureStandard; } IfcFurnitureStandard::IfcFurnitureStandard(IfcAbstractEntityPtr e) { if (!is(Type::IfcFurnitureStandard)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFurnitureStandard::IfcFurnitureStandard(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcFurnitureStandard::IfcFurnitureStandard(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcFurnitureType IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum IfcFurnitureType::AssemblyPlace() { return IfcAssemblyPlaceEnum::FromString(*entity->getArgument(9)); } void IfcFurnitureType::setAssemblyPlace(IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcAssemblyPlaceEnum::ToString(v)); } @@ -7451,7 +7451,7 @@ bool IfcFurnitureType::is(Type::Enum v) const { return v == Type::IfcFurnitureTy Type::Enum IfcFurnitureType::type() const { return Type::IfcFurnitureType; } Type::Enum IfcFurnitureType::Class() { return Type::IfcFurnitureType; } IfcFurnitureType::IfcFurnitureType(IfcAbstractEntityPtr e) { if (!is(Type::IfcFurnitureType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcFurnitureType::IfcFurnitureType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v10_AssemblyPlace) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_AssemblyPlace); entity = e; } +IfcFurnitureType::IfcFurnitureType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v10_AssemblyPlace) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_AssemblyPlace,IfcAssemblyPlaceEnum::ToString(v10_AssemblyPlace)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGasTerminalType IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum IfcGasTerminalType::PredefinedType() { return IfcGasTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcGasTerminalType::setPredefinedType(IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcGasTerminalTypeEnum::ToString(v)); } @@ -7459,7 +7459,7 @@ bool IfcGasTerminalType::is(Type::Enum v) const { return v == Type::IfcGasTermin Type::Enum IfcGasTerminalType::type() const { return Type::IfcGasTerminalType; } Type::Enum IfcGasTerminalType::Class() { return Type::IfcGasTerminalType; } IfcGasTerminalType::IfcGasTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcGasTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGasTerminalType::IfcGasTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcGasTerminalType::IfcGasTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcGasTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeneralMaterialProperties bool IfcGeneralMaterialProperties::hasMolecularWeight() { return !entity->getArgument(1)->isNull(); } IfcMolecularWeightMeasure IfcGeneralMaterialProperties::MolecularWeight() { return *entity->getArgument(1); } @@ -7474,7 +7474,7 @@ bool IfcGeneralMaterialProperties::is(Type::Enum v) const { return v == Type::If Type::Enum IfcGeneralMaterialProperties::type() const { return Type::IfcGeneralMaterialProperties; } Type::Enum IfcGeneralMaterialProperties::Class() { return Type::IfcGeneralMaterialProperties; } IfcGeneralMaterialProperties::IfcGeneralMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeneralMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeneralMaterialProperties::IfcGeneralMaterialProperties(IfcMaterial* v1_Material, IfcMolecularWeightMeasure v2_MolecularWeight, IfcNormalisedRatioMeasure v3_Porosity, IfcMassDensityMeasure v4_MassDensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_MolecularWeight); e->setArgument(2,v3_Porosity); e->setArgument(3,v4_MassDensity); entity = e; } +IfcGeneralMaterialProperties::IfcGeneralMaterialProperties(IfcMaterial* v1_Material, optional v2_MolecularWeight, optional v3_Porosity, optional v4_MassDensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_MolecularWeight) { e->setArgument(1,(*v2_MolecularWeight)); } else { e->setArgument(1); } ; if (v3_Porosity) { e->setArgument(2,(*v3_Porosity)); } else { e->setArgument(2); } ; if (v4_MassDensity) { e->setArgument(3,(*v4_MassDensity)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeneralProfileProperties bool IfcGeneralProfileProperties::hasPhysicalWeight() { return !entity->getArgument(2)->isNull(); } IfcMassPerLengthMeasure IfcGeneralProfileProperties::PhysicalWeight() { return *entity->getArgument(2); } @@ -7495,13 +7495,13 @@ bool IfcGeneralProfileProperties::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcGeneralProfileProperties::type() const { return Type::IfcGeneralProfileProperties; } Type::Enum IfcGeneralProfileProperties::Class() { return Type::IfcGeneralProfileProperties; } IfcGeneralProfileProperties::IfcGeneralProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeneralProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeneralProfileProperties::IfcGeneralProfileProperties(IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileName); e->setArgument(1,v2_ProfileDefinition); e->setArgument(2,v3_PhysicalWeight); e->setArgument(3,v4_Perimeter); e->setArgument(4,v5_MinimumPlateThickness); e->setArgument(5,v6_MaximumPlateThickness); e->setArgument(6,v7_CrossSectionArea); entity = e; } +IfcGeneralProfileProperties::IfcGeneralProfileProperties(optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ProfileName) { e->setArgument(0,(*v1_ProfileName)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ProfileDefinition)); if (v3_PhysicalWeight) { e->setArgument(2,(*v3_PhysicalWeight)); } else { e->setArgument(2); } ; if (v4_Perimeter) { e->setArgument(3,(*v4_Perimeter)); } else { e->setArgument(3); } ; if (v5_MinimumPlateThickness) { e->setArgument(4,(*v5_MinimumPlateThickness)); } else { e->setArgument(4); } ; if (v6_MaximumPlateThickness) { e->setArgument(5,(*v6_MaximumPlateThickness)); } else { e->setArgument(5); } ; if (v7_CrossSectionArea) { e->setArgument(6,(*v7_CrossSectionArea)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeometricCurveSet bool IfcGeometricCurveSet::is(Type::Enum v) const { return v == Type::IfcGeometricCurveSet || IfcGeometricSet::is(v); } Type::Enum IfcGeometricCurveSet::type() const { return Type::IfcGeometricCurveSet; } Type::Enum IfcGeometricCurveSet::Class() { return Type::IfcGeometricCurveSet; } IfcGeometricCurveSet::IfcGeometricCurveSet(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeometricCurveSet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeometricCurveSet::IfcGeometricCurveSet(IfcEntities v1_Elements) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Elements); entity = e; } +IfcGeometricCurveSet::IfcGeometricCurveSet(IfcEntities v1_Elements) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Elements)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeometricRepresentationContext IfcDimensionCount IfcGeometricRepresentationContext::CoordinateSpaceDimension() { return *entity->getArgument(2); } void IfcGeometricRepresentationContext::setCoordinateSpaceDimension(IfcDimensionCount v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -7518,7 +7518,7 @@ bool IfcGeometricRepresentationContext::is(Type::Enum v) const { return v == Typ Type::Enum IfcGeometricRepresentationContext::type() const { return Type::IfcGeometricRepresentationContext; } Type::Enum IfcGeometricRepresentationContext::Class() { return Type::IfcGeometricRepresentationContext; } IfcGeometricRepresentationContext::IfcGeometricRepresentationContext(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeometricRepresentationContext)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeometricRepresentationContext::IfcGeometricRepresentationContext(IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, double v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextIdentifier); e->setArgument(1,v2_ContextType); e->setArgument(2,v3_CoordinateSpaceDimension); e->setArgument(3,v4_Precision); e->setArgument(4,v5_WorldCoordinateSystem); e->setArgument(5,v6_TrueNorth); entity = e; } +IfcGeometricRepresentationContext::IfcGeometricRepresentationContext(optional v1_ContextIdentifier, optional v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, optional v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ContextIdentifier) { e->setArgument(0,(*v1_ContextIdentifier)); } else { e->setArgument(0); } ; if (v2_ContextType) { e->setArgument(1,(*v2_ContextType)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_CoordinateSpaceDimension)); if (v4_Precision) { e->setArgument(3,(*v4_Precision)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_WorldCoordinateSystem)); e->setArgument(5,(v6_TrueNorth)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeometricRepresentationItem bool IfcGeometricRepresentationItem::is(Type::Enum v) const { return v == Type::IfcGeometricRepresentationItem || IfcRepresentationItem::is(v); } Type::Enum IfcGeometricRepresentationItem::type() const { return Type::IfcGeometricRepresentationItem; } @@ -7539,7 +7539,7 @@ bool IfcGeometricRepresentationSubContext::is(Type::Enum v) const { return v == Type::Enum IfcGeometricRepresentationSubContext::type() const { return Type::IfcGeometricRepresentationSubContext; } Type::Enum IfcGeometricRepresentationSubContext::Class() { return Type::IfcGeometricRepresentationSubContext; } IfcGeometricRepresentationSubContext::IfcGeometricRepresentationSubContext(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeometricRepresentationSubContext)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeometricRepresentationSubContext::IfcGeometricRepresentationSubContext(IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, double v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth, IfcGeometricRepresentationContext* v7_ParentContext, IfcPositiveRatioMeasure v8_TargetScale, IfcGeometricProjectionEnum::IfcGeometricProjectionEnum v9_TargetView, IfcLabel v10_UserDefinedTargetView) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextIdentifier); e->setArgument(1,v2_ContextType); e->setArgument(2,v3_CoordinateSpaceDimension); e->setArgument(3,v4_Precision); e->setArgument(4,v5_WorldCoordinateSystem); e->setArgument(5,v6_TrueNorth); e->setArgument(6,v7_ParentContext); e->setArgument(7,v8_TargetScale); e->setArgument(8,v9_TargetView); e->setArgument(9,v10_UserDefinedTargetView); entity = e; } +IfcGeometricRepresentationSubContext::IfcGeometricRepresentationSubContext(optional v1_ContextIdentifier, optional v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, optional v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth, IfcGeometricRepresentationContext* v7_ParentContext, optional v8_TargetScale, IfcGeometricProjectionEnum::IfcGeometricProjectionEnum v9_TargetView, optional v10_UserDefinedTargetView) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ContextIdentifier) { e->setArgument(0,(*v1_ContextIdentifier)); } else { e->setArgument(0); } ; if (v2_ContextType) { e->setArgument(1,(*v2_ContextType)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_CoordinateSpaceDimension)); if (v4_Precision) { e->setArgument(3,(*v4_Precision)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_WorldCoordinateSystem)); e->setArgument(5,(v6_TrueNorth)); e->setArgument(6,(v7_ParentContext)); if (v8_TargetScale) { e->setArgument(7,(*v8_TargetScale)); } else { e->setArgument(7); } ; e->setArgument(8,v9_TargetView,IfcGeometricProjectionEnum::ToString(v9_TargetView)); if (v10_UserDefinedTargetView) { e->setArgument(9,(*v10_UserDefinedTargetView)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGeometricSet SHARED_PTR< IfcTemplatedEntityList > IfcGeometricSet::Elements() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcGeometricSet::setElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -7547,7 +7547,7 @@ bool IfcGeometricSet::is(Type::Enum v) const { return v == Type::IfcGeometricSet Type::Enum IfcGeometricSet::type() const { return Type::IfcGeometricSet; } Type::Enum IfcGeometricSet::Class() { return Type::IfcGeometricSet; } IfcGeometricSet::IfcGeometricSet(IfcAbstractEntityPtr e) { if (!is(Type::IfcGeometricSet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGeometricSet::IfcGeometricSet(IfcEntities v1_Elements) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Elements); entity = e; } +IfcGeometricSet::IfcGeometricSet(IfcEntities v1_Elements) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Elements)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGrid SHARED_PTR< IfcTemplatedEntityList > IfcGrid::UAxes() { RETURN_AS_LIST(IfcGridAxis,7) } void IfcGrid::setUAxes(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v->generalize()); } @@ -7561,7 +7561,7 @@ bool IfcGrid::is(Type::Enum v) const { return v == Type::IfcGrid || IfcProduct:: Type::Enum IfcGrid::type() const { return Type::IfcGrid; } Type::Enum IfcGrid::Class() { return Type::IfcGrid; } IfcGrid::IfcGrid(IfcAbstractEntityPtr e) { if (!is(Type::IfcGrid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGrid::IfcGrid(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, SHARED_PTR< IfcTemplatedEntityList > v8_UAxes, SHARED_PTR< IfcTemplatedEntityList > v9_VAxes, SHARED_PTR< IfcTemplatedEntityList > v10_WAxes) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_UAxes->generalize()); e->setArgument(8,v9_VAxes->generalize()); e->setArgument(9,v10_WAxes->generalize()); entity = e; } +IfcGrid::IfcGrid(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, SHARED_PTR< IfcTemplatedEntityList > v8_UAxes, SHARED_PTR< IfcTemplatedEntityList > v9_VAxes, optional >> v10_WAxes) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_UAxes)->generalize()); e->setArgument(8,(v9_VAxes)->generalize()); if (v10_WAxes) { e->setArgument(9,(*v10_WAxes)->generalize()); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGridAxis bool IfcGridAxis::hasAxisTag() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcGridAxis::AxisTag() { return *entity->getArgument(0); } @@ -7578,7 +7578,7 @@ bool IfcGridAxis::is(Type::Enum v) const { return v == Type::IfcGridAxis; } Type::Enum IfcGridAxis::type() const { return Type::IfcGridAxis; } Type::Enum IfcGridAxis::Class() { return Type::IfcGridAxis; } IfcGridAxis::IfcGridAxis(IfcAbstractEntityPtr e) { if (!is(Type::IfcGridAxis)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGridAxis::IfcGridAxis(IfcLabel v1_AxisTag, IfcCurve* v2_AxisCurve, IfcBoolean v3_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_AxisTag); e->setArgument(1,v2_AxisCurve); e->setArgument(2,v3_SameSense); entity = e; } +IfcGridAxis::IfcGridAxis(optional v1_AxisTag, IfcCurve* v2_AxisCurve, IfcBoolean v3_SameSense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_AxisTag) { e->setArgument(0,(*v1_AxisTag)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_AxisCurve)); e->setArgument(2,(v3_SameSense)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGridPlacement IfcVirtualGridIntersection* IfcGridPlacement::PlacementLocation() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcGridPlacement::setPlacementLocation(IfcVirtualGridIntersection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7589,14 +7589,14 @@ bool IfcGridPlacement::is(Type::Enum v) const { return v == Type::IfcGridPlaceme Type::Enum IfcGridPlacement::type() const { return Type::IfcGridPlacement; } Type::Enum IfcGridPlacement::Class() { return Type::IfcGridPlacement; } IfcGridPlacement::IfcGridPlacement(IfcAbstractEntityPtr e) { if (!is(Type::IfcGridPlacement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGridPlacement::IfcGridPlacement(IfcVirtualGridIntersection* v1_PlacementLocation, IfcVirtualGridIntersection* v2_PlacementRefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_PlacementLocation); e->setArgument(1,v2_PlacementRefDirection); entity = e; } +IfcGridPlacement::IfcGridPlacement(IfcVirtualGridIntersection* v1_PlacementLocation, IfcVirtualGridIntersection* v2_PlacementRefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_PlacementLocation)); e->setArgument(1,(v2_PlacementRefDirection)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcGroup IfcRelAssignsToGroup::list IfcGroup::IsGroupedBy() { RETURN_INVERSE(IfcRelAssignsToGroup) } bool IfcGroup::is(Type::Enum v) const { return v == Type::IfcGroup || IfcObject::is(v); } Type::Enum IfcGroup::type() const { return Type::IfcGroup; } Type::Enum IfcGroup::Class() { return Type::IfcGroup; } IfcGroup::IfcGroup(IfcAbstractEntityPtr e) { if (!is(Type::IfcGroup)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcGroup::IfcGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcGroup::IfcGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcHalfSpaceSolid IfcSurface* IfcHalfSpaceSolid::BaseSurface() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcHalfSpaceSolid::setBaseSurface(IfcSurface* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7606,7 +7606,7 @@ bool IfcHalfSpaceSolid::is(Type::Enum v) const { return v == Type::IfcHalfSpaceS Type::Enum IfcHalfSpaceSolid::type() const { return Type::IfcHalfSpaceSolid; } Type::Enum IfcHalfSpaceSolid::Class() { return Type::IfcHalfSpaceSolid; } IfcHalfSpaceSolid::IfcHalfSpaceSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcHalfSpaceSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcHalfSpaceSolid::IfcHalfSpaceSolid(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BaseSurface); e->setArgument(1,v2_AgreementFlag); entity = e; } +IfcHalfSpaceSolid::IfcHalfSpaceSolid(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BaseSurface)); e->setArgument(1,(v2_AgreementFlag)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcHeatExchangerType IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum IfcHeatExchangerType::PredefinedType() { return IfcHeatExchangerTypeEnum::FromString(*entity->getArgument(9)); } void IfcHeatExchangerType::setPredefinedType(IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcHeatExchangerTypeEnum::ToString(v)); } @@ -7614,7 +7614,7 @@ bool IfcHeatExchangerType::is(Type::Enum v) const { return v == Type::IfcHeatExc Type::Enum IfcHeatExchangerType::type() const { return Type::IfcHeatExchangerType; } Type::Enum IfcHeatExchangerType::Class() { return Type::IfcHeatExchangerType; } IfcHeatExchangerType::IfcHeatExchangerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcHeatExchangerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcHeatExchangerType::IfcHeatExchangerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcHeatExchangerType::IfcHeatExchangerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcHeatExchangerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcHumidifierType IfcHumidifierTypeEnum::IfcHumidifierTypeEnum IfcHumidifierType::PredefinedType() { return IfcHumidifierTypeEnum::FromString(*entity->getArgument(9)); } void IfcHumidifierType::setPredefinedType(IfcHumidifierTypeEnum::IfcHumidifierTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcHumidifierTypeEnum::ToString(v)); } @@ -7622,7 +7622,7 @@ bool IfcHumidifierType::is(Type::Enum v) const { return v == Type::IfcHumidifier Type::Enum IfcHumidifierType::type() const { return Type::IfcHumidifierType; } Type::Enum IfcHumidifierType::Class() { return Type::IfcHumidifierType; } IfcHumidifierType::IfcHumidifierType(IfcAbstractEntityPtr e) { if (!is(Type::IfcHumidifierType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcHumidifierType::IfcHumidifierType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcHumidifierTypeEnum::IfcHumidifierTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcHumidifierType::IfcHumidifierType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcHumidifierTypeEnum::IfcHumidifierTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcHumidifierTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcHygroscopicMaterialProperties bool IfcHygroscopicMaterialProperties::hasUpperVaporResistanceFactor() { return !entity->getArgument(1)->isNull(); } IfcPositiveRatioMeasure IfcHygroscopicMaterialProperties::UpperVaporResistanceFactor() { return *entity->getArgument(1); } @@ -7643,7 +7643,7 @@ bool IfcHygroscopicMaterialProperties::is(Type::Enum v) const { return v == Type Type::Enum IfcHygroscopicMaterialProperties::type() const { return Type::IfcHygroscopicMaterialProperties; } Type::Enum IfcHygroscopicMaterialProperties::Class() { return Type::IfcHygroscopicMaterialProperties; } IfcHygroscopicMaterialProperties::IfcHygroscopicMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcHygroscopicMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcHygroscopicMaterialProperties::IfcHygroscopicMaterialProperties(IfcMaterial* v1_Material, IfcPositiveRatioMeasure v2_UpperVaporResistanceFactor, IfcPositiveRatioMeasure v3_LowerVaporResistanceFactor, IfcIsothermalMoistureCapacityMeasure v4_IsothermalMoistureCapacity, IfcVaporPermeabilityMeasure v5_VaporPermeability, IfcMoistureDiffusivityMeasure v6_MoistureDiffusivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_UpperVaporResistanceFactor); e->setArgument(2,v3_LowerVaporResistanceFactor); e->setArgument(3,v4_IsothermalMoistureCapacity); e->setArgument(4,v5_VaporPermeability); e->setArgument(5,v6_MoistureDiffusivity); entity = e; } +IfcHygroscopicMaterialProperties::IfcHygroscopicMaterialProperties(IfcMaterial* v1_Material, optional v2_UpperVaporResistanceFactor, optional v3_LowerVaporResistanceFactor, optional v4_IsothermalMoistureCapacity, optional v5_VaporPermeability, optional v6_MoistureDiffusivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_UpperVaporResistanceFactor) { e->setArgument(1,(*v2_UpperVaporResistanceFactor)); } else { e->setArgument(1); } ; if (v3_LowerVaporResistanceFactor) { e->setArgument(2,(*v3_LowerVaporResistanceFactor)); } else { e->setArgument(2); } ; if (v4_IsothermalMoistureCapacity) { e->setArgument(3,(*v4_IsothermalMoistureCapacity)); } else { e->setArgument(3); } ; if (v5_VaporPermeability) { e->setArgument(4,(*v5_VaporPermeability)); } else { e->setArgument(4); } ; if (v6_MoistureDiffusivity) { e->setArgument(5,(*v6_MoistureDiffusivity)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcIShapeProfileDef IfcPositiveLengthMeasure IfcIShapeProfileDef::OverallWidth() { return *entity->getArgument(3); } void IfcIShapeProfileDef::setOverallWidth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -7660,7 +7660,7 @@ bool IfcIShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcIShapePr Type::Enum IfcIShapeProfileDef::type() const { return Type::IfcIShapeProfileDef; } Type::Enum IfcIShapeProfileDef::Class() { return Type::IfcIShapeProfileDef; } IfcIShapeProfileDef::IfcIShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcIShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcIShapeProfileDef::IfcIShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_OverallWidth); e->setArgument(4,v5_OverallDepth); e->setArgument(5,v6_WebThickness); e->setArgument(6,v7_FlangeThickness); e->setArgument(7,v8_FilletRadius); entity = e; } +IfcIShapeProfileDef::IfcIShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_OverallWidth)); e->setArgument(4,(v5_OverallDepth)); e->setArgument(5,(v6_WebThickness)); e->setArgument(6,(v7_FlangeThickness)); if (v8_FilletRadius) { e->setArgument(7,(*v8_FilletRadius)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcImageTexture IfcIdentifier IfcImageTexture::UrlReference() { return *entity->getArgument(4); } void IfcImageTexture::setUrlReference(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -7668,7 +7668,7 @@ bool IfcImageTexture::is(Type::Enum v) const { return v == Type::IfcImageTexture Type::Enum IfcImageTexture::type() const { return Type::IfcImageTexture; } Type::Enum IfcImageTexture::Class() { return Type::IfcImageTexture; } IfcImageTexture::IfcImageTexture(IfcAbstractEntityPtr e) { if (!is(Type::IfcImageTexture)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcImageTexture::IfcImageTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcIdentifier v5_UrlReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatS); e->setArgument(1,v2_RepeatT); e->setArgument(2,v3_TextureType); e->setArgument(3,v4_TextureTransform); e->setArgument(4,v5_UrlReference); entity = e; } +IfcImageTexture::IfcImageTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcIdentifier v5_UrlReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatS)); e->setArgument(1,(v2_RepeatT)); e->setArgument(2,v3_TextureType,IfcSurfaceTextureEnum::ToString(v3_TextureType)); e->setArgument(3,(v4_TextureTransform)); e->setArgument(4,(v5_UrlReference)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcInventory IfcInventoryTypeEnum::IfcInventoryTypeEnum IfcInventory::InventoryType() { return IfcInventoryTypeEnum::FromString(*entity->getArgument(5)); } void IfcInventory::setInventoryType(IfcInventoryTypeEnum::IfcInventoryTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v,IfcInventoryTypeEnum::ToString(v)); } @@ -7688,7 +7688,7 @@ bool IfcInventory::is(Type::Enum v) const { return v == Type::IfcInventory || If Type::Enum IfcInventory::type() const { return Type::IfcInventory; } Type::Enum IfcInventory::Class() { return Type::IfcInventory; } IfcInventory::IfcInventory(IfcAbstractEntityPtr e) { if (!is(Type::IfcInventory)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcInventory::IfcInventory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcInventoryTypeEnum::IfcInventoryTypeEnum v6_InventoryType, IfcActorSelect v7_Jurisdiction, SHARED_PTR< IfcTemplatedEntityList > v8_ResponsiblePersons, IfcCalendarDate* v9_LastUpdateDate, IfcCostValue* v10_CurrentValue, IfcCostValue* v11_OriginalValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_InventoryType); e->setArgument(6,v7_Jurisdiction); e->setArgument(7,v8_ResponsiblePersons->generalize()); e->setArgument(8,v9_LastUpdateDate); e->setArgument(9,v10_CurrentValue); e->setArgument(10,v11_OriginalValue); entity = e; } +IfcInventory::IfcInventory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcInventoryTypeEnum::IfcInventoryTypeEnum v6_InventoryType, IfcActorSelect v7_Jurisdiction, SHARED_PTR< IfcTemplatedEntityList > v8_ResponsiblePersons, IfcCalendarDate* v9_LastUpdateDate, IfcCostValue* v10_CurrentValue, IfcCostValue* v11_OriginalValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,v6_InventoryType,IfcInventoryTypeEnum::ToString(v6_InventoryType)); e->setArgument(6,(v7_Jurisdiction)); e->setArgument(7,(v8_ResponsiblePersons)->generalize()); e->setArgument(8,(v9_LastUpdateDate)); e->setArgument(9,(v10_CurrentValue)); e->setArgument(10,(v11_OriginalValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcIrregularTimeSeries SHARED_PTR< IfcTemplatedEntityList > IfcIrregularTimeSeries::Values() { RETURN_AS_LIST(IfcIrregularTimeSeriesValue,8) } void IfcIrregularTimeSeries::setValues(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v->generalize()); } @@ -7696,7 +7696,7 @@ bool IfcIrregularTimeSeries::is(Type::Enum v) const { return v == Type::IfcIrreg Type::Enum IfcIrregularTimeSeries::type() const { return Type::IfcIrregularTimeSeries; } Type::Enum IfcIrregularTimeSeries::Class() { return Type::IfcIrregularTimeSeries; } IfcIrregularTimeSeries::IfcIrregularTimeSeries(IfcAbstractEntityPtr e) { if (!is(Type::IfcIrregularTimeSeries)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcIrregularTimeSeries::IfcIrregularTimeSeries(IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit, SHARED_PTR< IfcTemplatedEntityList > v9_Values) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_StartTime); e->setArgument(3,v4_EndTime); e->setArgument(4,v5_TimeSeriesDataType); e->setArgument(5,v6_DataOrigin); e->setArgument(6,v7_UserDefinedDataOrigin); e->setArgument(7,v8_Unit); e->setArgument(8,v9_Values->generalize()); entity = e; } +IfcIrregularTimeSeries::IfcIrregularTimeSeries(IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit, SHARED_PTR< IfcTemplatedEntityList > v9_Values) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_StartTime)); e->setArgument(3,(v4_EndTime)); e->setArgument(4,v5_TimeSeriesDataType,IfcTimeSeriesDataTypeEnum::ToString(v5_TimeSeriesDataType)); e->setArgument(5,v6_DataOrigin,IfcDataOriginEnum::ToString(v6_DataOrigin)); if (v7_UserDefinedDataOrigin) { e->setArgument(6,(*v7_UserDefinedDataOrigin)); } else { e->setArgument(6); } ; if (v8_Unit) { e->setArgument(7,(*v8_Unit)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_Values)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcIrregularTimeSeriesValue IfcDateTimeSelect IfcIrregularTimeSeriesValue::TimeStamp() { return *entity->getArgument(0); } void IfcIrregularTimeSeriesValue::setTimeStamp(IfcDateTimeSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7706,7 +7706,7 @@ bool IfcIrregularTimeSeriesValue::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcIrregularTimeSeriesValue::type() const { return Type::IfcIrregularTimeSeriesValue; } Type::Enum IfcIrregularTimeSeriesValue::Class() { return Type::IfcIrregularTimeSeriesValue; } IfcIrregularTimeSeriesValue::IfcIrregularTimeSeriesValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcIrregularTimeSeriesValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcIrregularTimeSeriesValue::IfcIrregularTimeSeriesValue(IfcDateTimeSelect v1_TimeStamp, IfcEntities v2_ListValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TimeStamp); e->setArgument(1,v2_ListValues); entity = e; } +IfcIrregularTimeSeriesValue::IfcIrregularTimeSeriesValue(IfcDateTimeSelect v1_TimeStamp, IfcEntities v2_ListValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TimeStamp)); e->setArgument(1,(v2_ListValues)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcJunctionBoxType IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum IfcJunctionBoxType::PredefinedType() { return IfcJunctionBoxTypeEnum::FromString(*entity->getArgument(9)); } void IfcJunctionBoxType::setPredefinedType(IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcJunctionBoxTypeEnum::ToString(v)); } @@ -7714,7 +7714,7 @@ bool IfcJunctionBoxType::is(Type::Enum v) const { return v == Type::IfcJunctionB Type::Enum IfcJunctionBoxType::type() const { return Type::IfcJunctionBoxType; } Type::Enum IfcJunctionBoxType::Class() { return Type::IfcJunctionBoxType; } IfcJunctionBoxType::IfcJunctionBoxType(IfcAbstractEntityPtr e) { if (!is(Type::IfcJunctionBoxType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcJunctionBoxType::IfcJunctionBoxType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcJunctionBoxType::IfcJunctionBoxType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcJunctionBoxTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLShapeProfileDef IfcPositiveLengthMeasure IfcLShapeProfileDef::Depth() { return *entity->getArgument(3); } void IfcLShapeProfileDef::setDepth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -7742,7 +7742,7 @@ bool IfcLShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcLShapePr Type::Enum IfcLShapeProfileDef::type() const { return Type::IfcLShapeProfileDef; } Type::Enum IfcLShapeProfileDef::Class() { return Type::IfcLShapeProfileDef; } IfcLShapeProfileDef::IfcLShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcLShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLShapeProfileDef::IfcLShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_Thickness, IfcPositiveLengthMeasure v7_FilletRadius, IfcPositiveLengthMeasure v8_EdgeRadius, IfcPlaneAngleMeasure v9_LegSlope, IfcPositiveLengthMeasure v10_CentreOfGravityInX, IfcPositiveLengthMeasure v11_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Depth); e->setArgument(4,v5_Width); e->setArgument(5,v6_Thickness); e->setArgument(6,v7_FilletRadius); e->setArgument(7,v8_EdgeRadius); e->setArgument(8,v9_LegSlope); e->setArgument(9,v10_CentreOfGravityInX); e->setArgument(10,v11_CentreOfGravityInY); entity = e; } +IfcLShapeProfileDef::IfcLShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, optional v5_Width, IfcPositiveLengthMeasure v6_Thickness, optional v7_FilletRadius, optional v8_EdgeRadius, optional v9_LegSlope, optional v10_CentreOfGravityInX, optional v11_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Depth)); if (v5_Width) { e->setArgument(4,(*v5_Width)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Thickness)); if (v7_FilletRadius) { e->setArgument(6,(*v7_FilletRadius)); } else { e->setArgument(6); } ; if (v8_EdgeRadius) { e->setArgument(7,(*v8_EdgeRadius)); } else { e->setArgument(7); } ; if (v9_LegSlope) { e->setArgument(8,(*v9_LegSlope)); } else { e->setArgument(8); } ; if (v10_CentreOfGravityInX) { e->setArgument(9,(*v10_CentreOfGravityInX)); } else { e->setArgument(9); } ; if (v11_CentreOfGravityInY) { e->setArgument(10,(*v11_CentreOfGravityInY)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLaborResource bool IfcLaborResource::hasSkillSet() { return !entity->getArgument(9)->isNull(); } IfcText IfcLaborResource::SkillSet() { return *entity->getArgument(9); } @@ -7751,7 +7751,7 @@ bool IfcLaborResource::is(Type::Enum v) const { return v == Type::IfcLaborResour Type::Enum IfcLaborResource::type() const { return Type::IfcLaborResource; } Type::Enum IfcLaborResource::Class() { return Type::IfcLaborResource; } IfcLaborResource::IfcLaborResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcLaborResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLaborResource::IfcLaborResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcText v10_SkillSet) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); e->setArgument(9,v10_SkillSet); entity = e; } +IfcLaborResource::IfcLaborResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_SkillSet) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); if (v10_SkillSet) { e->setArgument(9,(*v10_SkillSet)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLampType IfcLampTypeEnum::IfcLampTypeEnum IfcLampType::PredefinedType() { return IfcLampTypeEnum::FromString(*entity->getArgument(9)); } void IfcLampType::setPredefinedType(IfcLampTypeEnum::IfcLampTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcLampTypeEnum::ToString(v)); } @@ -7759,7 +7759,7 @@ bool IfcLampType::is(Type::Enum v) const { return v == Type::IfcLampType || IfcF Type::Enum IfcLampType::type() const { return Type::IfcLampType; } Type::Enum IfcLampType::Class() { return Type::IfcLampType; } IfcLampType::IfcLampType(IfcAbstractEntityPtr e) { if (!is(Type::IfcLampType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLampType::IfcLampType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcLampTypeEnum::IfcLampTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcLampType::IfcLampType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcLampTypeEnum::IfcLampTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcLampTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLibraryInformation IfcLabel IfcLibraryInformation::Name() { return *entity->getArgument(0); } void IfcLibraryInformation::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7779,14 +7779,14 @@ bool IfcLibraryInformation::is(Type::Enum v) const { return v == Type::IfcLibrar Type::Enum IfcLibraryInformation::type() const { return Type::IfcLibraryInformation; } Type::Enum IfcLibraryInformation::Class() { return Type::IfcLibraryInformation; } IfcLibraryInformation::IfcLibraryInformation(IfcAbstractEntityPtr e) { if (!is(Type::IfcLibraryInformation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLibraryInformation::IfcLibraryInformation(IfcLabel v1_Name, IfcLabel v2_Version, IfcOrganization* v3_Publisher, IfcCalendarDate* v4_VersionDate, SHARED_PTR< IfcTemplatedEntityList > v5_LibraryReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Version); e->setArgument(2,v3_Publisher); e->setArgument(3,v4_VersionDate); e->setArgument(4,v5_LibraryReference->generalize()); entity = e; } +IfcLibraryInformation::IfcLibraryInformation(IfcLabel v1_Name, optional v2_Version, IfcOrganization* v3_Publisher, IfcCalendarDate* v4_VersionDate, optional >> v5_LibraryReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Version) { e->setArgument(1,(*v2_Version)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Publisher)); e->setArgument(3,(v4_VersionDate)); if (v5_LibraryReference) { e->setArgument(4,(*v5_LibraryReference)->generalize()); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLibraryReference IfcLibraryInformation::list IfcLibraryReference::ReferenceIntoLibrary() { RETURN_INVERSE(IfcLibraryInformation) } bool IfcLibraryReference::is(Type::Enum v) const { return v == Type::IfcLibraryReference || IfcExternalReference::is(v); } Type::Enum IfcLibraryReference::type() const { return Type::IfcLibraryReference; } Type::Enum IfcLibraryReference::Class() { return Type::IfcLibraryReference; } IfcLibraryReference::IfcLibraryReference(IfcAbstractEntityPtr e) { if (!is(Type::IfcLibraryReference)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLibraryReference::IfcLibraryReference(IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); e->setArgument(1,v2_ItemReference); e->setArgument(2,v3_Name); entity = e; } +IfcLibraryReference::IfcLibraryReference(optional v1_Location, optional v2_ItemReference, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Location) { e->setArgument(0,(*v1_Location)); } else { e->setArgument(0); } ; if (v2_ItemReference) { e->setArgument(1,(*v2_ItemReference)); } else { e->setArgument(1); } ; if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightDistributionData IfcPlaneAngleMeasure IfcLightDistributionData::MainPlaneAngle() { return *entity->getArgument(0); } void IfcLightDistributionData::setMainPlaneAngle(IfcPlaneAngleMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7798,7 +7798,7 @@ bool IfcLightDistributionData::is(Type::Enum v) const { return v == Type::IfcLig Type::Enum IfcLightDistributionData::type() const { return Type::IfcLightDistributionData; } Type::Enum IfcLightDistributionData::Class() { return Type::IfcLightDistributionData; } IfcLightDistributionData::IfcLightDistributionData(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightDistributionData)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightDistributionData::IfcLightDistributionData(IfcPlaneAngleMeasure v1_MainPlaneAngle, std::vector /*[1:?]*/ v2_SecondaryPlaneAngle, std::vector /*[1:?]*/ v3_LuminousIntensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_MainPlaneAngle); e->setArgument(1,v2_SecondaryPlaneAngle); e->setArgument(2,v3_LuminousIntensity); entity = e; } +IfcLightDistributionData::IfcLightDistributionData(IfcPlaneAngleMeasure v1_MainPlaneAngle, std::vector /*[1:?]*/ v2_SecondaryPlaneAngle, std::vector /*[1:?]*/ v3_LuminousIntensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_MainPlaneAngle)); e->setArgument(1,(v2_SecondaryPlaneAngle)); e->setArgument(2,(v3_LuminousIntensity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightFixtureType IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum IfcLightFixtureType::PredefinedType() { return IfcLightFixtureTypeEnum::FromString(*entity->getArgument(9)); } void IfcLightFixtureType::setPredefinedType(IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcLightFixtureTypeEnum::ToString(v)); } @@ -7806,7 +7806,7 @@ bool IfcLightFixtureType::is(Type::Enum v) const { return v == Type::IfcLightFix Type::Enum IfcLightFixtureType::type() const { return Type::IfcLightFixtureType; } Type::Enum IfcLightFixtureType::Class() { return Type::IfcLightFixtureType; } IfcLightFixtureType::IfcLightFixtureType(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightFixtureType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightFixtureType::IfcLightFixtureType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcLightFixtureType::IfcLightFixtureType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcLightFixtureTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightIntensityDistribution IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum IfcLightIntensityDistribution::LightDistributionCurve() { return IfcLightDistributionCurveEnum::FromString(*entity->getArgument(0)); } void IfcLightIntensityDistribution::setLightDistributionCurve(IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcLightDistributionCurveEnum::ToString(v)); } @@ -7816,7 +7816,7 @@ bool IfcLightIntensityDistribution::is(Type::Enum v) const { return v == Type::I Type::Enum IfcLightIntensityDistribution::type() const { return Type::IfcLightIntensityDistribution; } Type::Enum IfcLightIntensityDistribution::Class() { return Type::IfcLightIntensityDistribution; } IfcLightIntensityDistribution::IfcLightIntensityDistribution(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightIntensityDistribution)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightIntensityDistribution::IfcLightIntensityDistribution(IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum v1_LightDistributionCurve, SHARED_PTR< IfcTemplatedEntityList > v2_DistributionData) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LightDistributionCurve); e->setArgument(1,v2_DistributionData->generalize()); entity = e; } +IfcLightIntensityDistribution::IfcLightIntensityDistribution(IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum v1_LightDistributionCurve, SHARED_PTR< IfcTemplatedEntityList > v2_DistributionData) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LightDistributionCurve,IfcLightDistributionCurveEnum::ToString(v1_LightDistributionCurve)); e->setArgument(1,(v2_DistributionData)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSource bool IfcLightSource::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcLightSource::Name() { return *entity->getArgument(0); } @@ -7833,13 +7833,13 @@ bool IfcLightSource::is(Type::Enum v) const { return v == Type::IfcLightSource | Type::Enum IfcLightSource::type() const { return Type::IfcLightSource; } Type::Enum IfcLightSource::Class() { return Type::IfcLightSource; } IfcLightSource::IfcLightSource(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSource::IfcLightSource(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); entity = e; } +IfcLightSource::IfcLightSource(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSourceAmbient bool IfcLightSourceAmbient::is(Type::Enum v) const { return v == Type::IfcLightSourceAmbient || IfcLightSource::is(v); } Type::Enum IfcLightSourceAmbient::type() const { return Type::IfcLightSourceAmbient; } Type::Enum IfcLightSourceAmbient::Class() { return Type::IfcLightSourceAmbient; } IfcLightSourceAmbient::IfcLightSourceAmbient(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSourceAmbient)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSourceAmbient::IfcLightSourceAmbient(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); entity = e; } +IfcLightSourceAmbient::IfcLightSourceAmbient(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSourceDirectional IfcDirection* IfcLightSourceDirectional::Orientation() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcLightSourceDirectional::setOrientation(IfcDirection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -7847,7 +7847,7 @@ bool IfcLightSourceDirectional::is(Type::Enum v) const { return v == Type::IfcLi Type::Enum IfcLightSourceDirectional::type() const { return Type::IfcLightSourceDirectional; } Type::Enum IfcLightSourceDirectional::Class() { return Type::IfcLightSourceDirectional; } IfcLightSourceDirectional::IfcLightSourceDirectional(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSourceDirectional)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSourceDirectional::IfcLightSourceDirectional(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcDirection* v5_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); e->setArgument(4,v5_Orientation); entity = e; } +IfcLightSourceDirectional::IfcLightSourceDirectional(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcDirection* v5_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Orientation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSourceGoniometric IfcAxis2Placement3D* IfcLightSourceGoniometric::Position() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcLightSourceGoniometric::setPosition(IfcAxis2Placement3D* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -7866,7 +7866,7 @@ bool IfcLightSourceGoniometric::is(Type::Enum v) const { return v == Type::IfcLi Type::Enum IfcLightSourceGoniometric::type() const { return Type::IfcLightSourceGoniometric; } Type::Enum IfcLightSourceGoniometric::Class() { return Type::IfcLightSourceGoniometric; } IfcLightSourceGoniometric::IfcLightSourceGoniometric(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSourceGoniometric)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSourceGoniometric::IfcLightSourceGoniometric(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcAxis2Placement3D* v5_Position, IfcColourRgb* v6_ColourAppearance, IfcThermodynamicTemperatureMeasure v7_ColourTemperature, IfcLuminousFluxMeasure v8_LuminousFlux, IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum v9_LightEmissionSource, IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); e->setArgument(4,v5_Position); e->setArgument(5,v6_ColourAppearance); e->setArgument(6,v7_ColourTemperature); e->setArgument(7,v8_LuminousFlux); e->setArgument(8,v9_LightEmissionSource); e->setArgument(9,v10_LightDistributionDataSource); entity = e; } +IfcLightSourceGoniometric::IfcLightSourceGoniometric(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcAxis2Placement3D* v5_Position, IfcColourRgb* v6_ColourAppearance, IfcThermodynamicTemperatureMeasure v7_ColourTemperature, IfcLuminousFluxMeasure v8_LuminousFlux, IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum v9_LightEmissionSource, IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Position)); e->setArgument(5,(v6_ColourAppearance)); e->setArgument(6,(v7_ColourTemperature)); e->setArgument(7,(v8_LuminousFlux)); e->setArgument(8,v9_LightEmissionSource,IfcLightEmissionSourceEnum::ToString(v9_LightEmissionSource)); e->setArgument(9,(v10_LightDistributionDataSource)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSourcePositional IfcCartesianPoint* IfcLightSourcePositional::Position() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcLightSourcePositional::setPosition(IfcCartesianPoint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -7882,7 +7882,7 @@ bool IfcLightSourcePositional::is(Type::Enum v) const { return v == Type::IfcLig Type::Enum IfcLightSourcePositional::type() const { return Type::IfcLightSourcePositional; } Type::Enum IfcLightSourcePositional::Class() { return Type::IfcLightSourcePositional; } IfcLightSourcePositional::IfcLightSourcePositional(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSourcePositional)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSourcePositional::IfcLightSourcePositional(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); e->setArgument(4,v5_Position); e->setArgument(5,v6_Radius); e->setArgument(6,v7_ConstantAttenuation); e->setArgument(7,v8_DistanceAttenuation); e->setArgument(8,v9_QuadricAttenuation); entity = e; } +IfcLightSourcePositional::IfcLightSourcePositional(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Position)); e->setArgument(5,(v6_Radius)); e->setArgument(6,(v7_ConstantAttenuation)); e->setArgument(7,(v8_DistanceAttenuation)); e->setArgument(8,(v9_QuadricAttenuation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLightSourceSpot IfcDirection* IfcLightSourceSpot::Orientation() { return reinterpret_pointer_cast(*entity->getArgument(9)); } void IfcLightSourceSpot::setOrientation(IfcDirection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v); } @@ -7897,7 +7897,7 @@ bool IfcLightSourceSpot::is(Type::Enum v) const { return v == Type::IfcLightSour Type::Enum IfcLightSourceSpot::type() const { return Type::IfcLightSourceSpot; } Type::Enum IfcLightSourceSpot::Class() { return Type::IfcLightSourceSpot; } IfcLightSourceSpot::IfcLightSourceSpot(IfcAbstractEntityPtr e) { if (!is(Type::IfcLightSourceSpot)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLightSourceSpot::IfcLightSourceSpot(IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation, IfcDirection* v10_Orientation, IfcReal v11_ConcentrationExponent, IfcPositivePlaneAngleMeasure v12_SpreadAngle, IfcPositivePlaneAngleMeasure v13_BeamWidthAngle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LightColour); e->setArgument(2,v3_AmbientIntensity); e->setArgument(3,v4_Intensity); e->setArgument(4,v5_Position); e->setArgument(5,v6_Radius); e->setArgument(6,v7_ConstantAttenuation); e->setArgument(7,v8_DistanceAttenuation); e->setArgument(8,v9_QuadricAttenuation); e->setArgument(9,v10_Orientation); e->setArgument(10,v11_ConcentrationExponent); e->setArgument(11,v12_SpreadAngle); e->setArgument(12,v13_BeamWidthAngle); entity = e; } +IfcLightSourceSpot::IfcLightSourceSpot(optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation, IfcDirection* v10_Orientation, optional v11_ConcentrationExponent, IfcPositivePlaneAngleMeasure v12_SpreadAngle, IfcPositivePlaneAngleMeasure v13_BeamWidthAngle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_LightColour)); if (v3_AmbientIntensity) { e->setArgument(2,(*v3_AmbientIntensity)); } else { e->setArgument(2); } ; if (v4_Intensity) { e->setArgument(3,(*v4_Intensity)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_Position)); e->setArgument(5,(v6_Radius)); e->setArgument(6,(v7_ConstantAttenuation)); e->setArgument(7,(v8_DistanceAttenuation)); e->setArgument(8,(v9_QuadricAttenuation)); e->setArgument(9,(v10_Orientation)); if (v11_ConcentrationExponent) { e->setArgument(10,(*v11_ConcentrationExponent)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_SpreadAngle)); e->setArgument(12,(v13_BeamWidthAngle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLine IfcCartesianPoint* IfcLine::Pnt() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcLine::setPnt(IfcCartesianPoint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7907,13 +7907,13 @@ bool IfcLine::is(Type::Enum v) const { return v == Type::IfcLine || IfcCurve::is Type::Enum IfcLine::type() const { return Type::IfcLine; } Type::Enum IfcLine::Class() { return Type::IfcLine; } IfcLine::IfcLine(IfcAbstractEntityPtr e) { if (!is(Type::IfcLine)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLine::IfcLine(IfcCartesianPoint* v1_Pnt, IfcVector* v2_Dir) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Pnt); e->setArgument(1,v2_Dir); entity = e; } +IfcLine::IfcLine(IfcCartesianPoint* v1_Pnt, IfcVector* v2_Dir) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Pnt)); e->setArgument(1,(v2_Dir)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLinearDimension bool IfcLinearDimension::is(Type::Enum v) const { return v == Type::IfcLinearDimension || IfcDimensionCurveDirectedCallout::is(v); } Type::Enum IfcLinearDimension::type() const { return Type::IfcLinearDimension; } Type::Enum IfcLinearDimension::Class() { return Type::IfcLinearDimension; } IfcLinearDimension::IfcLinearDimension(IfcAbstractEntityPtr e) { if (!is(Type::IfcLinearDimension)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLinearDimension::IfcLinearDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcLinearDimension::IfcLinearDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLocalPlacement bool IfcLocalPlacement::hasPlacementRelTo() { return !entity->getArgument(0)->isNull(); } IfcObjectPlacement* IfcLocalPlacement::PlacementRelTo() { return reinterpret_pointer_cast(*entity->getArgument(0)); } @@ -7924,7 +7924,7 @@ bool IfcLocalPlacement::is(Type::Enum v) const { return v == Type::IfcLocalPlace Type::Enum IfcLocalPlacement::type() const { return Type::IfcLocalPlacement; } Type::Enum IfcLocalPlacement::Class() { return Type::IfcLocalPlacement; } IfcLocalPlacement::IfcLocalPlacement(IfcAbstractEntityPtr e) { if (!is(Type::IfcLocalPlacement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLocalPlacement::IfcLocalPlacement(IfcObjectPlacement* v1_PlacementRelTo, IfcAxis2Placement v2_RelativePlacement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_PlacementRelTo); e->setArgument(1,v2_RelativePlacement); entity = e; } +IfcLocalPlacement::IfcLocalPlacement(IfcObjectPlacement* v1_PlacementRelTo, IfcAxis2Placement v2_RelativePlacement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_PlacementRelTo)); e->setArgument(1,(v2_RelativePlacement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLocalTime IfcHourInDay IfcLocalTime::HourComponent() { return *entity->getArgument(0); } void IfcLocalTime::setHourComponent(IfcHourInDay v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7944,7 +7944,7 @@ bool IfcLocalTime::is(Type::Enum v) const { return v == Type::IfcLocalTime; } Type::Enum IfcLocalTime::type() const { return Type::IfcLocalTime; } Type::Enum IfcLocalTime::Class() { return Type::IfcLocalTime; } IfcLocalTime::IfcLocalTime(IfcAbstractEntityPtr e) { if (!is(Type::IfcLocalTime)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcLocalTime::IfcLocalTime(IfcHourInDay v1_HourComponent, IfcMinuteInHour v2_MinuteComponent, IfcSecondInMinute v3_SecondComponent, IfcCoordinatedUniversalTimeOffset* v4_Zone, IfcDaylightSavingHour v5_DaylightSavingOffset) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_HourComponent); e->setArgument(1,v2_MinuteComponent); e->setArgument(2,v3_SecondComponent); e->setArgument(3,v4_Zone); e->setArgument(4,v5_DaylightSavingOffset); entity = e; } +IfcLocalTime::IfcLocalTime(IfcHourInDay v1_HourComponent, optional v2_MinuteComponent, optional v3_SecondComponent, IfcCoordinatedUniversalTimeOffset* v4_Zone, optional v5_DaylightSavingOffset) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_HourComponent)); if (v2_MinuteComponent) { e->setArgument(1,(*v2_MinuteComponent)); } else { e->setArgument(1); } ; if (v3_SecondComponent) { e->setArgument(2,(*v3_SecondComponent)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Zone)); if (v5_DaylightSavingOffset) { e->setArgument(4,(*v5_DaylightSavingOffset)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcLoop bool IfcLoop::is(Type::Enum v) const { return v == Type::IfcLoop || IfcTopologicalRepresentationItem::is(v); } Type::Enum IfcLoop::type() const { return Type::IfcLoop; } @@ -7957,7 +7957,7 @@ bool IfcManifoldSolidBrep::is(Type::Enum v) const { return v == Type::IfcManifol Type::Enum IfcManifoldSolidBrep::type() const { return Type::IfcManifoldSolidBrep; } Type::Enum IfcManifoldSolidBrep::Class() { return Type::IfcManifoldSolidBrep; } IfcManifoldSolidBrep::IfcManifoldSolidBrep(IfcAbstractEntityPtr e) { if (!is(Type::IfcManifoldSolidBrep)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcManifoldSolidBrep::IfcManifoldSolidBrep(IfcClosedShell* v1_Outer) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Outer); entity = e; } +IfcManifoldSolidBrep::IfcManifoldSolidBrep(IfcClosedShell* v1_Outer) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Outer)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMappedItem IfcRepresentationMap* IfcMappedItem::MappingSource() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcMappedItem::setMappingSource(IfcRepresentationMap* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7967,7 +7967,7 @@ bool IfcMappedItem::is(Type::Enum v) const { return v == Type::IfcMappedItem || Type::Enum IfcMappedItem::type() const { return Type::IfcMappedItem; } Type::Enum IfcMappedItem::Class() { return Type::IfcMappedItem; } IfcMappedItem::IfcMappedItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcMappedItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMappedItem::IfcMappedItem(IfcRepresentationMap* v1_MappingSource, IfcCartesianTransformationOperator* v2_MappingTarget) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_MappingSource); e->setArgument(1,v2_MappingTarget); entity = e; } +IfcMappedItem::IfcMappedItem(IfcRepresentationMap* v1_MappingSource, IfcCartesianTransformationOperator* v2_MappingTarget) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_MappingSource)); e->setArgument(1,(v2_MappingTarget)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterial IfcLabel IfcMaterial::Name() { return *entity->getArgument(0); } void IfcMaterial::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -7977,7 +7977,7 @@ bool IfcMaterial::is(Type::Enum v) const { return v == Type::IfcMaterial; } Type::Enum IfcMaterial::type() const { return Type::IfcMaterial; } Type::Enum IfcMaterial::Class() { return Type::IfcMaterial; } IfcMaterial::IfcMaterial(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterial)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterial::IfcMaterial(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcMaterial::IfcMaterial(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialClassificationRelationship SHARED_PTR< IfcTemplatedEntityList > IfcMaterialClassificationRelationship::MaterialClassifications() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcMaterialClassificationRelationship::setMaterialClassifications(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -7987,7 +7987,7 @@ bool IfcMaterialClassificationRelationship::is(Type::Enum v) const { return v == Type::Enum IfcMaterialClassificationRelationship::type() const { return Type::IfcMaterialClassificationRelationship; } Type::Enum IfcMaterialClassificationRelationship::Class() { return Type::IfcMaterialClassificationRelationship; } IfcMaterialClassificationRelationship::IfcMaterialClassificationRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialClassificationRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialClassificationRelationship::IfcMaterialClassificationRelationship(IfcEntities v1_MaterialClassifications, IfcMaterial* v2_ClassifiedMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_MaterialClassifications); e->setArgument(1,v2_ClassifiedMaterial); entity = e; } +IfcMaterialClassificationRelationship::IfcMaterialClassificationRelationship(IfcEntities v1_MaterialClassifications, IfcMaterial* v2_ClassifiedMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_MaterialClassifications)); e->setArgument(1,(v2_ClassifiedMaterial)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialDefinitionRepresentation IfcMaterial* IfcMaterialDefinitionRepresentation::RepresentedMaterial() { return reinterpret_pointer_cast(*entity->getArgument(3)); } void IfcMaterialDefinitionRepresentation::setRepresentedMaterial(IfcMaterial* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -7995,7 +7995,7 @@ bool IfcMaterialDefinitionRepresentation::is(Type::Enum v) const { return v == T Type::Enum IfcMaterialDefinitionRepresentation::type() const { return Type::IfcMaterialDefinitionRepresentation; } Type::Enum IfcMaterialDefinitionRepresentation::Class() { return Type::IfcMaterialDefinitionRepresentation; } IfcMaterialDefinitionRepresentation::IfcMaterialDefinitionRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialDefinitionRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialDefinitionRepresentation::IfcMaterialDefinitionRepresentation(IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations, IfcMaterial* v4_RepresentedMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Representations->generalize()); e->setArgument(3,v4_RepresentedMaterial); entity = e; } +IfcMaterialDefinitionRepresentation::IfcMaterialDefinitionRepresentation(optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations, IfcMaterial* v4_RepresentedMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Representations)->generalize()); e->setArgument(3,(v4_RepresentedMaterial)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialLayer bool IfcMaterialLayer::hasMaterial() { return !entity->getArgument(0)->isNull(); } IfcMaterial* IfcMaterialLayer::Material() { return reinterpret_pointer_cast(*entity->getArgument(0)); } @@ -8010,7 +8010,7 @@ bool IfcMaterialLayer::is(Type::Enum v) const { return v == Type::IfcMaterialLay Type::Enum IfcMaterialLayer::type() const { return Type::IfcMaterialLayer; } Type::Enum IfcMaterialLayer::Class() { return Type::IfcMaterialLayer; } IfcMaterialLayer::IfcMaterialLayer(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialLayer)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialLayer::IfcMaterialLayer(IfcMaterial* v1_Material, IfcPositiveLengthMeasure v2_LayerThickness, IfcLogical v3_IsVentilated) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_LayerThickness); e->setArgument(2,v3_IsVentilated); entity = e; } +IfcMaterialLayer::IfcMaterialLayer(IfcMaterial* v1_Material, IfcPositiveLengthMeasure v2_LayerThickness, optional v3_IsVentilated) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); e->setArgument(1,(v2_LayerThickness)); if (v3_IsVentilated) { e->setArgument(2,(*v3_IsVentilated)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialLayerSet SHARED_PTR< IfcTemplatedEntityList > IfcMaterialLayerSet::MaterialLayers() { RETURN_AS_LIST(IfcMaterialLayer,0) } void IfcMaterialLayerSet::setMaterialLayers(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8021,7 +8021,7 @@ bool IfcMaterialLayerSet::is(Type::Enum v) const { return v == Type::IfcMaterial Type::Enum IfcMaterialLayerSet::type() const { return Type::IfcMaterialLayerSet; } Type::Enum IfcMaterialLayerSet::Class() { return Type::IfcMaterialLayerSet; } IfcMaterialLayerSet::IfcMaterialLayerSet(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialLayerSet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialLayerSet::IfcMaterialLayerSet(SHARED_PTR< IfcTemplatedEntityList > v1_MaterialLayers, IfcLabel v2_LayerSetName) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_MaterialLayers->generalize()); e->setArgument(1,v2_LayerSetName); entity = e; } +IfcMaterialLayerSet::IfcMaterialLayerSet(SHARED_PTR< IfcTemplatedEntityList > v1_MaterialLayers, optional v2_LayerSetName) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_MaterialLayers)->generalize()); if (v2_LayerSetName) { e->setArgument(1,(*v2_LayerSetName)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialLayerSetUsage IfcMaterialLayerSet* IfcMaterialLayerSetUsage::ForLayerSet() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcMaterialLayerSetUsage::setForLayerSet(IfcMaterialLayerSet* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8035,7 +8035,7 @@ bool IfcMaterialLayerSetUsage::is(Type::Enum v) const { return v == Type::IfcMat Type::Enum IfcMaterialLayerSetUsage::type() const { return Type::IfcMaterialLayerSetUsage; } Type::Enum IfcMaterialLayerSetUsage::Class() { return Type::IfcMaterialLayerSetUsage; } IfcMaterialLayerSetUsage::IfcMaterialLayerSetUsage(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialLayerSetUsage)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialLayerSetUsage::IfcMaterialLayerSetUsage(IfcMaterialLayerSet* v1_ForLayerSet, IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum v2_LayerSetDirection, IfcDirectionSenseEnum::IfcDirectionSenseEnum v3_DirectionSense, IfcLengthMeasure v4_OffsetFromReferenceLine) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ForLayerSet); e->setArgument(1,v2_LayerSetDirection); e->setArgument(2,v3_DirectionSense); e->setArgument(3,v4_OffsetFromReferenceLine); entity = e; } +IfcMaterialLayerSetUsage::IfcMaterialLayerSetUsage(IfcMaterialLayerSet* v1_ForLayerSet, IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum v2_LayerSetDirection, IfcDirectionSenseEnum::IfcDirectionSenseEnum v3_DirectionSense, IfcLengthMeasure v4_OffsetFromReferenceLine) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ForLayerSet)); e->setArgument(1,v2_LayerSetDirection,IfcLayerSetDirectionEnum::ToString(v2_LayerSetDirection)); e->setArgument(2,v3_DirectionSense,IfcDirectionSenseEnum::ToString(v3_DirectionSense)); e->setArgument(3,(v4_OffsetFromReferenceLine)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialList SHARED_PTR< IfcTemplatedEntityList > IfcMaterialList::Materials() { RETURN_AS_LIST(IfcMaterial,0) } void IfcMaterialList::setMaterials(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8043,7 +8043,7 @@ bool IfcMaterialList::is(Type::Enum v) const { return v == Type::IfcMaterialList Type::Enum IfcMaterialList::type() const { return Type::IfcMaterialList; } Type::Enum IfcMaterialList::Class() { return Type::IfcMaterialList; } IfcMaterialList::IfcMaterialList(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialList)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialList::IfcMaterialList(SHARED_PTR< IfcTemplatedEntityList > v1_Materials) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Materials->generalize()); entity = e; } +IfcMaterialList::IfcMaterialList(SHARED_PTR< IfcTemplatedEntityList > v1_Materials) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Materials)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMaterialProperties IfcMaterial* IfcMaterialProperties::Material() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcMaterialProperties::setMaterial(IfcMaterial* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8051,7 +8051,7 @@ bool IfcMaterialProperties::is(Type::Enum v) const { return v == Type::IfcMateri Type::Enum IfcMaterialProperties::type() const { return Type::IfcMaterialProperties; } Type::Enum IfcMaterialProperties::Class() { return Type::IfcMaterialProperties; } IfcMaterialProperties::IfcMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMaterialProperties::IfcMaterialProperties(IfcMaterial* v1_Material) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); entity = e; } +IfcMaterialProperties::IfcMaterialProperties(IfcMaterial* v1_Material) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMeasureWithUnit IfcValue IfcMeasureWithUnit::ValueComponent() { return *entity->getArgument(0); } void IfcMeasureWithUnit::setValueComponent(IfcValue v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8061,7 +8061,7 @@ bool IfcMeasureWithUnit::is(Type::Enum v) const { return v == Type::IfcMeasureWi Type::Enum IfcMeasureWithUnit::type() const { return Type::IfcMeasureWithUnit; } Type::Enum IfcMeasureWithUnit::Class() { return Type::IfcMeasureWithUnit; } IfcMeasureWithUnit::IfcMeasureWithUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcMeasureWithUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMeasureWithUnit::IfcMeasureWithUnit(IfcValue v1_ValueComponent, IfcUnit v2_UnitComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ValueComponent); e->setArgument(1,v2_UnitComponent); entity = e; } +IfcMeasureWithUnit::IfcMeasureWithUnit(IfcValue v1_ValueComponent, IfcUnit v2_UnitComponent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ValueComponent)); e->setArgument(1,(v2_UnitComponent)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMechanicalConcreteMaterialProperties bool IfcMechanicalConcreteMaterialProperties::hasCompressiveStrength() { return !entity->getArgument(6)->isNull(); } IfcPressureMeasure IfcMechanicalConcreteMaterialProperties::CompressiveStrength() { return *entity->getArgument(6); } @@ -8085,7 +8085,7 @@ bool IfcMechanicalConcreteMaterialProperties::is(Type::Enum v) const { return v Type::Enum IfcMechanicalConcreteMaterialProperties::type() const { return Type::IfcMechanicalConcreteMaterialProperties; } Type::Enum IfcMechanicalConcreteMaterialProperties::Class() { return Type::IfcMechanicalConcreteMaterialProperties; } IfcMechanicalConcreteMaterialProperties::IfcMechanicalConcreteMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcMechanicalConcreteMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMechanicalConcreteMaterialProperties::IfcMechanicalConcreteMaterialProperties(IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient, IfcPressureMeasure v7_CompressiveStrength, IfcPositiveLengthMeasure v8_MaxAggregateSize, IfcText v9_AdmixturesDescription, IfcText v10_Workability, IfcNormalisedRatioMeasure v11_ProtectivePoreRatio, IfcText v12_WaterImpermeability) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_DynamicViscosity); e->setArgument(2,v3_YoungModulus); e->setArgument(3,v4_ShearModulus); e->setArgument(4,v5_PoissonRatio); e->setArgument(5,v6_ThermalExpansionCoefficient); e->setArgument(6,v7_CompressiveStrength); e->setArgument(7,v8_MaxAggregateSize); e->setArgument(8,v9_AdmixturesDescription); e->setArgument(9,v10_Workability); e->setArgument(10,v11_ProtectivePoreRatio); e->setArgument(11,v12_WaterImpermeability); entity = e; } +IfcMechanicalConcreteMaterialProperties::IfcMechanicalConcreteMaterialProperties(IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient, optional v7_CompressiveStrength, optional v8_MaxAggregateSize, optional v9_AdmixturesDescription, optional v10_Workability, optional v11_ProtectivePoreRatio, optional v12_WaterImpermeability) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_DynamicViscosity) { e->setArgument(1,(*v2_DynamicViscosity)); } else { e->setArgument(1); } ; if (v3_YoungModulus) { e->setArgument(2,(*v3_YoungModulus)); } else { e->setArgument(2); } ; if (v4_ShearModulus) { e->setArgument(3,(*v4_ShearModulus)); } else { e->setArgument(3); } ; if (v5_PoissonRatio) { e->setArgument(4,(*v5_PoissonRatio)); } else { e->setArgument(4); } ; if (v6_ThermalExpansionCoefficient) { e->setArgument(5,(*v6_ThermalExpansionCoefficient)); } else { e->setArgument(5); } ; if (v7_CompressiveStrength) { e->setArgument(6,(*v7_CompressiveStrength)); } else { e->setArgument(6); } ; if (v8_MaxAggregateSize) { e->setArgument(7,(*v8_MaxAggregateSize)); } else { e->setArgument(7); } ; if (v9_AdmixturesDescription) { e->setArgument(8,(*v9_AdmixturesDescription)); } else { e->setArgument(8); } ; if (v10_Workability) { e->setArgument(9,(*v10_Workability)); } else { e->setArgument(9); } ; if (v11_ProtectivePoreRatio) { e->setArgument(10,(*v11_ProtectivePoreRatio)); } else { e->setArgument(10); } ; if (v12_WaterImpermeability) { e->setArgument(11,(*v12_WaterImpermeability)); } else { e->setArgument(11); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMechanicalFastener bool IfcMechanicalFastener::hasNominalDiameter() { return !entity->getArgument(8)->isNull(); } IfcPositiveLengthMeasure IfcMechanicalFastener::NominalDiameter() { return *entity->getArgument(8); } @@ -8097,13 +8097,13 @@ bool IfcMechanicalFastener::is(Type::Enum v) const { return v == Type::IfcMechan Type::Enum IfcMechanicalFastener::type() const { return Type::IfcMechanicalFastener; } Type::Enum IfcMechanicalFastener::Class() { return Type::IfcMechanicalFastener; } IfcMechanicalFastener::IfcMechanicalFastener(IfcAbstractEntityPtr e) { if (!is(Type::IfcMechanicalFastener)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMechanicalFastener::IfcMechanicalFastener(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_NominalDiameter, IfcPositiveLengthMeasure v10_NominalLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_NominalDiameter); e->setArgument(9,v10_NominalLength); entity = e; } +IfcMechanicalFastener::IfcMechanicalFastener(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_NominalDiameter, optional v10_NominalLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_NominalDiameter) { e->setArgument(8,(*v9_NominalDiameter)); } else { e->setArgument(8); } ; if (v10_NominalLength) { e->setArgument(9,(*v10_NominalLength)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMechanicalFastenerType bool IfcMechanicalFastenerType::is(Type::Enum v) const { return v == Type::IfcMechanicalFastenerType || IfcFastenerType::is(v); } Type::Enum IfcMechanicalFastenerType::type() const { return Type::IfcMechanicalFastenerType; } Type::Enum IfcMechanicalFastenerType::Class() { return Type::IfcMechanicalFastenerType; } IfcMechanicalFastenerType::IfcMechanicalFastenerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcMechanicalFastenerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMechanicalFastenerType::IfcMechanicalFastenerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcMechanicalFastenerType::IfcMechanicalFastenerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMechanicalMaterialProperties bool IfcMechanicalMaterialProperties::hasDynamicViscosity() { return !entity->getArgument(1)->isNull(); } IfcDynamicViscosityMeasure IfcMechanicalMaterialProperties::DynamicViscosity() { return *entity->getArgument(1); } @@ -8124,7 +8124,7 @@ bool IfcMechanicalMaterialProperties::is(Type::Enum v) const { return v == Type: Type::Enum IfcMechanicalMaterialProperties::type() const { return Type::IfcMechanicalMaterialProperties; } Type::Enum IfcMechanicalMaterialProperties::Class() { return Type::IfcMechanicalMaterialProperties; } IfcMechanicalMaterialProperties::IfcMechanicalMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcMechanicalMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMechanicalMaterialProperties::IfcMechanicalMaterialProperties(IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_DynamicViscosity); e->setArgument(2,v3_YoungModulus); e->setArgument(3,v4_ShearModulus); e->setArgument(4,v5_PoissonRatio); e->setArgument(5,v6_ThermalExpansionCoefficient); entity = e; } +IfcMechanicalMaterialProperties::IfcMechanicalMaterialProperties(IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_DynamicViscosity) { e->setArgument(1,(*v2_DynamicViscosity)); } else { e->setArgument(1); } ; if (v3_YoungModulus) { e->setArgument(2,(*v3_YoungModulus)); } else { e->setArgument(2); } ; if (v4_ShearModulus) { e->setArgument(3,(*v4_ShearModulus)); } else { e->setArgument(3); } ; if (v5_PoissonRatio) { e->setArgument(4,(*v5_PoissonRatio)); } else { e->setArgument(4); } ; if (v6_ThermalExpansionCoefficient) { e->setArgument(5,(*v6_ThermalExpansionCoefficient)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMechanicalSteelMaterialProperties bool IfcMechanicalSteelMaterialProperties::hasYieldStress() { return !entity->getArgument(6)->isNull(); } IfcPressureMeasure IfcMechanicalSteelMaterialProperties::YieldStress() { return *entity->getArgument(6); } @@ -8151,13 +8151,13 @@ bool IfcMechanicalSteelMaterialProperties::is(Type::Enum v) const { return v == Type::Enum IfcMechanicalSteelMaterialProperties::type() const { return Type::IfcMechanicalSteelMaterialProperties; } Type::Enum IfcMechanicalSteelMaterialProperties::Class() { return Type::IfcMechanicalSteelMaterialProperties; } IfcMechanicalSteelMaterialProperties::IfcMechanicalSteelMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcMechanicalSteelMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMechanicalSteelMaterialProperties::IfcMechanicalSteelMaterialProperties(IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient, IfcPressureMeasure v7_YieldStress, IfcPressureMeasure v8_UltimateStress, IfcPositiveRatioMeasure v9_UltimateStrain, IfcModulusOfElasticityMeasure v10_HardeningModule, IfcPressureMeasure v11_ProportionalStress, IfcPositiveRatioMeasure v12_PlasticStrain, SHARED_PTR< IfcTemplatedEntityList > v13_Relaxations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_DynamicViscosity); e->setArgument(2,v3_YoungModulus); e->setArgument(3,v4_ShearModulus); e->setArgument(4,v5_PoissonRatio); e->setArgument(5,v6_ThermalExpansionCoefficient); e->setArgument(6,v7_YieldStress); e->setArgument(7,v8_UltimateStress); e->setArgument(8,v9_UltimateStrain); e->setArgument(9,v10_HardeningModule); e->setArgument(10,v11_ProportionalStress); e->setArgument(11,v12_PlasticStrain); e->setArgument(12,v13_Relaxations->generalize()); entity = e; } +IfcMechanicalSteelMaterialProperties::IfcMechanicalSteelMaterialProperties(IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient, optional v7_YieldStress, optional v8_UltimateStress, optional v9_UltimateStrain, optional v10_HardeningModule, optional v11_ProportionalStress, optional v12_PlasticStrain, optional >> v13_Relaxations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_DynamicViscosity) { e->setArgument(1,(*v2_DynamicViscosity)); } else { e->setArgument(1); } ; if (v3_YoungModulus) { e->setArgument(2,(*v3_YoungModulus)); } else { e->setArgument(2); } ; if (v4_ShearModulus) { e->setArgument(3,(*v4_ShearModulus)); } else { e->setArgument(3); } ; if (v5_PoissonRatio) { e->setArgument(4,(*v5_PoissonRatio)); } else { e->setArgument(4); } ; if (v6_ThermalExpansionCoefficient) { e->setArgument(5,(*v6_ThermalExpansionCoefficient)); } else { e->setArgument(5); } ; if (v7_YieldStress) { e->setArgument(6,(*v7_YieldStress)); } else { e->setArgument(6); } ; if (v8_UltimateStress) { e->setArgument(7,(*v8_UltimateStress)); } else { e->setArgument(7); } ; if (v9_UltimateStrain) { e->setArgument(8,(*v9_UltimateStrain)); } else { e->setArgument(8); } ; if (v10_HardeningModule) { e->setArgument(9,(*v10_HardeningModule)); } else { e->setArgument(9); } ; if (v11_ProportionalStress) { e->setArgument(10,(*v11_ProportionalStress)); } else { e->setArgument(10); } ; if (v12_PlasticStrain) { e->setArgument(11,(*v12_PlasticStrain)); } else { e->setArgument(11); } ; if (v13_Relaxations) { e->setArgument(12,(*v13_Relaxations)->generalize()); } else { e->setArgument(12); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMember bool IfcMember::is(Type::Enum v) const { return v == Type::IfcMember || IfcBuildingElement::is(v); } Type::Enum IfcMember::type() const { return Type::IfcMember; } Type::Enum IfcMember::Class() { return Type::IfcMember; } IfcMember::IfcMember(IfcAbstractEntityPtr e) { if (!is(Type::IfcMember)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMember::IfcMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcMember::IfcMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMemberType IfcMemberTypeEnum::IfcMemberTypeEnum IfcMemberType::PredefinedType() { return IfcMemberTypeEnum::FromString(*entity->getArgument(9)); } void IfcMemberType::setPredefinedType(IfcMemberTypeEnum::IfcMemberTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcMemberTypeEnum::ToString(v)); } @@ -8165,7 +8165,7 @@ bool IfcMemberType::is(Type::Enum v) const { return v == Type::IfcMemberType || Type::Enum IfcMemberType::type() const { return Type::IfcMemberType; } Type::Enum IfcMemberType::Class() { return Type::IfcMemberType; } IfcMemberType::IfcMemberType(IfcAbstractEntityPtr e) { if (!is(Type::IfcMemberType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMemberType::IfcMemberType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcMemberTypeEnum::IfcMemberTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcMemberType::IfcMemberType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcMemberTypeEnum::IfcMemberTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcMemberTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMetric IfcBenchmarkEnum::IfcBenchmarkEnum IfcMetric::Benchmark() { return IfcBenchmarkEnum::FromString(*entity->getArgument(7)); } void IfcMetric::setBenchmark(IfcBenchmarkEnum::IfcBenchmarkEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v,IfcBenchmarkEnum::ToString(v)); } @@ -8178,7 +8178,7 @@ bool IfcMetric::is(Type::Enum v) const { return v == Type::IfcMetric || IfcConst Type::Enum IfcMetric::type() const { return Type::IfcMetric; } Type::Enum IfcMetric::Class() { return Type::IfcMetric; } IfcMetric::IfcMetric(IfcAbstractEntityPtr e) { if (!is(Type::IfcMetric)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMetric::IfcMetric(IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade, IfcBenchmarkEnum::IfcBenchmarkEnum v8_Benchmark, IfcLabel v9_ValueSource, IfcMetricValueSelect v10_DataValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_ConstraintGrade); e->setArgument(3,v4_ConstraintSource); e->setArgument(4,v5_CreatingActor); e->setArgument(5,v6_CreationTime); e->setArgument(6,v7_UserDefinedGrade); e->setArgument(7,v8_Benchmark); e->setArgument(8,v9_ValueSource); e->setArgument(9,v10_DataValue); entity = e; } +IfcMetric::IfcMetric(IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade, IfcBenchmarkEnum::IfcBenchmarkEnum v8_Benchmark, optional v9_ValueSource, IfcMetricValueSelect v10_DataValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,v3_ConstraintGrade,IfcConstraintEnum::ToString(v3_ConstraintGrade)); if (v4_ConstraintSource) { e->setArgument(3,(*v4_ConstraintSource)); } else { e->setArgument(3); } ; if (v5_CreatingActor) { e->setArgument(4,(*v5_CreatingActor)); } else { e->setArgument(4); } ; if (v6_CreationTime) { e->setArgument(5,(*v6_CreationTime)); } else { e->setArgument(5); } ; if (v7_UserDefinedGrade) { e->setArgument(6,(*v7_UserDefinedGrade)); } else { e->setArgument(6); } ; e->setArgument(7,v8_Benchmark,IfcBenchmarkEnum::ToString(v8_Benchmark)); if (v9_ValueSource) { e->setArgument(8,(*v9_ValueSource)); } else { e->setArgument(8); } ; e->setArgument(9,(v10_DataValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMonetaryUnit IfcCurrencyEnum::IfcCurrencyEnum IfcMonetaryUnit::Currency() { return IfcCurrencyEnum::FromString(*entity->getArgument(0)); } void IfcMonetaryUnit::setCurrency(IfcCurrencyEnum::IfcCurrencyEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcCurrencyEnum::ToString(v)); } @@ -8186,7 +8186,7 @@ bool IfcMonetaryUnit::is(Type::Enum v) const { return v == Type::IfcMonetaryUnit Type::Enum IfcMonetaryUnit::type() const { return Type::IfcMonetaryUnit; } Type::Enum IfcMonetaryUnit::Class() { return Type::IfcMonetaryUnit; } IfcMonetaryUnit::IfcMonetaryUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcMonetaryUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMonetaryUnit::IfcMonetaryUnit(IfcCurrencyEnum::IfcCurrencyEnum v1_Currency) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Currency); entity = e; } +IfcMonetaryUnit::IfcMonetaryUnit(IfcCurrencyEnum::IfcCurrencyEnum v1_Currency) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Currency,IfcCurrencyEnum::ToString(v1_Currency)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMotorConnectionType IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum IfcMotorConnectionType::PredefinedType() { return IfcMotorConnectionTypeEnum::FromString(*entity->getArgument(9)); } void IfcMotorConnectionType::setPredefinedType(IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcMotorConnectionTypeEnum::ToString(v)); } @@ -8194,7 +8194,7 @@ bool IfcMotorConnectionType::is(Type::Enum v) const { return v == Type::IfcMotor Type::Enum IfcMotorConnectionType::type() const { return Type::IfcMotorConnectionType; } Type::Enum IfcMotorConnectionType::Class() { return Type::IfcMotorConnectionType; } IfcMotorConnectionType::IfcMotorConnectionType(IfcAbstractEntityPtr e) { if (!is(Type::IfcMotorConnectionType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMotorConnectionType::IfcMotorConnectionType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcMotorConnectionType::IfcMotorConnectionType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcMotorConnectionTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcMove IfcSpatialStructureElement* IfcMove::MoveFrom() { return reinterpret_pointer_cast(*entity->getArgument(10)); } void IfcMove::setMoveFrom(IfcSpatialStructureElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(10,v); } @@ -8207,7 +8207,7 @@ bool IfcMove::is(Type::Enum v) const { return v == Type::IfcMove || IfcTask::is( Type::Enum IfcMove::type() const { return Type::IfcMove; } Type::Enum IfcMove::Class() { return Type::IfcMove; } IfcMove::IfcMove(IfcAbstractEntityPtr e) { if (!is(Type::IfcMove)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcMove::IfcMove(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority, IfcSpatialStructureElement* v11_MoveFrom, IfcSpatialStructureElement* v12_MoveTo, std::vector /*[1:?]*/ v13_PunchList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TaskId); e->setArgument(6,v7_Status); e->setArgument(7,v8_WorkMethod); e->setArgument(8,v9_IsMilestone); e->setArgument(9,v10_Priority); e->setArgument(10,v11_MoveFrom); e->setArgument(11,v12_MoveTo); e->setArgument(12,v13_PunchList); entity = e; } +IfcMove::IfcMove(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority, IfcSpatialStructureElement* v11_MoveFrom, IfcSpatialStructureElement* v12_MoveTo, optional /*[1:?]*/> v13_PunchList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_TaskId)); if (v7_Status) { e->setArgument(6,(*v7_Status)); } else { e->setArgument(6); } ; if (v8_WorkMethod) { e->setArgument(7,(*v8_WorkMethod)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_IsMilestone)); if (v10_Priority) { e->setArgument(9,(*v10_Priority)); } else { e->setArgument(9); } ; e->setArgument(10,(v11_MoveFrom)); e->setArgument(11,(v12_MoveTo)); if (v13_PunchList) { e->setArgument(12,(*v13_PunchList)); } else { e->setArgument(12); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcNamedUnit IfcDimensionalExponents* IfcNamedUnit::Dimensions() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcNamedUnit::setDimensions(IfcDimensionalExponents* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8217,7 +8217,7 @@ bool IfcNamedUnit::is(Type::Enum v) const { return v == Type::IfcNamedUnit; } Type::Enum IfcNamedUnit::type() const { return Type::IfcNamedUnit; } Type::Enum IfcNamedUnit::Class() { return Type::IfcNamedUnit; } IfcNamedUnit::IfcNamedUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcNamedUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcNamedUnit::IfcNamedUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Dimensions); e->setArgument(1,v2_UnitType); entity = e; } +IfcNamedUnit::IfcNamedUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Dimensions)); e->setArgument(1,v2_UnitType,IfcUnitEnum::ToString(v2_UnitType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcObject bool IfcObject::hasObjectType() { return !entity->getArgument(4)->isNull(); } IfcLabel IfcObject::ObjectType() { return *entity->getArgument(4); } @@ -8227,7 +8227,7 @@ bool IfcObject::is(Type::Enum v) const { return v == Type::IfcObject || IfcObjec Type::Enum IfcObject::type() const { return Type::IfcObject; } Type::Enum IfcObject::Class() { return Type::IfcObject; } IfcObject::IfcObject(IfcAbstractEntityPtr e) { if (!is(Type::IfcObject)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcObject::IfcObject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcObject::IfcObject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcObjectDefinition IfcRelAssigns::list IfcObjectDefinition::HasAssignments() { RETURN_INVERSE(IfcRelAssigns) } IfcRelDecomposes::list IfcObjectDefinition::IsDecomposedBy() { RETURN_INVERSE(IfcRelDecomposes) } @@ -8237,7 +8237,7 @@ bool IfcObjectDefinition::is(Type::Enum v) const { return v == Type::IfcObjectDe Type::Enum IfcObjectDefinition::type() const { return Type::IfcObjectDefinition; } Type::Enum IfcObjectDefinition::Class() { return Type::IfcObjectDefinition; } IfcObjectDefinition::IfcObjectDefinition(IfcAbstractEntityPtr e) { if (!is(Type::IfcObjectDefinition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcObjectDefinition::IfcObjectDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcObjectDefinition::IfcObjectDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcObjectPlacement IfcProduct::list IfcObjectPlacement::PlacesObject() { RETURN_INVERSE(IfcProduct) } IfcLocalPlacement::list IfcObjectPlacement::ReferencedByPlacements() { RETURN_INVERSE(IfcLocalPlacement) } @@ -8261,7 +8261,7 @@ bool IfcObjective::is(Type::Enum v) const { return v == Type::IfcObjective || If Type::Enum IfcObjective::type() const { return Type::IfcObjective; } Type::Enum IfcObjective::Class() { return Type::IfcObjective; } IfcObjective::IfcObjective(IfcAbstractEntityPtr e) { if (!is(Type::IfcObjective)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcObjective::IfcObjective(IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade, IfcMetric* v8_BenchmarkValues, IfcMetric* v9_ResultValues, IfcObjectiveEnum::IfcObjectiveEnum v10_ObjectiveQualifier, IfcLabel v11_UserDefinedQualifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_ConstraintGrade); e->setArgument(3,v4_ConstraintSource); e->setArgument(4,v5_CreatingActor); e->setArgument(5,v6_CreationTime); e->setArgument(6,v7_UserDefinedGrade); e->setArgument(7,v8_BenchmarkValues); e->setArgument(8,v9_ResultValues); e->setArgument(9,v10_ObjectiveQualifier); e->setArgument(10,v11_UserDefinedQualifier); entity = e; } +IfcObjective::IfcObjective(IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade, IfcMetric* v8_BenchmarkValues, IfcMetric* v9_ResultValues, IfcObjectiveEnum::IfcObjectiveEnum v10_ObjectiveQualifier, optional v11_UserDefinedQualifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,v3_ConstraintGrade,IfcConstraintEnum::ToString(v3_ConstraintGrade)); if (v4_ConstraintSource) { e->setArgument(3,(*v4_ConstraintSource)); } else { e->setArgument(3); } ; if (v5_CreatingActor) { e->setArgument(4,(*v5_CreatingActor)); } else { e->setArgument(4); } ; if (v6_CreationTime) { e->setArgument(5,(*v6_CreationTime)); } else { e->setArgument(5); } ; if (v7_UserDefinedGrade) { e->setArgument(6,(*v7_UserDefinedGrade)); } else { e->setArgument(6); } ; e->setArgument(7,(v8_BenchmarkValues)); e->setArgument(8,(v9_ResultValues)); e->setArgument(9,v10_ObjectiveQualifier,IfcObjectiveEnum::ToString(v10_ObjectiveQualifier)); if (v11_UserDefinedQualifier) { e->setArgument(10,(*v11_UserDefinedQualifier)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOccupant IfcOccupantTypeEnum::IfcOccupantTypeEnum IfcOccupant::PredefinedType() { return IfcOccupantTypeEnum::FromString(*entity->getArgument(6)); } void IfcOccupant::setPredefinedType(IfcOccupantTypeEnum::IfcOccupantTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v,IfcOccupantTypeEnum::ToString(v)); } @@ -8269,7 +8269,7 @@ bool IfcOccupant::is(Type::Enum v) const { return v == Type::IfcOccupant || IfcA Type::Enum IfcOccupant::type() const { return Type::IfcOccupant; } Type::Enum IfcOccupant::Class() { return Type::IfcOccupant; } IfcOccupant::IfcOccupant(IfcAbstractEntityPtr e) { if (!is(Type::IfcOccupant)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOccupant::IfcOccupant(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_TheActor, IfcOccupantTypeEnum::IfcOccupantTypeEnum v7_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TheActor); e->setArgument(6,v7_PredefinedType); entity = e; } +IfcOccupant::IfcOccupant(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcActorSelect v6_TheActor, IfcOccupantTypeEnum::IfcOccupantTypeEnum v7_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_TheActor)); e->setArgument(6,v7_PredefinedType,IfcOccupantTypeEnum::ToString(v7_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOffsetCurve2D IfcCurve* IfcOffsetCurve2D::BasisCurve() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcOffsetCurve2D::setBasisCurve(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8281,7 +8281,7 @@ bool IfcOffsetCurve2D::is(Type::Enum v) const { return v == Type::IfcOffsetCurve Type::Enum IfcOffsetCurve2D::type() const { return Type::IfcOffsetCurve2D; } Type::Enum IfcOffsetCurve2D::Class() { return Type::IfcOffsetCurve2D; } IfcOffsetCurve2D::IfcOffsetCurve2D(IfcAbstractEntityPtr e) { if (!is(Type::IfcOffsetCurve2D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOffsetCurve2D::IfcOffsetCurve2D(IfcCurve* v1_BasisCurve, IfcLengthMeasure v2_Distance, bool v3_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisCurve); e->setArgument(1,v2_Distance); e->setArgument(2,v3_SelfIntersect); entity = e; } +IfcOffsetCurve2D::IfcOffsetCurve2D(IfcCurve* v1_BasisCurve, IfcLengthMeasure v2_Distance, bool v3_SelfIntersect) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisCurve)); e->setArgument(1,(v2_Distance)); e->setArgument(2,(v3_SelfIntersect)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOffsetCurve3D IfcCurve* IfcOffsetCurve3D::BasisCurve() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcOffsetCurve3D::setBasisCurve(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8295,7 +8295,7 @@ bool IfcOffsetCurve3D::is(Type::Enum v) const { return v == Type::IfcOffsetCurve Type::Enum IfcOffsetCurve3D::type() const { return Type::IfcOffsetCurve3D; } Type::Enum IfcOffsetCurve3D::Class() { return Type::IfcOffsetCurve3D; } IfcOffsetCurve3D::IfcOffsetCurve3D(IfcAbstractEntityPtr e) { if (!is(Type::IfcOffsetCurve3D)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOffsetCurve3D::IfcOffsetCurve3D(IfcCurve* v1_BasisCurve, IfcLengthMeasure v2_Distance, bool v3_SelfIntersect, IfcDirection* v4_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisCurve); e->setArgument(1,v2_Distance); e->setArgument(2,v3_SelfIntersect); e->setArgument(3,v4_RefDirection); entity = e; } +IfcOffsetCurve3D::IfcOffsetCurve3D(IfcCurve* v1_BasisCurve, IfcLengthMeasure v2_Distance, bool v3_SelfIntersect, IfcDirection* v4_RefDirection) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisCurve)); e->setArgument(1,(v2_Distance)); e->setArgument(2,(v3_SelfIntersect)); e->setArgument(3,(v4_RefDirection)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOneDirectionRepeatFactor IfcVector* IfcOneDirectionRepeatFactor::RepeatFactor() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcOneDirectionRepeatFactor::setRepeatFactor(IfcVector* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8303,20 +8303,20 @@ bool IfcOneDirectionRepeatFactor::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcOneDirectionRepeatFactor::type() const { return Type::IfcOneDirectionRepeatFactor; } Type::Enum IfcOneDirectionRepeatFactor::Class() { return Type::IfcOneDirectionRepeatFactor; } IfcOneDirectionRepeatFactor::IfcOneDirectionRepeatFactor(IfcAbstractEntityPtr e) { if (!is(Type::IfcOneDirectionRepeatFactor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOneDirectionRepeatFactor::IfcOneDirectionRepeatFactor(IfcVector* v1_RepeatFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatFactor); entity = e; } +IfcOneDirectionRepeatFactor::IfcOneDirectionRepeatFactor(IfcVector* v1_RepeatFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatFactor)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOpenShell bool IfcOpenShell::is(Type::Enum v) const { return v == Type::IfcOpenShell || IfcConnectedFaceSet::is(v); } Type::Enum IfcOpenShell::type() const { return Type::IfcOpenShell; } Type::Enum IfcOpenShell::Class() { return Type::IfcOpenShell; } IfcOpenShell::IfcOpenShell(IfcAbstractEntityPtr e) { if (!is(Type::IfcOpenShell)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOpenShell::IfcOpenShell(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_CfsFaces->generalize()); entity = e; } +IfcOpenShell::IfcOpenShell(SHARED_PTR< IfcTemplatedEntityList > v1_CfsFaces) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_CfsFaces)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOpeningElement IfcRelFillsElement::list IfcOpeningElement::HasFillings() { RETURN_INVERSE(IfcRelFillsElement) } bool IfcOpeningElement::is(Type::Enum v) const { return v == Type::IfcOpeningElement || IfcFeatureElementSubtraction::is(v); } Type::Enum IfcOpeningElement::type() const { return Type::IfcOpeningElement; } Type::Enum IfcOpeningElement::Class() { return Type::IfcOpeningElement; } IfcOpeningElement::IfcOpeningElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcOpeningElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOpeningElement::IfcOpeningElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcOpeningElement::IfcOpeningElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOpticalMaterialProperties bool IfcOpticalMaterialProperties::hasVisibleTransmittance() { return !entity->getArgument(1)->isNull(); } IfcPositiveRatioMeasure IfcOpticalMaterialProperties::VisibleTransmittance() { return *entity->getArgument(1); } @@ -8349,7 +8349,7 @@ bool IfcOpticalMaterialProperties::is(Type::Enum v) const { return v == Type::If Type::Enum IfcOpticalMaterialProperties::type() const { return Type::IfcOpticalMaterialProperties; } Type::Enum IfcOpticalMaterialProperties::Class() { return Type::IfcOpticalMaterialProperties; } IfcOpticalMaterialProperties::IfcOpticalMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcOpticalMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOpticalMaterialProperties::IfcOpticalMaterialProperties(IfcMaterial* v1_Material, IfcPositiveRatioMeasure v2_VisibleTransmittance, IfcPositiveRatioMeasure v3_SolarTransmittance, IfcPositiveRatioMeasure v4_ThermalIrTransmittance, IfcPositiveRatioMeasure v5_ThermalIrEmissivityBack, IfcPositiveRatioMeasure v6_ThermalIrEmissivityFront, IfcPositiveRatioMeasure v7_VisibleReflectanceBack, IfcPositiveRatioMeasure v8_VisibleReflectanceFront, IfcPositiveRatioMeasure v9_SolarReflectanceFront, IfcPositiveRatioMeasure v10_SolarReflectanceBack) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_VisibleTransmittance); e->setArgument(2,v3_SolarTransmittance); e->setArgument(3,v4_ThermalIrTransmittance); e->setArgument(4,v5_ThermalIrEmissivityBack); e->setArgument(5,v6_ThermalIrEmissivityFront); e->setArgument(6,v7_VisibleReflectanceBack); e->setArgument(7,v8_VisibleReflectanceFront); e->setArgument(8,v9_SolarReflectanceFront); e->setArgument(9,v10_SolarReflectanceBack); entity = e; } +IfcOpticalMaterialProperties::IfcOpticalMaterialProperties(IfcMaterial* v1_Material, optional v2_VisibleTransmittance, optional v3_SolarTransmittance, optional v4_ThermalIrTransmittance, optional v5_ThermalIrEmissivityBack, optional v6_ThermalIrEmissivityFront, optional v7_VisibleReflectanceBack, optional v8_VisibleReflectanceFront, optional v9_SolarReflectanceFront, optional v10_SolarReflectanceBack) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_VisibleTransmittance) { e->setArgument(1,(*v2_VisibleTransmittance)); } else { e->setArgument(1); } ; if (v3_SolarTransmittance) { e->setArgument(2,(*v3_SolarTransmittance)); } else { e->setArgument(2); } ; if (v4_ThermalIrTransmittance) { e->setArgument(3,(*v4_ThermalIrTransmittance)); } else { e->setArgument(3); } ; if (v5_ThermalIrEmissivityBack) { e->setArgument(4,(*v5_ThermalIrEmissivityBack)); } else { e->setArgument(4); } ; if (v6_ThermalIrEmissivityFront) { e->setArgument(5,(*v6_ThermalIrEmissivityFront)); } else { e->setArgument(5); } ; if (v7_VisibleReflectanceBack) { e->setArgument(6,(*v7_VisibleReflectanceBack)); } else { e->setArgument(6); } ; if (v8_VisibleReflectanceFront) { e->setArgument(7,(*v8_VisibleReflectanceFront)); } else { e->setArgument(7); } ; if (v9_SolarReflectanceFront) { e->setArgument(8,(*v9_SolarReflectanceFront)); } else { e->setArgument(8); } ; if (v10_SolarReflectanceBack) { e->setArgument(9,(*v10_SolarReflectanceBack)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOrderAction IfcIdentifier IfcOrderAction::ActionID() { return *entity->getArgument(10); } void IfcOrderAction::setActionID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(10,v); } @@ -8357,7 +8357,7 @@ bool IfcOrderAction::is(Type::Enum v) const { return v == Type::IfcOrderAction | Type::Enum IfcOrderAction::type() const { return Type::IfcOrderAction; } Type::Enum IfcOrderAction::Class() { return Type::IfcOrderAction; } IfcOrderAction::IfcOrderAction(IfcAbstractEntityPtr e) { if (!is(Type::IfcOrderAction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOrderAction::IfcOrderAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority, IfcIdentifier v11_ActionID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TaskId); e->setArgument(6,v7_Status); e->setArgument(7,v8_WorkMethod); e->setArgument(8,v9_IsMilestone); e->setArgument(9,v10_Priority); e->setArgument(10,v11_ActionID); entity = e; } +IfcOrderAction::IfcOrderAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority, IfcIdentifier v11_ActionID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_TaskId)); if (v7_Status) { e->setArgument(6,(*v7_Status)); } else { e->setArgument(6); } ; if (v8_WorkMethod) { e->setArgument(7,(*v8_WorkMethod)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_IsMilestone)); if (v10_Priority) { e->setArgument(9,(*v10_Priority)); } else { e->setArgument(9); } ; e->setArgument(10,(v11_ActionID)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOrganization bool IfcOrganization::hasId() { return !entity->getArgument(0)->isNull(); } IfcIdentifier IfcOrganization::Id() { return *entity->getArgument(0); } @@ -8380,7 +8380,7 @@ bool IfcOrganization::is(Type::Enum v) const { return v == Type::IfcOrganization Type::Enum IfcOrganization::type() const { return Type::IfcOrganization; } Type::Enum IfcOrganization::Class() { return Type::IfcOrganization; } IfcOrganization::IfcOrganization(IfcAbstractEntityPtr e) { if (!is(Type::IfcOrganization)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOrganization::IfcOrganization(IfcIdentifier v1_Id, IfcLabel v2_Name, IfcText v3_Description, SHARED_PTR< IfcTemplatedEntityList > v4_Roles, SHARED_PTR< IfcTemplatedEntityList > v5_Addresses) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Id); e->setArgument(1,v2_Name); e->setArgument(2,v3_Description); e->setArgument(3,v4_Roles->generalize()); e->setArgument(4,v5_Addresses->generalize()); entity = e; } +IfcOrganization::IfcOrganization(optional v1_Id, IfcLabel v2_Name, optional v3_Description, optional >> v4_Roles, optional >> v5_Addresses) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Id) { e->setArgument(0,(*v1_Id)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_Name)); if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; if (v4_Roles) { e->setArgument(3,(*v4_Roles)->generalize()); } else { e->setArgument(3); } ; if (v5_Addresses) { e->setArgument(4,(*v5_Addresses)->generalize()); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOrganizationRelationship IfcLabel IfcOrganizationRelationship::Name() { return *entity->getArgument(0); } void IfcOrganizationRelationship::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8395,7 +8395,7 @@ bool IfcOrganizationRelationship::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcOrganizationRelationship::type() const { return Type::IfcOrganizationRelationship; } Type::Enum IfcOrganizationRelationship::Class() { return Type::IfcOrganizationRelationship; } IfcOrganizationRelationship::IfcOrganizationRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcOrganizationRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOrganizationRelationship::IfcOrganizationRelationship(IfcLabel v1_Name, IfcText v2_Description, IfcOrganization* v3_RelatingOrganization, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedOrganizations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_RelatingOrganization); e->setArgument(3,v4_RelatedOrganizations->generalize()); entity = e; } +IfcOrganizationRelationship::IfcOrganizationRelationship(IfcLabel v1_Name, optional v2_Description, IfcOrganization* v3_RelatingOrganization, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedOrganizations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_RelatingOrganization)); e->setArgument(3,(v4_RelatedOrganizations)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOrientedEdge IfcEdge* IfcOrientedEdge::EdgeElement() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcOrientedEdge::setEdgeElement(IfcEdge* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -8405,7 +8405,7 @@ bool IfcOrientedEdge::is(Type::Enum v) const { return v == Type::IfcOrientedEdge Type::Enum IfcOrientedEdge::type() const { return Type::IfcOrientedEdge; } Type::Enum IfcOrientedEdge::Class() { return Type::IfcOrientedEdge; } IfcOrientedEdge::IfcOrientedEdge(IfcAbstractEntityPtr e) { if (!is(Type::IfcOrientedEdge)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOrientedEdge::IfcOrientedEdge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcEdge* v3_EdgeElement, bool v4_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeStart); e->setArgument(1,v2_EdgeEnd); e->setArgument(2,v3_EdgeElement); e->setArgument(3,v4_Orientation); entity = e; } +IfcOrientedEdge::IfcOrientedEdge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcEdge* v3_EdgeElement, bool v4_Orientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeStart)); e->setArgument(1,(v2_EdgeEnd)); e->setArgument(2,(v3_EdgeElement)); e->setArgument(3,(v4_Orientation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOutletType IfcOutletTypeEnum::IfcOutletTypeEnum IfcOutletType::PredefinedType() { return IfcOutletTypeEnum::FromString(*entity->getArgument(9)); } void IfcOutletType::setPredefinedType(IfcOutletTypeEnum::IfcOutletTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcOutletTypeEnum::ToString(v)); } @@ -8413,7 +8413,7 @@ bool IfcOutletType::is(Type::Enum v) const { return v == Type::IfcOutletType || Type::Enum IfcOutletType::type() const { return Type::IfcOutletType; } Type::Enum IfcOutletType::Class() { return Type::IfcOutletType; } IfcOutletType::IfcOutletType(IfcAbstractEntityPtr e) { if (!is(Type::IfcOutletType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOutletType::IfcOutletType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcOutletTypeEnum::IfcOutletTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcOutletType::IfcOutletType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcOutletTypeEnum::IfcOutletTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcOutletTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcOwnerHistory IfcPersonAndOrganization* IfcOwnerHistory::OwningUser() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcOwnerHistory::setOwningUser(IfcPersonAndOrganization* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8439,7 +8439,7 @@ bool IfcOwnerHistory::is(Type::Enum v) const { return v == Type::IfcOwnerHistory Type::Enum IfcOwnerHistory::type() const { return Type::IfcOwnerHistory; } Type::Enum IfcOwnerHistory::Class() { return Type::IfcOwnerHistory; } IfcOwnerHistory::IfcOwnerHistory(IfcAbstractEntityPtr e) { if (!is(Type::IfcOwnerHistory)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcOwnerHistory::IfcOwnerHistory(IfcPersonAndOrganization* v1_OwningUser, IfcApplication* v2_OwningApplication, IfcStateEnum::IfcStateEnum v3_State, IfcChangeActionEnum::IfcChangeActionEnum v4_ChangeAction, IfcTimeStamp v5_LastModifiedDate, IfcPersonAndOrganization* v6_LastModifyingUser, IfcApplication* v7_LastModifyingApplication, IfcTimeStamp v8_CreationDate) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_OwningUser); e->setArgument(1,v2_OwningApplication); e->setArgument(2,v3_State); e->setArgument(3,v4_ChangeAction); e->setArgument(4,v5_LastModifiedDate); e->setArgument(5,v6_LastModifyingUser); e->setArgument(6,v7_LastModifyingApplication); e->setArgument(7,v8_CreationDate); entity = e; } +IfcOwnerHistory::IfcOwnerHistory(IfcPersonAndOrganization* v1_OwningUser, IfcApplication* v2_OwningApplication, optional v3_State, IfcChangeActionEnum::IfcChangeActionEnum v4_ChangeAction, optional v5_LastModifiedDate, IfcPersonAndOrganization* v6_LastModifyingUser, IfcApplication* v7_LastModifyingApplication, IfcTimeStamp v8_CreationDate) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_OwningUser)); e->setArgument(1,(v2_OwningApplication)); if (v3_State) { e->setArgument(2,*v3_State,IfcStateEnum::ToString(*v3_State)); } else { e->setArgument(2); } ; e->setArgument(3,v4_ChangeAction,IfcChangeActionEnum::ToString(v4_ChangeAction)); if (v5_LastModifiedDate) { e->setArgument(4,(*v5_LastModifiedDate)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_LastModifyingUser)); e->setArgument(6,(v7_LastModifyingApplication)); e->setArgument(7,(v8_CreationDate)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcParameterizedProfileDef IfcAxis2Placement2D* IfcParameterizedProfileDef::Position() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcParameterizedProfileDef::setPosition(IfcAxis2Placement2D* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -8447,7 +8447,7 @@ bool IfcParameterizedProfileDef::is(Type::Enum v) const { return v == Type::IfcP Type::Enum IfcParameterizedProfileDef::type() const { return Type::IfcParameterizedProfileDef; } Type::Enum IfcParameterizedProfileDef::Class() { return Type::IfcParameterizedProfileDef; } IfcParameterizedProfileDef::IfcParameterizedProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcParameterizedProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcParameterizedProfileDef::IfcParameterizedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); entity = e; } +IfcParameterizedProfileDef::IfcParameterizedProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPath SHARED_PTR< IfcTemplatedEntityList > IfcPath::EdgeList() { RETURN_AS_LIST(IfcOrientedEdge,0) } void IfcPath::setEdgeList(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8455,7 +8455,7 @@ bool IfcPath::is(Type::Enum v) const { return v == Type::IfcPath || IfcTopologic Type::Enum IfcPath::type() const { return Type::IfcPath; } Type::Enum IfcPath::Class() { return Type::IfcPath; } IfcPath::IfcPath(IfcAbstractEntityPtr e) { if (!is(Type::IfcPath)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPath::IfcPath(SHARED_PTR< IfcTemplatedEntityList > v1_EdgeList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeList->generalize()); entity = e; } +IfcPath::IfcPath(SHARED_PTR< IfcTemplatedEntityList > v1_EdgeList) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeList)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPerformanceHistory IfcLabel IfcPerformanceHistory::LifeCyclePhase() { return *entity->getArgument(5); } void IfcPerformanceHistory::setLifeCyclePhase(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -8463,7 +8463,7 @@ bool IfcPerformanceHistory::is(Type::Enum v) const { return v == Type::IfcPerfor Type::Enum IfcPerformanceHistory::type() const { return Type::IfcPerformanceHistory; } Type::Enum IfcPerformanceHistory::Class() { return Type::IfcPerformanceHistory; } IfcPerformanceHistory::IfcPerformanceHistory(IfcAbstractEntityPtr e) { if (!is(Type::IfcPerformanceHistory)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPerformanceHistory::IfcPerformanceHistory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLabel v6_LifeCyclePhase) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_LifeCyclePhase); entity = e; } +IfcPerformanceHistory::IfcPerformanceHistory(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcLabel v6_LifeCyclePhase) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_LifeCyclePhase)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPermeableCoveringProperties IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum IfcPermeableCoveringProperties::OperationType() { return IfcPermeableCoveringOperationEnum::FromString(*entity->getArgument(4)); } void IfcPermeableCoveringProperties::setOperationType(IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v,IfcPermeableCoveringOperationEnum::ToString(v)); } @@ -8482,7 +8482,7 @@ bool IfcPermeableCoveringProperties::is(Type::Enum v) const { return v == Type:: Type::Enum IfcPermeableCoveringProperties::type() const { return Type::IfcPermeableCoveringProperties; } Type::Enum IfcPermeableCoveringProperties::Class() { return Type::IfcPermeableCoveringProperties; } IfcPermeableCoveringProperties::IfcPermeableCoveringProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcPermeableCoveringProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPermeableCoveringProperties::IfcPermeableCoveringProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, IfcPositiveLengthMeasure v7_FrameDepth, IfcPositiveLengthMeasure v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_OperationType); e->setArgument(5,v6_PanelPosition); e->setArgument(6,v7_FrameDepth); e->setArgument(7,v8_FrameThickness); e->setArgument(8,v9_ShapeAspectStyle); entity = e; } +IfcPermeableCoveringProperties::IfcPermeableCoveringProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, optional v7_FrameDepth, optional v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,v5_OperationType,IfcPermeableCoveringOperationEnum::ToString(v5_OperationType)); e->setArgument(5,v6_PanelPosition,IfcWindowPanelPositionEnum::ToString(v6_PanelPosition)); if (v7_FrameDepth) { e->setArgument(6,(*v7_FrameDepth)); } else { e->setArgument(6); } ; if (v8_FrameThickness) { e->setArgument(7,(*v8_FrameThickness)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_ShapeAspectStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPermit IfcIdentifier IfcPermit::PermitID() { return *entity->getArgument(5); } void IfcPermit::setPermitID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -8490,7 +8490,7 @@ bool IfcPermit::is(Type::Enum v) const { return v == Type::IfcPermit || IfcContr Type::Enum IfcPermit::type() const { return Type::IfcPermit; } Type::Enum IfcPermit::Class() { return Type::IfcPermit; } IfcPermit::IfcPermit(IfcAbstractEntityPtr e) { if (!is(Type::IfcPermit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPermit::IfcPermit(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_PermitID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_PermitID); entity = e; } +IfcPermit::IfcPermit(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_PermitID) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_PermitID)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPerson bool IfcPerson::hasId() { return !entity->getArgument(0)->isNull(); } IfcIdentifier IfcPerson::Id() { return *entity->getArgument(0); } @@ -8521,7 +8521,7 @@ bool IfcPerson::is(Type::Enum v) const { return v == Type::IfcPerson; } Type::Enum IfcPerson::type() const { return Type::IfcPerson; } Type::Enum IfcPerson::Class() { return Type::IfcPerson; } IfcPerson::IfcPerson(IfcAbstractEntityPtr e) { if (!is(Type::IfcPerson)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPerson::IfcPerson(IfcIdentifier v1_Id, IfcLabel v2_FamilyName, IfcLabel v3_GivenName, std::vector /*[1:?]*/ v4_MiddleNames, std::vector /*[1:?]*/ v5_PrefixTitles, std::vector /*[1:?]*/ v6_SuffixTitles, SHARED_PTR< IfcTemplatedEntityList > v7_Roles, SHARED_PTR< IfcTemplatedEntityList > v8_Addresses) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Id); e->setArgument(1,v2_FamilyName); e->setArgument(2,v3_GivenName); e->setArgument(3,v4_MiddleNames); e->setArgument(4,v5_PrefixTitles); e->setArgument(5,v6_SuffixTitles); e->setArgument(6,v7_Roles->generalize()); e->setArgument(7,v8_Addresses->generalize()); entity = e; } +IfcPerson::IfcPerson(optional v1_Id, optional v2_FamilyName, optional v3_GivenName, optional /*[1:?]*/> v4_MiddleNames, optional /*[1:?]*/> v5_PrefixTitles, optional /*[1:?]*/> v6_SuffixTitles, optional >> v7_Roles, optional >> v8_Addresses) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Id) { e->setArgument(0,(*v1_Id)); } else { e->setArgument(0); } ; if (v2_FamilyName) { e->setArgument(1,(*v2_FamilyName)); } else { e->setArgument(1); } ; if (v3_GivenName) { e->setArgument(2,(*v3_GivenName)); } else { e->setArgument(2); } ; if (v4_MiddleNames) { e->setArgument(3,(*v4_MiddleNames)); } else { e->setArgument(3); } ; if (v5_PrefixTitles) { e->setArgument(4,(*v5_PrefixTitles)); } else { e->setArgument(4); } ; if (v6_SuffixTitles) { e->setArgument(5,(*v6_SuffixTitles)); } else { e->setArgument(5); } ; if (v7_Roles) { e->setArgument(6,(*v7_Roles)->generalize()); } else { e->setArgument(6); } ; if (v8_Addresses) { e->setArgument(7,(*v8_Addresses)->generalize()); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPersonAndOrganization IfcPerson* IfcPersonAndOrganization::ThePerson() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcPersonAndOrganization::setThePerson(IfcPerson* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8534,7 +8534,7 @@ bool IfcPersonAndOrganization::is(Type::Enum v) const { return v == Type::IfcPer Type::Enum IfcPersonAndOrganization::type() const { return Type::IfcPersonAndOrganization; } Type::Enum IfcPersonAndOrganization::Class() { return Type::IfcPersonAndOrganization; } IfcPersonAndOrganization::IfcPersonAndOrganization(IfcAbstractEntityPtr e) { if (!is(Type::IfcPersonAndOrganization)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPersonAndOrganization::IfcPersonAndOrganization(IfcPerson* v1_ThePerson, IfcOrganization* v2_TheOrganization, SHARED_PTR< IfcTemplatedEntityList > v3_Roles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ThePerson); e->setArgument(1,v2_TheOrganization); e->setArgument(2,v3_Roles->generalize()); entity = e; } +IfcPersonAndOrganization::IfcPersonAndOrganization(IfcPerson* v1_ThePerson, IfcOrganization* v2_TheOrganization, optional >> v3_Roles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ThePerson)); e->setArgument(1,(v2_TheOrganization)); if (v3_Roles) { e->setArgument(2,(*v3_Roles)->generalize()); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPhysicalComplexQuantity SHARED_PTR< IfcTemplatedEntityList > IfcPhysicalComplexQuantity::HasQuantities() { RETURN_AS_LIST(IfcPhysicalQuantity,2) } void IfcPhysicalComplexQuantity::setHasQuantities(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v->generalize()); } @@ -8550,7 +8550,7 @@ bool IfcPhysicalComplexQuantity::is(Type::Enum v) const { return v == Type::IfcP Type::Enum IfcPhysicalComplexQuantity::type() const { return Type::IfcPhysicalComplexQuantity; } Type::Enum IfcPhysicalComplexQuantity::Class() { return Type::IfcPhysicalComplexQuantity; } IfcPhysicalComplexQuantity::IfcPhysicalComplexQuantity(IfcAbstractEntityPtr e) { if (!is(Type::IfcPhysicalComplexQuantity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPhysicalComplexQuantity::IfcPhysicalComplexQuantity(IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_HasQuantities, IfcLabel v4_Discrimination, IfcLabel v5_Quality, IfcLabel v6_Usage) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_HasQuantities->generalize()); e->setArgument(3,v4_Discrimination); e->setArgument(4,v5_Quality); e->setArgument(5,v6_Usage); entity = e; } +IfcPhysicalComplexQuantity::IfcPhysicalComplexQuantity(IfcLabel v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_HasQuantities, IfcLabel v4_Discrimination, optional v5_Quality, optional v6_Usage) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_HasQuantities)->generalize()); e->setArgument(3,(v4_Discrimination)); if (v5_Quality) { e->setArgument(4,(*v5_Quality)); } else { e->setArgument(4); } ; if (v6_Usage) { e->setArgument(5,(*v6_Usage)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPhysicalQuantity IfcLabel IfcPhysicalQuantity::Name() { return *entity->getArgument(0); } void IfcPhysicalQuantity::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8562,7 +8562,7 @@ bool IfcPhysicalQuantity::is(Type::Enum v) const { return v == Type::IfcPhysical Type::Enum IfcPhysicalQuantity::type() const { return Type::IfcPhysicalQuantity; } Type::Enum IfcPhysicalQuantity::Class() { return Type::IfcPhysicalQuantity; } IfcPhysicalQuantity::IfcPhysicalQuantity(IfcAbstractEntityPtr e) { if (!is(Type::IfcPhysicalQuantity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPhysicalQuantity::IfcPhysicalQuantity(IfcLabel v1_Name, IfcText v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); entity = e; } +IfcPhysicalQuantity::IfcPhysicalQuantity(IfcLabel v1_Name, optional v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPhysicalSimpleQuantity bool IfcPhysicalSimpleQuantity::hasUnit() { return !entity->getArgument(2)->isNull(); } IfcNamedUnit* IfcPhysicalSimpleQuantity::Unit() { return reinterpret_pointer_cast(*entity->getArgument(2)); } @@ -8571,7 +8571,7 @@ bool IfcPhysicalSimpleQuantity::is(Type::Enum v) const { return v == Type::IfcPh Type::Enum IfcPhysicalSimpleQuantity::type() const { return Type::IfcPhysicalSimpleQuantity; } Type::Enum IfcPhysicalSimpleQuantity::Class() { return Type::IfcPhysicalSimpleQuantity; } IfcPhysicalSimpleQuantity::IfcPhysicalSimpleQuantity(IfcAbstractEntityPtr e) { if (!is(Type::IfcPhysicalSimpleQuantity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPhysicalSimpleQuantity::IfcPhysicalSimpleQuantity(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); entity = e; } +IfcPhysicalSimpleQuantity::IfcPhysicalSimpleQuantity(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPile IfcPileTypeEnum::IfcPileTypeEnum IfcPile::PredefinedType() { return IfcPileTypeEnum::FromString(*entity->getArgument(8)); } void IfcPile::setPredefinedType(IfcPileTypeEnum::IfcPileTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcPileTypeEnum::ToString(v)); } @@ -8582,7 +8582,7 @@ bool IfcPile::is(Type::Enum v) const { return v == Type::IfcPile || IfcBuildingE Type::Enum IfcPile::type() const { return Type::IfcPile; } Type::Enum IfcPile::Class() { return Type::IfcPile; } IfcPile::IfcPile(IfcAbstractEntityPtr e) { if (!is(Type::IfcPile)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPile::IfcPile(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPileTypeEnum::IfcPileTypeEnum v9_PredefinedType, IfcPileConstructionEnum::IfcPileConstructionEnum v10_ConstructionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_PredefinedType); e->setArgument(9,v10_ConstructionType); entity = e; } +IfcPile::IfcPile(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcPileTypeEnum::IfcPileTypeEnum v9_PredefinedType, optional v10_ConstructionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_PredefinedType,IfcPileTypeEnum::ToString(v9_PredefinedType)); if (v10_ConstructionType) { e->setArgument(9,*v10_ConstructionType,IfcPileConstructionEnum::ToString(*v10_ConstructionType)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPipeFittingType IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum IfcPipeFittingType::PredefinedType() { return IfcPipeFittingTypeEnum::FromString(*entity->getArgument(9)); } void IfcPipeFittingType::setPredefinedType(IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcPipeFittingTypeEnum::ToString(v)); } @@ -8590,7 +8590,7 @@ bool IfcPipeFittingType::is(Type::Enum v) const { return v == Type::IfcPipeFitti Type::Enum IfcPipeFittingType::type() const { return Type::IfcPipeFittingType; } Type::Enum IfcPipeFittingType::Class() { return Type::IfcPipeFittingType; } IfcPipeFittingType::IfcPipeFittingType(IfcAbstractEntityPtr e) { if (!is(Type::IfcPipeFittingType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPipeFittingType::IfcPipeFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcPipeFittingType::IfcPipeFittingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcPipeFittingTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPipeSegmentType IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum IfcPipeSegmentType::PredefinedType() { return IfcPipeSegmentTypeEnum::FromString(*entity->getArgument(9)); } void IfcPipeSegmentType::setPredefinedType(IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcPipeSegmentTypeEnum::ToString(v)); } @@ -8598,7 +8598,7 @@ bool IfcPipeSegmentType::is(Type::Enum v) const { return v == Type::IfcPipeSegme Type::Enum IfcPipeSegmentType::type() const { return Type::IfcPipeSegmentType; } Type::Enum IfcPipeSegmentType::Class() { return Type::IfcPipeSegmentType; } IfcPipeSegmentType::IfcPipeSegmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcPipeSegmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPipeSegmentType::IfcPipeSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcPipeSegmentType::IfcPipeSegmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcPipeSegmentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPixelTexture IfcInteger IfcPixelTexture::Width() { return *entity->getArgument(4); } void IfcPixelTexture::setWidth(IfcInteger v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -8612,7 +8612,7 @@ bool IfcPixelTexture::is(Type::Enum v) const { return v == Type::IfcPixelTexture Type::Enum IfcPixelTexture::type() const { return Type::IfcPixelTexture; } Type::Enum IfcPixelTexture::Class() { return Type::IfcPixelTexture; } IfcPixelTexture::IfcPixelTexture(IfcAbstractEntityPtr e) { if (!is(Type::IfcPixelTexture)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPixelTexture::IfcPixelTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcInteger v5_Width, IfcInteger v6_Height, IfcInteger v7_ColourComponents, std::vector /*[1:?]*/ v8_Pixel) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatS); e->setArgument(1,v2_RepeatT); e->setArgument(2,v3_TextureType); e->setArgument(3,v4_TextureTransform); e->setArgument(4,v5_Width); e->setArgument(5,v6_Height); e->setArgument(6,v7_ColourComponents); entity = e; } +IfcPixelTexture::IfcPixelTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform, IfcInteger v5_Width, IfcInteger v6_Height, IfcInteger v7_ColourComponents, std::vector /*[1:?]*/ v8_Pixel) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatS)); e->setArgument(1,(v2_RepeatT)); e->setArgument(2,v3_TextureType,IfcSurfaceTextureEnum::ToString(v3_TextureType)); e->setArgument(3,(v4_TextureTransform)); e->setArgument(4,(v5_Width)); e->setArgument(5,(v6_Height)); e->setArgument(6,(v7_ColourComponents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlacement IfcCartesianPoint* IfcPlacement::Location() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcPlacement::setLocation(IfcCartesianPoint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8620,7 +8620,7 @@ bool IfcPlacement::is(Type::Enum v) const { return v == Type::IfcPlacement || If Type::Enum IfcPlacement::type() const { return Type::IfcPlacement; } Type::Enum IfcPlacement::Class() { return Type::IfcPlacement; } IfcPlacement::IfcPlacement(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlacement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlacement::IfcPlacement(IfcCartesianPoint* v1_Location) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Location); entity = e; } +IfcPlacement::IfcPlacement(IfcCartesianPoint* v1_Location) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Location)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlanarBox IfcAxis2Placement IfcPlanarBox::Placement() { return *entity->getArgument(2); } void IfcPlanarBox::setPlacement(IfcAxis2Placement v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -8628,7 +8628,7 @@ bool IfcPlanarBox::is(Type::Enum v) const { return v == Type::IfcPlanarBox || If Type::Enum IfcPlanarBox::type() const { return Type::IfcPlanarBox; } Type::Enum IfcPlanarBox::Class() { return Type::IfcPlanarBox; } IfcPlanarBox::IfcPlanarBox(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlanarBox)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlanarBox::IfcPlanarBox(IfcLengthMeasure v1_SizeInX, IfcLengthMeasure v2_SizeInY, IfcAxis2Placement v3_Placement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SizeInX); e->setArgument(1,v2_SizeInY); e->setArgument(2,v3_Placement); entity = e; } +IfcPlanarBox::IfcPlanarBox(IfcLengthMeasure v1_SizeInX, IfcLengthMeasure v2_SizeInY, IfcAxis2Placement v3_Placement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SizeInX)); e->setArgument(1,(v2_SizeInY)); e->setArgument(2,(v3_Placement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlanarExtent IfcLengthMeasure IfcPlanarExtent::SizeInX() { return *entity->getArgument(0); } void IfcPlanarExtent::setSizeInX(IfcLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8638,19 +8638,19 @@ bool IfcPlanarExtent::is(Type::Enum v) const { return v == Type::IfcPlanarExtent Type::Enum IfcPlanarExtent::type() const { return Type::IfcPlanarExtent; } Type::Enum IfcPlanarExtent::Class() { return Type::IfcPlanarExtent; } IfcPlanarExtent::IfcPlanarExtent(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlanarExtent)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlanarExtent::IfcPlanarExtent(IfcLengthMeasure v1_SizeInX, IfcLengthMeasure v2_SizeInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SizeInX); e->setArgument(1,v2_SizeInY); entity = e; } +IfcPlanarExtent::IfcPlanarExtent(IfcLengthMeasure v1_SizeInX, IfcLengthMeasure v2_SizeInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SizeInX)); e->setArgument(1,(v2_SizeInY)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlane bool IfcPlane::is(Type::Enum v) const { return v == Type::IfcPlane || IfcElementarySurface::is(v); } Type::Enum IfcPlane::type() const { return Type::IfcPlane; } Type::Enum IfcPlane::Class() { return Type::IfcPlane; } IfcPlane::IfcPlane(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlane)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlane::IfcPlane(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); entity = e; } +IfcPlane::IfcPlane(IfcAxis2Placement3D* v1_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlate bool IfcPlate::is(Type::Enum v) const { return v == Type::IfcPlate || IfcBuildingElement::is(v); } Type::Enum IfcPlate::type() const { return Type::IfcPlate; } Type::Enum IfcPlate::Class() { return Type::IfcPlate; } IfcPlate::IfcPlate(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlate)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlate::IfcPlate(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcPlate::IfcPlate(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPlateType IfcPlateTypeEnum::IfcPlateTypeEnum IfcPlateType::PredefinedType() { return IfcPlateTypeEnum::FromString(*entity->getArgument(9)); } void IfcPlateType::setPredefinedType(IfcPlateTypeEnum::IfcPlateTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcPlateTypeEnum::ToString(v)); } @@ -8658,7 +8658,7 @@ bool IfcPlateType::is(Type::Enum v) const { return v == Type::IfcPlateType || If Type::Enum IfcPlateType::type() const { return Type::IfcPlateType; } Type::Enum IfcPlateType::Class() { return Type::IfcPlateType; } IfcPlateType::IfcPlateType(IfcAbstractEntityPtr e) { if (!is(Type::IfcPlateType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPlateType::IfcPlateType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPlateTypeEnum::IfcPlateTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcPlateType::IfcPlateType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPlateTypeEnum::IfcPlateTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcPlateTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPoint bool IfcPoint::is(Type::Enum v) const { return v == Type::IfcPoint || IfcGeometricRepresentationItem::is(v); } Type::Enum IfcPoint::type() const { return Type::IfcPoint; } @@ -8673,7 +8673,7 @@ bool IfcPointOnCurve::is(Type::Enum v) const { return v == Type::IfcPointOnCurve Type::Enum IfcPointOnCurve::type() const { return Type::IfcPointOnCurve; } Type::Enum IfcPointOnCurve::Class() { return Type::IfcPointOnCurve; } IfcPointOnCurve::IfcPointOnCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcPointOnCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPointOnCurve::IfcPointOnCurve(IfcCurve* v1_BasisCurve, IfcParameterValue v2_PointParameter) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisCurve); e->setArgument(1,v2_PointParameter); entity = e; } +IfcPointOnCurve::IfcPointOnCurve(IfcCurve* v1_BasisCurve, IfcParameterValue v2_PointParameter) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisCurve)); e->setArgument(1,(v2_PointParameter)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPointOnSurface IfcSurface* IfcPointOnSurface::BasisSurface() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcPointOnSurface::setBasisSurface(IfcSurface* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8685,7 +8685,7 @@ bool IfcPointOnSurface::is(Type::Enum v) const { return v == Type::IfcPointOnSur Type::Enum IfcPointOnSurface::type() const { return Type::IfcPointOnSurface; } Type::Enum IfcPointOnSurface::Class() { return Type::IfcPointOnSurface; } IfcPointOnSurface::IfcPointOnSurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcPointOnSurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPointOnSurface::IfcPointOnSurface(IfcSurface* v1_BasisSurface, IfcParameterValue v2_PointParameterU, IfcParameterValue v3_PointParameterV) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisSurface); e->setArgument(1,v2_PointParameterU); e->setArgument(2,v3_PointParameterV); entity = e; } +IfcPointOnSurface::IfcPointOnSurface(IfcSurface* v1_BasisSurface, IfcParameterValue v2_PointParameterU, IfcParameterValue v3_PointParameterV) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisSurface)); e->setArgument(1,(v2_PointParameterU)); e->setArgument(2,(v3_PointParameterV)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPolyLoop SHARED_PTR< IfcTemplatedEntityList > IfcPolyLoop::Polygon() { RETURN_AS_LIST(IfcCartesianPoint,0) } void IfcPolyLoop::setPolygon(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8693,7 +8693,7 @@ bool IfcPolyLoop::is(Type::Enum v) const { return v == Type::IfcPolyLoop || IfcL Type::Enum IfcPolyLoop::type() const { return Type::IfcPolyLoop; } Type::Enum IfcPolyLoop::Class() { return Type::IfcPolyLoop; } IfcPolyLoop::IfcPolyLoop(IfcAbstractEntityPtr e) { if (!is(Type::IfcPolyLoop)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPolyLoop::IfcPolyLoop(SHARED_PTR< IfcTemplatedEntityList > v1_Polygon) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Polygon->generalize()); entity = e; } +IfcPolyLoop::IfcPolyLoop(SHARED_PTR< IfcTemplatedEntityList > v1_Polygon) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Polygon)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPolygonalBoundedHalfSpace IfcAxis2Placement3D* IfcPolygonalBoundedHalfSpace::Position() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcPolygonalBoundedHalfSpace::setPosition(IfcAxis2Placement3D* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -8703,7 +8703,7 @@ bool IfcPolygonalBoundedHalfSpace::is(Type::Enum v) const { return v == Type::If Type::Enum IfcPolygonalBoundedHalfSpace::type() const { return Type::IfcPolygonalBoundedHalfSpace; } Type::Enum IfcPolygonalBoundedHalfSpace::Class() { return Type::IfcPolygonalBoundedHalfSpace; } IfcPolygonalBoundedHalfSpace::IfcPolygonalBoundedHalfSpace(IfcAbstractEntityPtr e) { if (!is(Type::IfcPolygonalBoundedHalfSpace)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPolygonalBoundedHalfSpace::IfcPolygonalBoundedHalfSpace(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag, IfcAxis2Placement3D* v3_Position, IfcBoundedCurve* v4_PolygonalBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BaseSurface); e->setArgument(1,v2_AgreementFlag); e->setArgument(2,v3_Position); e->setArgument(3,v4_PolygonalBoundary); entity = e; } +IfcPolygonalBoundedHalfSpace::IfcPolygonalBoundedHalfSpace(IfcSurface* v1_BaseSurface, bool v2_AgreementFlag, IfcAxis2Placement3D* v3_Position, IfcBoundedCurve* v4_PolygonalBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BaseSurface)); e->setArgument(1,(v2_AgreementFlag)); e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_PolygonalBoundary)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPolyline SHARED_PTR< IfcTemplatedEntityList > IfcPolyline::Points() { RETURN_AS_LIST(IfcCartesianPoint,0) } void IfcPolyline::setPoints(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8711,7 +8711,7 @@ bool IfcPolyline::is(Type::Enum v) const { return v == Type::IfcPolyline || IfcB Type::Enum IfcPolyline::type() const { return Type::IfcPolyline; } Type::Enum IfcPolyline::Class() { return Type::IfcPolyline; } IfcPolyline::IfcPolyline(IfcAbstractEntityPtr e) { if (!is(Type::IfcPolyline)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPolyline::IfcPolyline(SHARED_PTR< IfcTemplatedEntityList > v1_Points) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Points->generalize()); entity = e; } +IfcPolyline::IfcPolyline(SHARED_PTR< IfcTemplatedEntityList > v1_Points) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Points)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPort IfcRelConnectsPortToElement::list IfcPort::ContainedIn() { RETURN_INVERSE(IfcRelConnectsPortToElement) } IfcRelConnectsPorts::list IfcPort::ConnectedFrom() { RETURN_INVERSE(IfcRelConnectsPorts) } @@ -8720,7 +8720,7 @@ bool IfcPort::is(Type::Enum v) const { return v == Type::IfcPort || IfcProduct:: Type::Enum IfcPort::type() const { return Type::IfcPort; } Type::Enum IfcPort::Class() { return Type::IfcPort; } IfcPort::IfcPort(IfcAbstractEntityPtr e) { if (!is(Type::IfcPort)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPort::IfcPort(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); entity = e; } +IfcPort::IfcPort(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPostalAddress bool IfcPostalAddress::hasInternalLocation() { return !entity->getArgument(3)->isNull(); } IfcLabel IfcPostalAddress::InternalLocation() { return *entity->getArgument(3); } @@ -8747,25 +8747,25 @@ bool IfcPostalAddress::is(Type::Enum v) const { return v == Type::IfcPostalAddre Type::Enum IfcPostalAddress::type() const { return Type::IfcPostalAddress; } Type::Enum IfcPostalAddress::Class() { return Type::IfcPostalAddress; } IfcPostalAddress::IfcPostalAddress(IfcAbstractEntityPtr e) { if (!is(Type::IfcPostalAddress)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPostalAddress::IfcPostalAddress(IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose, IfcLabel v4_InternalLocation, std::vector /*[1:?]*/ v5_AddressLines, IfcLabel v6_PostalBox, IfcLabel v7_Town, IfcLabel v8_Region, IfcLabel v9_PostalCode, IfcLabel v10_Country) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Purpose); e->setArgument(1,v2_Description); e->setArgument(2,v3_UserDefinedPurpose); e->setArgument(3,v4_InternalLocation); e->setArgument(4,v5_AddressLines); e->setArgument(5,v6_PostalBox); e->setArgument(6,v7_Town); e->setArgument(7,v8_Region); e->setArgument(8,v9_PostalCode); e->setArgument(9,v10_Country); entity = e; } +IfcPostalAddress::IfcPostalAddress(optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose, optional v4_InternalLocation, optional /*[1:?]*/> v5_AddressLines, optional v6_PostalBox, optional v7_Town, optional v8_Region, optional v9_PostalCode, optional v10_Country) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Purpose) { e->setArgument(0,*v1_Purpose,IfcAddressTypeEnum::ToString(*v1_Purpose)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_UserDefinedPurpose) { e->setArgument(2,(*v3_UserDefinedPurpose)); } else { e->setArgument(2); } ; if (v4_InternalLocation) { e->setArgument(3,(*v4_InternalLocation)); } else { e->setArgument(3); } ; if (v5_AddressLines) { e->setArgument(4,(*v5_AddressLines)); } else { e->setArgument(4); } ; if (v6_PostalBox) { e->setArgument(5,(*v6_PostalBox)); } else { e->setArgument(5); } ; if (v7_Town) { e->setArgument(6,(*v7_Town)); } else { e->setArgument(6); } ; if (v8_Region) { e->setArgument(7,(*v8_Region)); } else { e->setArgument(7); } ; if (v9_PostalCode) { e->setArgument(8,(*v9_PostalCode)); } else { e->setArgument(8); } ; if (v10_Country) { e->setArgument(9,(*v10_Country)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedColour bool IfcPreDefinedColour::is(Type::Enum v) const { return v == Type::IfcPreDefinedColour || IfcPreDefinedItem::is(v); } Type::Enum IfcPreDefinedColour::type() const { return Type::IfcPreDefinedColour; } Type::Enum IfcPreDefinedColour::Class() { return Type::IfcPreDefinedColour; } IfcPreDefinedColour::IfcPreDefinedColour(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedColour)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedColour::IfcPreDefinedColour(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedColour::IfcPreDefinedColour(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedCurveFont bool IfcPreDefinedCurveFont::is(Type::Enum v) const { return v == Type::IfcPreDefinedCurveFont || IfcPreDefinedItem::is(v); } Type::Enum IfcPreDefinedCurveFont::type() const { return Type::IfcPreDefinedCurveFont; } Type::Enum IfcPreDefinedCurveFont::Class() { return Type::IfcPreDefinedCurveFont; } IfcPreDefinedCurveFont::IfcPreDefinedCurveFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedCurveFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedCurveFont::IfcPreDefinedCurveFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedCurveFont::IfcPreDefinedCurveFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedDimensionSymbol bool IfcPreDefinedDimensionSymbol::is(Type::Enum v) const { return v == Type::IfcPreDefinedDimensionSymbol || IfcPreDefinedSymbol::is(v); } Type::Enum IfcPreDefinedDimensionSymbol::type() const { return Type::IfcPreDefinedDimensionSymbol; } Type::Enum IfcPreDefinedDimensionSymbol::Class() { return Type::IfcPreDefinedDimensionSymbol; } IfcPreDefinedDimensionSymbol::IfcPreDefinedDimensionSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedDimensionSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedDimensionSymbol::IfcPreDefinedDimensionSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedDimensionSymbol::IfcPreDefinedDimensionSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedItem IfcLabel IfcPreDefinedItem::Name() { return *entity->getArgument(0); } void IfcPreDefinedItem::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8773,31 +8773,31 @@ bool IfcPreDefinedItem::is(Type::Enum v) const { return v == Type::IfcPreDefined Type::Enum IfcPreDefinedItem::type() const { return Type::IfcPreDefinedItem; } Type::Enum IfcPreDefinedItem::Class() { return Type::IfcPreDefinedItem; } IfcPreDefinedItem::IfcPreDefinedItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedItem::IfcPreDefinedItem(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedItem::IfcPreDefinedItem(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedPointMarkerSymbol bool IfcPreDefinedPointMarkerSymbol::is(Type::Enum v) const { return v == Type::IfcPreDefinedPointMarkerSymbol || IfcPreDefinedSymbol::is(v); } Type::Enum IfcPreDefinedPointMarkerSymbol::type() const { return Type::IfcPreDefinedPointMarkerSymbol; } Type::Enum IfcPreDefinedPointMarkerSymbol::Class() { return Type::IfcPreDefinedPointMarkerSymbol; } IfcPreDefinedPointMarkerSymbol::IfcPreDefinedPointMarkerSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedPointMarkerSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedPointMarkerSymbol::IfcPreDefinedPointMarkerSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedPointMarkerSymbol::IfcPreDefinedPointMarkerSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedSymbol bool IfcPreDefinedSymbol::is(Type::Enum v) const { return v == Type::IfcPreDefinedSymbol || IfcPreDefinedItem::is(v); } Type::Enum IfcPreDefinedSymbol::type() const { return Type::IfcPreDefinedSymbol; } Type::Enum IfcPreDefinedSymbol::Class() { return Type::IfcPreDefinedSymbol; } IfcPreDefinedSymbol::IfcPreDefinedSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedSymbol::IfcPreDefinedSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedSymbol::IfcPreDefinedSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedTerminatorSymbol bool IfcPreDefinedTerminatorSymbol::is(Type::Enum v) const { return v == Type::IfcPreDefinedTerminatorSymbol || IfcPreDefinedSymbol::is(v); } Type::Enum IfcPreDefinedTerminatorSymbol::type() const { return Type::IfcPreDefinedTerminatorSymbol; } Type::Enum IfcPreDefinedTerminatorSymbol::Class() { return Type::IfcPreDefinedTerminatorSymbol; } IfcPreDefinedTerminatorSymbol::IfcPreDefinedTerminatorSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedTerminatorSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedTerminatorSymbol::IfcPreDefinedTerminatorSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedTerminatorSymbol::IfcPreDefinedTerminatorSymbol(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPreDefinedTextFont bool IfcPreDefinedTextFont::is(Type::Enum v) const { return v == Type::IfcPreDefinedTextFont || IfcPreDefinedItem::is(v); } Type::Enum IfcPreDefinedTextFont::type() const { return Type::IfcPreDefinedTextFont; } Type::Enum IfcPreDefinedTextFont::Class() { return Type::IfcPreDefinedTextFont; } IfcPreDefinedTextFont::IfcPreDefinedTextFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcPreDefinedTextFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPreDefinedTextFont::IfcPreDefinedTextFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPreDefinedTextFont::IfcPreDefinedTextFont(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPresentationLayerAssignment IfcLabel IfcPresentationLayerAssignment::Name() { return *entity->getArgument(0); } void IfcPresentationLayerAssignment::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -8813,7 +8813,7 @@ bool IfcPresentationLayerAssignment::is(Type::Enum v) const { return v == Type:: Type::Enum IfcPresentationLayerAssignment::type() const { return Type::IfcPresentationLayerAssignment; } Type::Enum IfcPresentationLayerAssignment::Class() { return Type::IfcPresentationLayerAssignment; } IfcPresentationLayerAssignment::IfcPresentationLayerAssignment(IfcAbstractEntityPtr e) { if (!is(Type::IfcPresentationLayerAssignment)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPresentationLayerAssignment::IfcPresentationLayerAssignment(IfcLabel v1_Name, IfcText v2_Description, IfcEntities v3_AssignedItems, IfcIdentifier v4_Identifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_AssignedItems); e->setArgument(3,v4_Identifier); entity = e; } +IfcPresentationLayerAssignment::IfcPresentationLayerAssignment(IfcLabel v1_Name, optional v2_Description, IfcEntities v3_AssignedItems, optional v4_Identifier) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_AssignedItems)); if (v4_Identifier) { e->setArgument(3,(*v4_Identifier)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPresentationLayerWithStyle bool IfcPresentationLayerWithStyle::LayerOn() { return *entity->getArgument(4); } void IfcPresentationLayerWithStyle::setLayerOn(bool v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -8827,7 +8827,7 @@ bool IfcPresentationLayerWithStyle::is(Type::Enum v) const { return v == Type::I Type::Enum IfcPresentationLayerWithStyle::type() const { return Type::IfcPresentationLayerWithStyle; } Type::Enum IfcPresentationLayerWithStyle::Class() { return Type::IfcPresentationLayerWithStyle; } IfcPresentationLayerWithStyle::IfcPresentationLayerWithStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcPresentationLayerWithStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPresentationLayerWithStyle::IfcPresentationLayerWithStyle(IfcLabel v1_Name, IfcText v2_Description, IfcEntities v3_AssignedItems, IfcIdentifier v4_Identifier, bool v5_LayerOn, bool v6_LayerFrozen, bool v7_LayerBlocked, IfcEntities v8_LayerStyles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_AssignedItems); e->setArgument(3,v4_Identifier); e->setArgument(4,v5_LayerOn); e->setArgument(5,v6_LayerFrozen); e->setArgument(6,v7_LayerBlocked); e->setArgument(7,v8_LayerStyles); entity = e; } +IfcPresentationLayerWithStyle::IfcPresentationLayerWithStyle(IfcLabel v1_Name, optional v2_Description, IfcEntities v3_AssignedItems, optional v4_Identifier, bool v5_LayerOn, bool v6_LayerFrozen, bool v7_LayerBlocked, IfcEntities v8_LayerStyles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_AssignedItems)); if (v4_Identifier) { e->setArgument(3,(*v4_Identifier)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_LayerOn)); e->setArgument(5,(v6_LayerFrozen)); e->setArgument(6,(v7_LayerBlocked)); e->setArgument(7,(v8_LayerStyles)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPresentationStyle bool IfcPresentationStyle::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcPresentationStyle::Name() { return *entity->getArgument(0); } @@ -8836,7 +8836,7 @@ bool IfcPresentationStyle::is(Type::Enum v) const { return v == Type::IfcPresent Type::Enum IfcPresentationStyle::type() const { return Type::IfcPresentationStyle; } Type::Enum IfcPresentationStyle::Class() { return Type::IfcPresentationStyle; } IfcPresentationStyle::IfcPresentationStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcPresentationStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPresentationStyle::IfcPresentationStyle(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcPresentationStyle::IfcPresentationStyle(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPresentationStyleAssignment SHARED_PTR< IfcTemplatedEntityList > IfcPresentationStyleAssignment::Styles() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcPresentationStyleAssignment::setStyles(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -8844,7 +8844,7 @@ bool IfcPresentationStyleAssignment::is(Type::Enum v) const { return v == Type:: Type::Enum IfcPresentationStyleAssignment::type() const { return Type::IfcPresentationStyleAssignment; } Type::Enum IfcPresentationStyleAssignment::Class() { return Type::IfcPresentationStyleAssignment; } IfcPresentationStyleAssignment::IfcPresentationStyleAssignment(IfcAbstractEntityPtr e) { if (!is(Type::IfcPresentationStyleAssignment)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPresentationStyleAssignment::IfcPresentationStyleAssignment(IfcEntities v1_Styles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Styles); entity = e; } +IfcPresentationStyleAssignment::IfcPresentationStyleAssignment(IfcEntities v1_Styles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Styles)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProcedure IfcIdentifier IfcProcedure::ProcedureID() { return *entity->getArgument(5); } void IfcProcedure::setProcedureID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -8857,7 +8857,7 @@ bool IfcProcedure::is(Type::Enum v) const { return v == Type::IfcProcedure || If Type::Enum IfcProcedure::type() const { return Type::IfcProcedure; } Type::Enum IfcProcedure::Class() { return Type::IfcProcedure; } IfcProcedure::IfcProcedure(IfcAbstractEntityPtr e) { if (!is(Type::IfcProcedure)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProcedure::IfcProcedure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ProcedureID, IfcProcedureTypeEnum::IfcProcedureTypeEnum v7_ProcedureType, IfcLabel v8_UserDefinedProcedureType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ProcedureID); e->setArgument(6,v7_ProcedureType); e->setArgument(7,v8_UserDefinedProcedureType); entity = e; } +IfcProcedure::IfcProcedure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_ProcedureID, IfcProcedureTypeEnum::IfcProcedureTypeEnum v7_ProcedureType, optional v8_UserDefinedProcedureType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ProcedureID)); e->setArgument(6,v7_ProcedureType,IfcProcedureTypeEnum::ToString(v7_ProcedureType)); if (v8_UserDefinedProcedureType) { e->setArgument(7,(*v8_UserDefinedProcedureType)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProcess IfcRelAssignsToProcess::list IfcProcess::OperatesOn() { RETURN_INVERSE(IfcRelAssignsToProcess) } IfcRelSequence::list IfcProcess::IsSuccessorFrom() { RETURN_INVERSE(IfcRelSequence) } @@ -8866,7 +8866,7 @@ bool IfcProcess::is(Type::Enum v) const { return v == Type::IfcProcess || IfcObj Type::Enum IfcProcess::type() const { return Type::IfcProcess; } Type::Enum IfcProcess::Class() { return Type::IfcProcess; } IfcProcess::IfcProcess(IfcAbstractEntityPtr e) { if (!is(Type::IfcProcess)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProcess::IfcProcess(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcProcess::IfcProcess(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProduct bool IfcProduct::hasObjectPlacement() { return !entity->getArgument(5)->isNull(); } IfcObjectPlacement* IfcProduct::ObjectPlacement() { return reinterpret_pointer_cast(*entity->getArgument(5)); } @@ -8879,7 +8879,7 @@ bool IfcProduct::is(Type::Enum v) const { return v == Type::IfcProduct || IfcObj Type::Enum IfcProduct::type() const { return Type::IfcProduct; } Type::Enum IfcProduct::Class() { return Type::IfcProduct; } IfcProduct::IfcProduct(IfcAbstractEntityPtr e) { if (!is(Type::IfcProduct)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProduct::IfcProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); entity = e; } +IfcProduct::IfcProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProductDefinitionShape IfcProduct::list IfcProductDefinitionShape::ShapeOfProduct() { RETURN_INVERSE(IfcProduct) } IfcShapeAspect::list IfcProductDefinitionShape::HasShapeAspects() { RETURN_INVERSE(IfcShapeAspect) } @@ -8887,7 +8887,7 @@ bool IfcProductDefinitionShape::is(Type::Enum v) const { return v == Type::IfcPr Type::Enum IfcProductDefinitionShape::type() const { return Type::IfcProductDefinitionShape; } Type::Enum IfcProductDefinitionShape::Class() { return Type::IfcProductDefinitionShape; } IfcProductDefinitionShape::IfcProductDefinitionShape(IfcAbstractEntityPtr e) { if (!is(Type::IfcProductDefinitionShape)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProductDefinitionShape::IfcProductDefinitionShape(IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Representations->generalize()); entity = e; } +IfcProductDefinitionShape::IfcProductDefinitionShape(optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Representations)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProductRepresentation bool IfcProductRepresentation::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcProductRepresentation::Name() { return *entity->getArgument(0); } @@ -8901,7 +8901,7 @@ bool IfcProductRepresentation::is(Type::Enum v) const { return v == Type::IfcPro Type::Enum IfcProductRepresentation::type() const { return Type::IfcProductRepresentation; } Type::Enum IfcProductRepresentation::Class() { return Type::IfcProductRepresentation; } IfcProductRepresentation::IfcProductRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcProductRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProductRepresentation::IfcProductRepresentation(IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Representations->generalize()); entity = e; } +IfcProductRepresentation::IfcProductRepresentation(optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Representations)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProductsOfCombustionProperties bool IfcProductsOfCombustionProperties::hasSpecificHeatCapacity() { return !entity->getArgument(1)->isNull(); } IfcSpecificHeatCapacityMeasure IfcProductsOfCombustionProperties::SpecificHeatCapacity() { return *entity->getArgument(1); } @@ -8919,7 +8919,7 @@ bool IfcProductsOfCombustionProperties::is(Type::Enum v) const { return v == Typ Type::Enum IfcProductsOfCombustionProperties::type() const { return Type::IfcProductsOfCombustionProperties; } Type::Enum IfcProductsOfCombustionProperties::Class() { return Type::IfcProductsOfCombustionProperties; } IfcProductsOfCombustionProperties::IfcProductsOfCombustionProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcProductsOfCombustionProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProductsOfCombustionProperties::IfcProductsOfCombustionProperties(IfcMaterial* v1_Material, IfcSpecificHeatCapacityMeasure v2_SpecificHeatCapacity, IfcPositiveRatioMeasure v3_N20Content, IfcPositiveRatioMeasure v4_COContent, IfcPositiveRatioMeasure v5_CO2Content) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_SpecificHeatCapacity); e->setArgument(2,v3_N20Content); e->setArgument(3,v4_COContent); e->setArgument(4,v5_CO2Content); entity = e; } +IfcProductsOfCombustionProperties::IfcProductsOfCombustionProperties(IfcMaterial* v1_Material, optional v2_SpecificHeatCapacity, optional v3_N20Content, optional v4_COContent, optional v5_CO2Content) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_SpecificHeatCapacity) { e->setArgument(1,(*v2_SpecificHeatCapacity)); } else { e->setArgument(1); } ; if (v3_N20Content) { e->setArgument(2,(*v3_N20Content)); } else { e->setArgument(2); } ; if (v4_COContent) { e->setArgument(3,(*v4_COContent)); } else { e->setArgument(3); } ; if (v5_CO2Content) { e->setArgument(4,(*v5_CO2Content)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProfileDef IfcProfileTypeEnum::IfcProfileTypeEnum IfcProfileDef::ProfileType() { return IfcProfileTypeEnum::FromString(*entity->getArgument(0)); } void IfcProfileDef::setProfileType(IfcProfileTypeEnum::IfcProfileTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcProfileTypeEnum::ToString(v)); } @@ -8930,7 +8930,7 @@ bool IfcProfileDef::is(Type::Enum v) const { return v == Type::IfcProfileDef; } Type::Enum IfcProfileDef::type() const { return Type::IfcProfileDef; } Type::Enum IfcProfileDef::Class() { return Type::IfcProfileDef; } IfcProfileDef::IfcProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProfileDef::IfcProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); entity = e; } +IfcProfileDef::IfcProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProfileProperties bool IfcProfileProperties::hasProfileName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcProfileProperties::ProfileName() { return *entity->getArgument(0); } @@ -8942,7 +8942,7 @@ bool IfcProfileProperties::is(Type::Enum v) const { return v == Type::IfcProfile Type::Enum IfcProfileProperties::type() const { return Type::IfcProfileProperties; } Type::Enum IfcProfileProperties::Class() { return Type::IfcProfileProperties; } IfcProfileProperties::IfcProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProfileProperties::IfcProfileProperties(IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileName); e->setArgument(1,v2_ProfileDefinition); entity = e; } +IfcProfileProperties::IfcProfileProperties(optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ProfileName) { e->setArgument(0,(*v1_ProfileName)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ProfileDefinition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProject bool IfcProject::hasLongName() { return !entity->getArgument(5)->isNull(); } IfcLabel IfcProject::LongName() { return *entity->getArgument(5); } @@ -8958,7 +8958,7 @@ bool IfcProject::is(Type::Enum v) const { return v == Type::IfcProject || IfcObj Type::Enum IfcProject::type() const { return Type::IfcProject; } Type::Enum IfcProject::Class() { return Type::IfcProject; } IfcProject::IfcProject(IfcAbstractEntityPtr e) { if (!is(Type::IfcProject)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProject::IfcProject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLabel v6_LongName, IfcLabel v7_Phase, SHARED_PTR< IfcTemplatedEntityList > v8_RepresentationContexts, IfcUnitAssignment* v9_UnitsInContext) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_LongName); e->setArgument(6,v7_Phase); e->setArgument(7,v8_RepresentationContexts->generalize()); e->setArgument(8,v9_UnitsInContext); entity = e; } +IfcProject::IfcProject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_LongName, optional v7_Phase, SHARED_PTR< IfcTemplatedEntityList > v8_RepresentationContexts, IfcUnitAssignment* v9_UnitsInContext) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_LongName) { e->setArgument(5,(*v6_LongName)); } else { e->setArgument(5); } ; if (v7_Phase) { e->setArgument(6,(*v7_Phase)); } else { e->setArgument(6); } ; e->setArgument(7,(v8_RepresentationContexts)->generalize()); e->setArgument(8,(v9_UnitsInContext)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProjectOrder IfcIdentifier IfcProjectOrder::ID() { return *entity->getArgument(5); } void IfcProjectOrder::setID(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -8971,7 +8971,7 @@ bool IfcProjectOrder::is(Type::Enum v) const { return v == Type::IfcProjectOrder Type::Enum IfcProjectOrder::type() const { return Type::IfcProjectOrder; } Type::Enum IfcProjectOrder::Class() { return Type::IfcProjectOrder; } IfcProjectOrder::IfcProjectOrder(IfcAbstractEntityPtr e) { if (!is(Type::IfcProjectOrder)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProjectOrder::IfcProjectOrder(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ID, IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum v7_PredefinedType, IfcLabel v8_Status) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ID); e->setArgument(6,v7_PredefinedType); e->setArgument(7,v8_Status); entity = e; } +IfcProjectOrder::IfcProjectOrder(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_ID, IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum v7_PredefinedType, optional v8_Status) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ID)); e->setArgument(6,v7_PredefinedType,IfcProjectOrderTypeEnum::ToString(v7_PredefinedType)); if (v8_Status) { e->setArgument(7,(*v8_Status)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProjectOrderRecord SHARED_PTR< IfcTemplatedEntityList > IfcProjectOrderRecord::Records() { RETURN_AS_LIST(IfcRelAssignsToProjectOrder,5) } void IfcProjectOrderRecord::setRecords(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v->generalize()); } @@ -8981,19 +8981,19 @@ bool IfcProjectOrderRecord::is(Type::Enum v) const { return v == Type::IfcProjec Type::Enum IfcProjectOrderRecord::type() const { return Type::IfcProjectOrderRecord; } Type::Enum IfcProjectOrderRecord::Class() { return Type::IfcProjectOrderRecord; } IfcProjectOrderRecord::IfcProjectOrderRecord(IfcAbstractEntityPtr e) { if (!is(Type::IfcProjectOrderRecord)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProjectOrderRecord::IfcProjectOrderRecord(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, SHARED_PTR< IfcTemplatedEntityList > v6_Records, IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordTypeEnum v7_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_Records->generalize()); e->setArgument(6,v7_PredefinedType); entity = e; } +IfcProjectOrderRecord::IfcProjectOrderRecord(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, SHARED_PTR< IfcTemplatedEntityList > v6_Records, IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordTypeEnum v7_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Records)->generalize()); e->setArgument(6,v7_PredefinedType,IfcProjectOrderRecordTypeEnum::ToString(v7_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProjectionCurve bool IfcProjectionCurve::is(Type::Enum v) const { return v == Type::IfcProjectionCurve || IfcAnnotationCurveOccurrence::is(v); } Type::Enum IfcProjectionCurve::type() const { return Type::IfcProjectionCurve; } Type::Enum IfcProjectionCurve::Class() { return Type::IfcProjectionCurve; } IfcProjectionCurve::IfcProjectionCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcProjectionCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProjectionCurve::IfcProjectionCurve(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcProjectionCurve::IfcProjectionCurve(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProjectionElement bool IfcProjectionElement::is(Type::Enum v) const { return v == Type::IfcProjectionElement || IfcFeatureElementAddition::is(v); } Type::Enum IfcProjectionElement::type() const { return Type::IfcProjectionElement; } Type::Enum IfcProjectionElement::Class() { return Type::IfcProjectionElement; } IfcProjectionElement::IfcProjectionElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcProjectionElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProjectionElement::IfcProjectionElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcProjectionElement::IfcProjectionElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProperty IfcIdentifier IfcProperty::Name() { return *entity->getArgument(0); } void IfcProperty::setName(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9007,7 +9007,7 @@ bool IfcProperty::is(Type::Enum v) const { return v == Type::IfcProperty; } Type::Enum IfcProperty::type() const { return Type::IfcProperty; } Type::Enum IfcProperty::Class() { return Type::IfcProperty; } IfcProperty::IfcProperty(IfcAbstractEntityPtr e) { if (!is(Type::IfcProperty)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProperty::IfcProperty(IfcIdentifier v1_Name, IfcText v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); entity = e; } +IfcProperty::IfcProperty(IfcIdentifier v1_Name, optional v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyBoundedValue bool IfcPropertyBoundedValue::hasUpperBoundValue() { return !entity->getArgument(2)->isNull(); } IfcValue IfcPropertyBoundedValue::UpperBoundValue() { return *entity->getArgument(2); } @@ -9022,7 +9022,7 @@ bool IfcPropertyBoundedValue::is(Type::Enum v) const { return v == Type::IfcProp Type::Enum IfcPropertyBoundedValue::type() const { return Type::IfcPropertyBoundedValue; } Type::Enum IfcPropertyBoundedValue::Class() { return Type::IfcPropertyBoundedValue; } IfcPropertyBoundedValue::IfcPropertyBoundedValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyBoundedValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyBoundedValue::IfcPropertyBoundedValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcValue v3_UpperBoundValue, IfcValue v4_LowerBoundValue, IfcUnit v5_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_UpperBoundValue); e->setArgument(3,v4_LowerBoundValue); e->setArgument(4,v5_Unit); entity = e; } +IfcPropertyBoundedValue::IfcPropertyBoundedValue(IfcIdentifier v1_Name, optional v2_Description, optional v3_UpperBoundValue, optional v4_LowerBoundValue, optional v5_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_UpperBoundValue) { e->setArgument(2,(*v3_UpperBoundValue)); } else { e->setArgument(2); } ; if (v4_LowerBoundValue) { e->setArgument(3,(*v4_LowerBoundValue)); } else { e->setArgument(3); } ; if (v5_Unit) { e->setArgument(4,(*v5_Unit)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyConstraintRelationship IfcConstraint* IfcPropertyConstraintRelationship::RelatingConstraint() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcPropertyConstraintRelationship::setRelatingConstraint(IfcConstraint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9038,14 +9038,14 @@ bool IfcPropertyConstraintRelationship::is(Type::Enum v) const { return v == Typ Type::Enum IfcPropertyConstraintRelationship::type() const { return Type::IfcPropertyConstraintRelationship; } Type::Enum IfcPropertyConstraintRelationship::Class() { return Type::IfcPropertyConstraintRelationship; } IfcPropertyConstraintRelationship::IfcPropertyConstraintRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyConstraintRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyConstraintRelationship::IfcPropertyConstraintRelationship(IfcConstraint* v1_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedProperties, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelatingConstraint); e->setArgument(1,v2_RelatedProperties->generalize()); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcPropertyConstraintRelationship::IfcPropertyConstraintRelationship(IfcConstraint* v1_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedProperties, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelatingConstraint)); e->setArgument(1,(v2_RelatedProperties)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyDefinition IfcRelAssociates::list IfcPropertyDefinition::HasAssociations() { RETURN_INVERSE(IfcRelAssociates) } bool IfcPropertyDefinition::is(Type::Enum v) const { return v == Type::IfcPropertyDefinition || IfcRoot::is(v); } Type::Enum IfcPropertyDefinition::type() const { return Type::IfcPropertyDefinition; } Type::Enum IfcPropertyDefinition::Class() { return Type::IfcPropertyDefinition; } IfcPropertyDefinition::IfcPropertyDefinition(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyDefinition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyDefinition::IfcPropertyDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcPropertyDefinition::IfcPropertyDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyDependencyRelationship IfcProperty* IfcPropertyDependencyRelationship::DependingProperty() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcPropertyDependencyRelationship::setDependingProperty(IfcProperty* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9064,7 +9064,7 @@ bool IfcPropertyDependencyRelationship::is(Type::Enum v) const { return v == Typ Type::Enum IfcPropertyDependencyRelationship::type() const { return Type::IfcPropertyDependencyRelationship; } Type::Enum IfcPropertyDependencyRelationship::Class() { return Type::IfcPropertyDependencyRelationship; } IfcPropertyDependencyRelationship::IfcPropertyDependencyRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyDependencyRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyDependencyRelationship::IfcPropertyDependencyRelationship(IfcProperty* v1_DependingProperty, IfcProperty* v2_DependantProperty, IfcLabel v3_Name, IfcText v4_Description, IfcText v5_Expression) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DependingProperty); e->setArgument(1,v2_DependantProperty); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_Expression); entity = e; } +IfcPropertyDependencyRelationship::IfcPropertyDependencyRelationship(IfcProperty* v1_DependingProperty, IfcProperty* v2_DependantProperty, optional v3_Name, optional v4_Description, optional v5_Expression) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DependingProperty)); e->setArgument(1,(v2_DependantProperty)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_Expression) { e->setArgument(4,(*v5_Expression)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyEnumeratedValue SHARED_PTR< IfcTemplatedEntityList > IfcPropertyEnumeratedValue::EnumerationValues() { RETURN_AS_LIST(IfcAbstractSelect,2) } void IfcPropertyEnumeratedValue::setEnumerationValues(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v->generalize()); } @@ -9075,7 +9075,7 @@ bool IfcPropertyEnumeratedValue::is(Type::Enum v) const { return v == Type::IfcP Type::Enum IfcPropertyEnumeratedValue::type() const { return Type::IfcPropertyEnumeratedValue; } Type::Enum IfcPropertyEnumeratedValue::Class() { return Type::IfcPropertyEnumeratedValue; } IfcPropertyEnumeratedValue::IfcPropertyEnumeratedValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyEnumeratedValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyEnumeratedValue::IfcPropertyEnumeratedValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_EnumerationValues, IfcPropertyEnumeration* v4_EnumerationReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_EnumerationValues); e->setArgument(3,v4_EnumerationReference); entity = e; } +IfcPropertyEnumeratedValue::IfcPropertyEnumeratedValue(IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_EnumerationValues, IfcPropertyEnumeration* v4_EnumerationReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_EnumerationValues)); e->setArgument(3,(v4_EnumerationReference)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyEnumeration IfcLabel IfcPropertyEnumeration::Name() { return *entity->getArgument(0); } void IfcPropertyEnumeration::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9088,7 +9088,7 @@ bool IfcPropertyEnumeration::is(Type::Enum v) const { return v == Type::IfcPrope Type::Enum IfcPropertyEnumeration::type() const { return Type::IfcPropertyEnumeration; } Type::Enum IfcPropertyEnumeration::Class() { return Type::IfcPropertyEnumeration; } IfcPropertyEnumeration::IfcPropertyEnumeration(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyEnumeration)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyEnumeration::IfcPropertyEnumeration(IfcLabel v1_Name, IfcEntities v2_EnumerationValues, IfcUnit v3_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_EnumerationValues); e->setArgument(2,v3_Unit); entity = e; } +IfcPropertyEnumeration::IfcPropertyEnumeration(IfcLabel v1_Name, IfcEntities v2_EnumerationValues, optional v3_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); e->setArgument(1,(v2_EnumerationValues)); if (v3_Unit) { e->setArgument(2,(*v3_Unit)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyListValue SHARED_PTR< IfcTemplatedEntityList > IfcPropertyListValue::ListValues() { RETURN_AS_LIST(IfcAbstractSelect,2) } void IfcPropertyListValue::setListValues(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v->generalize()); } @@ -9099,7 +9099,7 @@ bool IfcPropertyListValue::is(Type::Enum v) const { return v == Type::IfcPropert Type::Enum IfcPropertyListValue::type() const { return Type::IfcPropertyListValue; } Type::Enum IfcPropertyListValue::Class() { return Type::IfcPropertyListValue; } IfcPropertyListValue::IfcPropertyListValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyListValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyListValue::IfcPropertyListValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_ListValues, IfcUnit v4_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_ListValues); e->setArgument(3,v4_Unit); entity = e; } +IfcPropertyListValue::IfcPropertyListValue(IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_ListValues, optional v4_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_ListValues)); if (v4_Unit) { e->setArgument(3,(*v4_Unit)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyReferenceValue bool IfcPropertyReferenceValue::hasUsageName() { return !entity->getArgument(2)->isNull(); } IfcLabel IfcPropertyReferenceValue::UsageName() { return *entity->getArgument(2); } @@ -9110,7 +9110,7 @@ bool IfcPropertyReferenceValue::is(Type::Enum v) const { return v == Type::IfcPr Type::Enum IfcPropertyReferenceValue::type() const { return Type::IfcPropertyReferenceValue; } Type::Enum IfcPropertyReferenceValue::Class() { return Type::IfcPropertyReferenceValue; } IfcPropertyReferenceValue::IfcPropertyReferenceValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyReferenceValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyReferenceValue::IfcPropertyReferenceValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcLabel v3_UsageName, IfcObjectReferenceSelect v4_PropertyReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_UsageName); e->setArgument(3,v4_PropertyReference); entity = e; } +IfcPropertyReferenceValue::IfcPropertyReferenceValue(IfcIdentifier v1_Name, optional v2_Description, optional v3_UsageName, IfcObjectReferenceSelect v4_PropertyReference) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_UsageName) { e->setArgument(2,(*v3_UsageName)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_PropertyReference)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertySet SHARED_PTR< IfcTemplatedEntityList > IfcPropertySet::HasProperties() { RETURN_AS_LIST(IfcProperty,4) } void IfcPropertySet::setHasProperties(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9118,7 +9118,7 @@ bool IfcPropertySet::is(Type::Enum v) const { return v == Type::IfcPropertySet | Type::Enum IfcPropertySet::type() const { return Type::IfcPropertySet; } Type::Enum IfcPropertySet::Class() { return Type::IfcPropertySet; } IfcPropertySet::IfcPropertySet(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertySet)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertySet::IfcPropertySet(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_HasProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_HasProperties->generalize()); entity = e; } +IfcPropertySet::IfcPropertySet(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_HasProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_HasProperties)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertySetDefinition IfcRelDefinesByProperties::list IfcPropertySetDefinition::PropertyDefinitionOf() { RETURN_INVERSE(IfcRelDefinesByProperties) } IfcTypeObject::list IfcPropertySetDefinition::DefinesType() { RETURN_INVERSE(IfcTypeObject) } @@ -9126,7 +9126,7 @@ bool IfcPropertySetDefinition::is(Type::Enum v) const { return v == Type::IfcPro Type::Enum IfcPropertySetDefinition::type() const { return Type::IfcPropertySetDefinition; } Type::Enum IfcPropertySetDefinition::Class() { return Type::IfcPropertySetDefinition; } IfcPropertySetDefinition::IfcPropertySetDefinition(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertySetDefinition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertySetDefinition::IfcPropertySetDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcPropertySetDefinition::IfcPropertySetDefinition(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertySingleValue bool IfcPropertySingleValue::hasNominalValue() { return !entity->getArgument(2)->isNull(); } IfcValue IfcPropertySingleValue::NominalValue() { return *entity->getArgument(2); } @@ -9138,7 +9138,7 @@ bool IfcPropertySingleValue::is(Type::Enum v) const { return v == Type::IfcPrope Type::Enum IfcPropertySingleValue::type() const { return Type::IfcPropertySingleValue; } Type::Enum IfcPropertySingleValue::Class() { return Type::IfcPropertySingleValue; } IfcPropertySingleValue::IfcPropertySingleValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertySingleValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertySingleValue::IfcPropertySingleValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcValue v3_NominalValue, IfcUnit v4_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_NominalValue); e->setArgument(3,v4_Unit); entity = e; } +IfcPropertySingleValue::IfcPropertySingleValue(IfcIdentifier v1_Name, optional v2_Description, optional v3_NominalValue, optional v4_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_NominalValue) { e->setArgument(2,(*v3_NominalValue)); } else { e->setArgument(2); } ; if (v4_Unit) { e->setArgument(3,(*v4_Unit)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPropertyTableValue SHARED_PTR< IfcTemplatedEntityList > IfcPropertyTableValue::DefiningValues() { RETURN_AS_LIST(IfcAbstractSelect,2) } void IfcPropertyTableValue::setDefiningValues(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v->generalize()); } @@ -9157,7 +9157,7 @@ bool IfcPropertyTableValue::is(Type::Enum v) const { return v == Type::IfcProper Type::Enum IfcPropertyTableValue::type() const { return Type::IfcPropertyTableValue; } Type::Enum IfcPropertyTableValue::Class() { return Type::IfcPropertyTableValue; } IfcPropertyTableValue::IfcPropertyTableValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcPropertyTableValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPropertyTableValue::IfcPropertyTableValue(IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_DefiningValues, IfcEntities v4_DefinedValues, IfcText v5_Expression, IfcUnit v6_DefiningUnit, IfcUnit v7_DefinedUnit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_DefiningValues); e->setArgument(3,v4_DefinedValues); e->setArgument(4,v5_Expression); e->setArgument(5,v6_DefiningUnit); e->setArgument(6,v7_DefinedUnit); entity = e; } +IfcPropertyTableValue::IfcPropertyTableValue(IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_DefiningValues, IfcEntities v4_DefinedValues, optional v5_Expression, optional v6_DefiningUnit, optional v7_DefinedUnit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_DefiningValues)); e->setArgument(3,(v4_DefinedValues)); if (v5_Expression) { e->setArgument(4,(*v5_Expression)); } else { e->setArgument(4); } ; if (v6_DefiningUnit) { e->setArgument(5,(*v6_DefiningUnit)); } else { e->setArgument(5); } ; if (v7_DefinedUnit) { e->setArgument(6,(*v7_DefinedUnit)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProtectiveDeviceType IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum IfcProtectiveDeviceType::PredefinedType() { return IfcProtectiveDeviceTypeEnum::FromString(*entity->getArgument(9)); } void IfcProtectiveDeviceType::setPredefinedType(IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcProtectiveDeviceTypeEnum::ToString(v)); } @@ -9165,7 +9165,7 @@ bool IfcProtectiveDeviceType::is(Type::Enum v) const { return v == Type::IfcProt Type::Enum IfcProtectiveDeviceType::type() const { return Type::IfcProtectiveDeviceType; } Type::Enum IfcProtectiveDeviceType::Class() { return Type::IfcProtectiveDeviceType; } IfcProtectiveDeviceType::IfcProtectiveDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcProtectiveDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProtectiveDeviceType::IfcProtectiveDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcProtectiveDeviceType::IfcProtectiveDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcProtectiveDeviceTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcProxy IfcObjectTypeEnum::IfcObjectTypeEnum IfcProxy::ProxyType() { return IfcObjectTypeEnum::FromString(*entity->getArgument(7)); } void IfcProxy::setProxyType(IfcObjectTypeEnum::IfcObjectTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v,IfcObjectTypeEnum::ToString(v)); } @@ -9176,7 +9176,7 @@ bool IfcProxy::is(Type::Enum v) const { return v == Type::IfcProxy || IfcProduct Type::Enum IfcProxy::type() const { return Type::IfcProxy; } Type::Enum IfcProxy::Class() { return Type::IfcProxy; } IfcProxy::IfcProxy(IfcAbstractEntityPtr e) { if (!is(Type::IfcProxy)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcProxy::IfcProxy(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcObjectTypeEnum::IfcObjectTypeEnum v8_ProxyType, IfcLabel v9_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_ProxyType); e->setArgument(8,v9_Tag); entity = e; } +IfcProxy::IfcProxy(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcObjectTypeEnum::IfcObjectTypeEnum v8_ProxyType, optional v9_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,v8_ProxyType,IfcObjectTypeEnum::ToString(v8_ProxyType)); if (v9_Tag) { e->setArgument(8,(*v9_Tag)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcPumpType IfcPumpTypeEnum::IfcPumpTypeEnum IfcPumpType::PredefinedType() { return IfcPumpTypeEnum::FromString(*entity->getArgument(9)); } void IfcPumpType::setPredefinedType(IfcPumpTypeEnum::IfcPumpTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcPumpTypeEnum::ToString(v)); } @@ -9184,7 +9184,7 @@ bool IfcPumpType::is(Type::Enum v) const { return v == Type::IfcPumpType || IfcF Type::Enum IfcPumpType::type() const { return Type::IfcPumpType; } Type::Enum IfcPumpType::Class() { return Type::IfcPumpType; } IfcPumpType::IfcPumpType(IfcAbstractEntityPtr e) { if (!is(Type::IfcPumpType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcPumpType::IfcPumpType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPumpTypeEnum::IfcPumpTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcPumpType::IfcPumpType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPumpTypeEnum::IfcPumpTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcPumpTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityArea IfcAreaMeasure IfcQuantityArea::AreaValue() { return *entity->getArgument(3); } void IfcQuantityArea::setAreaValue(IfcAreaMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9192,7 +9192,7 @@ bool IfcQuantityArea::is(Type::Enum v) const { return v == Type::IfcQuantityArea Type::Enum IfcQuantityArea::type() const { return Type::IfcQuantityArea; } Type::Enum IfcQuantityArea::Class() { return Type::IfcQuantityArea; } IfcQuantityArea::IfcQuantityArea(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityArea)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityArea::IfcQuantityArea(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcAreaMeasure v4_AreaValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_AreaValue); entity = e; } +IfcQuantityArea::IfcQuantityArea(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcAreaMeasure v4_AreaValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_AreaValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityCount IfcCountMeasure IfcQuantityCount::CountValue() { return *entity->getArgument(3); } void IfcQuantityCount::setCountValue(IfcCountMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9200,7 +9200,7 @@ bool IfcQuantityCount::is(Type::Enum v) const { return v == Type::IfcQuantityCou Type::Enum IfcQuantityCount::type() const { return Type::IfcQuantityCount; } Type::Enum IfcQuantityCount::Class() { return Type::IfcQuantityCount; } IfcQuantityCount::IfcQuantityCount(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityCount)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityCount::IfcQuantityCount(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcCountMeasure v4_CountValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_CountValue); entity = e; } +IfcQuantityCount::IfcQuantityCount(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcCountMeasure v4_CountValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_CountValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityLength IfcLengthMeasure IfcQuantityLength::LengthValue() { return *entity->getArgument(3); } void IfcQuantityLength::setLengthValue(IfcLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9208,7 +9208,7 @@ bool IfcQuantityLength::is(Type::Enum v) const { return v == Type::IfcQuantityLe Type::Enum IfcQuantityLength::type() const { return Type::IfcQuantityLength; } Type::Enum IfcQuantityLength::Class() { return Type::IfcQuantityLength; } IfcQuantityLength::IfcQuantityLength(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityLength)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityLength::IfcQuantityLength(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcLengthMeasure v4_LengthValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_LengthValue); entity = e; } +IfcQuantityLength::IfcQuantityLength(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcLengthMeasure v4_LengthValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_LengthValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityTime IfcTimeMeasure IfcQuantityTime::TimeValue() { return *entity->getArgument(3); } void IfcQuantityTime::setTimeValue(IfcTimeMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9216,7 +9216,7 @@ bool IfcQuantityTime::is(Type::Enum v) const { return v == Type::IfcQuantityTime Type::Enum IfcQuantityTime::type() const { return Type::IfcQuantityTime; } Type::Enum IfcQuantityTime::Class() { return Type::IfcQuantityTime; } IfcQuantityTime::IfcQuantityTime(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityTime)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityTime::IfcQuantityTime(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcTimeMeasure v4_TimeValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_TimeValue); entity = e; } +IfcQuantityTime::IfcQuantityTime(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcTimeMeasure v4_TimeValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_TimeValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityVolume IfcVolumeMeasure IfcQuantityVolume::VolumeValue() { return *entity->getArgument(3); } void IfcQuantityVolume::setVolumeValue(IfcVolumeMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9224,7 +9224,7 @@ bool IfcQuantityVolume::is(Type::Enum v) const { return v == Type::IfcQuantityVo Type::Enum IfcQuantityVolume::type() const { return Type::IfcQuantityVolume; } Type::Enum IfcQuantityVolume::Class() { return Type::IfcQuantityVolume; } IfcQuantityVolume::IfcQuantityVolume(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityVolume)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityVolume::IfcQuantityVolume(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcVolumeMeasure v4_VolumeValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_VolumeValue); entity = e; } +IfcQuantityVolume::IfcQuantityVolume(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcVolumeMeasure v4_VolumeValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_VolumeValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcQuantityWeight IfcMassMeasure IfcQuantityWeight::WeightValue() { return *entity->getArgument(3); } void IfcQuantityWeight::setWeightValue(IfcMassMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9232,13 +9232,13 @@ bool IfcQuantityWeight::is(Type::Enum v) const { return v == Type::IfcQuantityWe Type::Enum IfcQuantityWeight::type() const { return Type::IfcQuantityWeight; } Type::Enum IfcQuantityWeight::Class() { return Type::IfcQuantityWeight; } IfcQuantityWeight::IfcQuantityWeight(IfcAbstractEntityPtr e) { if (!is(Type::IfcQuantityWeight)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcQuantityWeight::IfcQuantityWeight(IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcMassMeasure v4_WeightValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_Unit); e->setArgument(3,v4_WeightValue); entity = e; } +IfcQuantityWeight::IfcQuantityWeight(IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcMassMeasure v4_WeightValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Unit)); e->setArgument(3,(v4_WeightValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRadiusDimension bool IfcRadiusDimension::is(Type::Enum v) const { return v == Type::IfcRadiusDimension || IfcDimensionCurveDirectedCallout::is(v); } Type::Enum IfcRadiusDimension::type() const { return Type::IfcRadiusDimension; } Type::Enum IfcRadiusDimension::Class() { return Type::IfcRadiusDimension; } IfcRadiusDimension::IfcRadiusDimension(IfcAbstractEntityPtr e) { if (!is(Type::IfcRadiusDimension)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRadiusDimension::IfcRadiusDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcRadiusDimension::IfcRadiusDimension(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRailing bool IfcRailing::hasPredefinedType() { return !entity->getArgument(8)->isNull(); } IfcRailingTypeEnum::IfcRailingTypeEnum IfcRailing::PredefinedType() { return IfcRailingTypeEnum::FromString(*entity->getArgument(8)); } @@ -9247,7 +9247,7 @@ bool IfcRailing::is(Type::Enum v) const { return v == Type::IfcRailing || IfcBui Type::Enum IfcRailing::type() const { return Type::IfcRailing; } Type::Enum IfcRailing::Class() { return Type::IfcRailing; } IfcRailing::IfcRailing(IfcAbstractEntityPtr e) { if (!is(Type::IfcRailing)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRailing::IfcRailing(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRailingTypeEnum::IfcRailingTypeEnum v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_PredefinedType); entity = e; } +IfcRailing::IfcRailing(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_PredefinedType) { e->setArgument(8,*v9_PredefinedType,IfcRailingTypeEnum::ToString(*v9_PredefinedType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRailingType IfcRailingTypeEnum::IfcRailingTypeEnum IfcRailingType::PredefinedType() { return IfcRailingTypeEnum::FromString(*entity->getArgument(9)); } void IfcRailingType::setPredefinedType(IfcRailingTypeEnum::IfcRailingTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcRailingTypeEnum::ToString(v)); } @@ -9255,7 +9255,7 @@ bool IfcRailingType::is(Type::Enum v) const { return v == Type::IfcRailingType | Type::Enum IfcRailingType::type() const { return Type::IfcRailingType; } Type::Enum IfcRailingType::Class() { return Type::IfcRailingType; } IfcRailingType::IfcRailingType(IfcAbstractEntityPtr e) { if (!is(Type::IfcRailingType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRailingType::IfcRailingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcRailingTypeEnum::IfcRailingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcRailingType::IfcRailingType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcRailingTypeEnum::IfcRailingTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcRailingTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRamp IfcRampTypeEnum::IfcRampTypeEnum IfcRamp::ShapeType() { return IfcRampTypeEnum::FromString(*entity->getArgument(8)); } void IfcRamp::setShapeType(IfcRampTypeEnum::IfcRampTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcRampTypeEnum::ToString(v)); } @@ -9263,13 +9263,13 @@ bool IfcRamp::is(Type::Enum v) const { return v == Type::IfcRamp || IfcBuildingE Type::Enum IfcRamp::type() const { return Type::IfcRamp; } Type::Enum IfcRamp::Class() { return Type::IfcRamp; } IfcRamp::IfcRamp(IfcAbstractEntityPtr e) { if (!is(Type::IfcRamp)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRamp::IfcRamp(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRampTypeEnum::IfcRampTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ShapeType); entity = e; } +IfcRamp::IfcRamp(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcRampTypeEnum::IfcRampTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_ShapeType,IfcRampTypeEnum::ToString(v9_ShapeType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRampFlight bool IfcRampFlight::is(Type::Enum v) const { return v == Type::IfcRampFlight || IfcBuildingElement::is(v); } Type::Enum IfcRampFlight::type() const { return Type::IfcRampFlight; } Type::Enum IfcRampFlight::Class() { return Type::IfcRampFlight; } IfcRampFlight::IfcRampFlight(IfcAbstractEntityPtr e) { if (!is(Type::IfcRampFlight)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRampFlight::IfcRampFlight(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcRampFlight::IfcRampFlight(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRampFlightType IfcRampFlightTypeEnum::IfcRampFlightTypeEnum IfcRampFlightType::PredefinedType() { return IfcRampFlightTypeEnum::FromString(*entity->getArgument(9)); } void IfcRampFlightType::setPredefinedType(IfcRampFlightTypeEnum::IfcRampFlightTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcRampFlightTypeEnum::ToString(v)); } @@ -9277,7 +9277,7 @@ bool IfcRampFlightType::is(Type::Enum v) const { return v == Type::IfcRampFlight Type::Enum IfcRampFlightType::type() const { return Type::IfcRampFlightType; } Type::Enum IfcRampFlightType::Class() { return Type::IfcRampFlightType; } IfcRampFlightType::IfcRampFlightType(IfcAbstractEntityPtr e) { if (!is(Type::IfcRampFlightType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRampFlightType::IfcRampFlightType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcRampFlightTypeEnum::IfcRampFlightTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcRampFlightType::IfcRampFlightType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcRampFlightTypeEnum::IfcRampFlightTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcRampFlightTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRationalBezierCurve std::vector /*[2:?]*/ IfcRationalBezierCurve::WeightsData() { return *entity->getArgument(5); } void IfcRationalBezierCurve::setWeightsData(std::vector /*[2:?]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9285,7 +9285,7 @@ bool IfcRationalBezierCurve::is(Type::Enum v) const { return v == Type::IfcRatio Type::Enum IfcRationalBezierCurve::type() const { return Type::IfcRationalBezierCurve; } Type::Enum IfcRationalBezierCurve::Class() { return Type::IfcRationalBezierCurve; } IfcRationalBezierCurve::IfcRationalBezierCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcRationalBezierCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRationalBezierCurve::IfcRationalBezierCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect, std::vector /*[2:?]*/ v6_WeightsData) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Degree); e->setArgument(1,v2_ControlPointsList->generalize()); e->setArgument(2,v3_CurveForm); e->setArgument(3,v4_ClosedCurve); e->setArgument(4,v5_SelfIntersect); e->setArgument(5,v6_WeightsData); entity = e; } +IfcRationalBezierCurve::IfcRationalBezierCurve(int v1_Degree, SHARED_PTR< IfcTemplatedEntityList > v2_ControlPointsList, IfcBSplineCurveForm::IfcBSplineCurveForm v3_CurveForm, bool v4_ClosedCurve, bool v5_SelfIntersect, std::vector /*[2:?]*/ v6_WeightsData) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Degree)); e->setArgument(1,(v2_ControlPointsList)->generalize()); e->setArgument(2,v3_CurveForm,IfcBSplineCurveForm::ToString(v3_CurveForm)); e->setArgument(3,(v4_ClosedCurve)); e->setArgument(4,(v5_SelfIntersect)); e->setArgument(5,(v6_WeightsData)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRectangleHollowProfileDef IfcPositiveLengthMeasure IfcRectangleHollowProfileDef::WallThickness() { return *entity->getArgument(5); } void IfcRectangleHollowProfileDef::setWallThickness(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9299,7 +9299,7 @@ bool IfcRectangleHollowProfileDef::is(Type::Enum v) const { return v == Type::If Type::Enum IfcRectangleHollowProfileDef::type() const { return Type::IfcRectangleHollowProfileDef; } Type::Enum IfcRectangleHollowProfileDef::Class() { return Type::IfcRectangleHollowProfileDef; } IfcRectangleHollowProfileDef::IfcRectangleHollowProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcRectangleHollowProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRectangleHollowProfileDef::IfcRectangleHollowProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_InnerFilletRadius, IfcPositiveLengthMeasure v8_OuterFilletRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_XDim); e->setArgument(4,v5_YDim); e->setArgument(5,v6_WallThickness); e->setArgument(6,v7_InnerFilletRadius); e->setArgument(7,v8_OuterFilletRadius); entity = e; } +IfcRectangleHollowProfileDef::IfcRectangleHollowProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_WallThickness, optional v7_InnerFilletRadius, optional v8_OuterFilletRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_XDim)); e->setArgument(4,(v5_YDim)); e->setArgument(5,(v6_WallThickness)); if (v7_InnerFilletRadius) { e->setArgument(6,(*v7_InnerFilletRadius)); } else { e->setArgument(6); } ; if (v8_OuterFilletRadius) { e->setArgument(7,(*v8_OuterFilletRadius)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRectangleProfileDef IfcPositiveLengthMeasure IfcRectangleProfileDef::XDim() { return *entity->getArgument(3); } void IfcRectangleProfileDef::setXDim(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -9309,7 +9309,7 @@ bool IfcRectangleProfileDef::is(Type::Enum v) const { return v == Type::IfcRecta Type::Enum IfcRectangleProfileDef::type() const { return Type::IfcRectangleProfileDef; } Type::Enum IfcRectangleProfileDef::Class() { return Type::IfcRectangleProfileDef; } IfcRectangleProfileDef::IfcRectangleProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcRectangleProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRectangleProfileDef::IfcRectangleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_XDim); e->setArgument(4,v5_YDim); entity = e; } +IfcRectangleProfileDef::IfcRectangleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_XDim)); e->setArgument(4,(v5_YDim)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRectangularPyramid IfcPositiveLengthMeasure IfcRectangularPyramid::XLength() { return *entity->getArgument(1); } void IfcRectangularPyramid::setXLength(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -9321,7 +9321,7 @@ bool IfcRectangularPyramid::is(Type::Enum v) const { return v == Type::IfcRectan Type::Enum IfcRectangularPyramid::type() const { return Type::IfcRectangularPyramid; } Type::Enum IfcRectangularPyramid::Class() { return Type::IfcRectangularPyramid; } IfcRectangularPyramid::IfcRectangularPyramid(IfcAbstractEntityPtr e) { if (!is(Type::IfcRectangularPyramid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRectangularPyramid::IfcRectangularPyramid(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_XLength, IfcPositiveLengthMeasure v3_YLength, IfcPositiveLengthMeasure v4_Height) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_XLength); e->setArgument(2,v3_YLength); e->setArgument(3,v4_Height); entity = e; } +IfcRectangularPyramid::IfcRectangularPyramid(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_XLength, IfcPositiveLengthMeasure v3_YLength, IfcPositiveLengthMeasure v4_Height) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_XLength)); e->setArgument(2,(v3_YLength)); e->setArgument(3,(v4_Height)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRectangularTrimmedSurface IfcSurface* IfcRectangularTrimmedSurface::BasisSurface() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcRectangularTrimmedSurface::setBasisSurface(IfcSurface* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9341,7 +9341,7 @@ bool IfcRectangularTrimmedSurface::is(Type::Enum v) const { return v == Type::If Type::Enum IfcRectangularTrimmedSurface::type() const { return Type::IfcRectangularTrimmedSurface; } Type::Enum IfcRectangularTrimmedSurface::Class() { return Type::IfcRectangularTrimmedSurface; } IfcRectangularTrimmedSurface::IfcRectangularTrimmedSurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcRectangularTrimmedSurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRectangularTrimmedSurface::IfcRectangularTrimmedSurface(IfcSurface* v1_BasisSurface, IfcParameterValue v2_U1, IfcParameterValue v3_V1, IfcParameterValue v4_U2, IfcParameterValue v5_V2, bool v6_Usense, bool v7_Vsense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisSurface); e->setArgument(1,v2_U1); e->setArgument(2,v3_V1); e->setArgument(3,v4_U2); e->setArgument(4,v5_V2); e->setArgument(5,v6_Usense); e->setArgument(6,v7_Vsense); entity = e; } +IfcRectangularTrimmedSurface::IfcRectangularTrimmedSurface(IfcSurface* v1_BasisSurface, IfcParameterValue v2_U1, IfcParameterValue v3_V1, IfcParameterValue v4_U2, IfcParameterValue v5_V2, bool v6_Usense, bool v7_Vsense) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisSurface)); e->setArgument(1,(v2_U1)); e->setArgument(2,(v3_V1)); e->setArgument(3,(v4_U2)); e->setArgument(4,(v5_V2)); e->setArgument(5,(v6_Usense)); e->setArgument(6,(v7_Vsense)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReferencesValueDocument IfcDocumentSelect IfcReferencesValueDocument::ReferencedDocument() { return *entity->getArgument(0); } void IfcReferencesValueDocument::setReferencedDocument(IfcDocumentSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9357,7 +9357,7 @@ bool IfcReferencesValueDocument::is(Type::Enum v) const { return v == Type::IfcR Type::Enum IfcReferencesValueDocument::type() const { return Type::IfcReferencesValueDocument; } Type::Enum IfcReferencesValueDocument::Class() { return Type::IfcReferencesValueDocument; } IfcReferencesValueDocument::IfcReferencesValueDocument(IfcAbstractEntityPtr e) { if (!is(Type::IfcReferencesValueDocument)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReferencesValueDocument::IfcReferencesValueDocument(IfcDocumentSelect v1_ReferencedDocument, SHARED_PTR< IfcTemplatedEntityList > v2_ReferencingValues, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ReferencedDocument); e->setArgument(1,v2_ReferencingValues->generalize()); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcReferencesValueDocument::IfcReferencesValueDocument(IfcDocumentSelect v1_ReferencedDocument, SHARED_PTR< IfcTemplatedEntityList > v2_ReferencingValues, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ReferencedDocument)); e->setArgument(1,(v2_ReferencingValues)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRegularTimeSeries IfcTimeMeasure IfcRegularTimeSeries::TimeStep() { return *entity->getArgument(8); } void IfcRegularTimeSeries::setTimeStep(IfcTimeMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v); } @@ -9367,7 +9367,7 @@ bool IfcRegularTimeSeries::is(Type::Enum v) const { return v == Type::IfcRegular Type::Enum IfcRegularTimeSeries::type() const { return Type::IfcRegularTimeSeries; } Type::Enum IfcRegularTimeSeries::Class() { return Type::IfcRegularTimeSeries; } IfcRegularTimeSeries::IfcRegularTimeSeries(IfcAbstractEntityPtr e) { if (!is(Type::IfcRegularTimeSeries)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRegularTimeSeries::IfcRegularTimeSeries(IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit, IfcTimeMeasure v9_TimeStep, SHARED_PTR< IfcTemplatedEntityList > v10_Values) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_StartTime); e->setArgument(3,v4_EndTime); e->setArgument(4,v5_TimeSeriesDataType); e->setArgument(5,v6_DataOrigin); e->setArgument(6,v7_UserDefinedDataOrigin); e->setArgument(7,v8_Unit); e->setArgument(8,v9_TimeStep); e->setArgument(9,v10_Values->generalize()); entity = e; } +IfcRegularTimeSeries::IfcRegularTimeSeries(IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit, IfcTimeMeasure v9_TimeStep, SHARED_PTR< IfcTemplatedEntityList > v10_Values) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_StartTime)); e->setArgument(3,(v4_EndTime)); e->setArgument(4,v5_TimeSeriesDataType,IfcTimeSeriesDataTypeEnum::ToString(v5_TimeSeriesDataType)); e->setArgument(5,v6_DataOrigin,IfcDataOriginEnum::ToString(v6_DataOrigin)); if (v7_UserDefinedDataOrigin) { e->setArgument(6,(*v7_UserDefinedDataOrigin)); } else { e->setArgument(6); } ; if (v8_Unit) { e->setArgument(7,(*v8_Unit)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_TimeStep)); e->setArgument(9,(v10_Values)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReinforcementBarProperties IfcAreaMeasure IfcReinforcementBarProperties::TotalCrossSectionArea() { return *entity->getArgument(0); } void IfcReinforcementBarProperties::setTotalCrossSectionArea(IfcAreaMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9389,7 +9389,7 @@ bool IfcReinforcementBarProperties::is(Type::Enum v) const { return v == Type::I Type::Enum IfcReinforcementBarProperties::type() const { return Type::IfcReinforcementBarProperties; } Type::Enum IfcReinforcementBarProperties::Class() { return Type::IfcReinforcementBarProperties; } IfcReinforcementBarProperties::IfcReinforcementBarProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcReinforcementBarProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReinforcementBarProperties::IfcReinforcementBarProperties(IfcAreaMeasure v1_TotalCrossSectionArea, IfcLabel v2_SteelGrade, IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum v3_BarSurface, IfcLengthMeasure v4_EffectiveDepth, IfcPositiveLengthMeasure v5_NominalBarDiameter, IfcCountMeasure v6_BarCount) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TotalCrossSectionArea); e->setArgument(1,v2_SteelGrade); e->setArgument(2,v3_BarSurface); e->setArgument(3,v4_EffectiveDepth); e->setArgument(4,v5_NominalBarDiameter); e->setArgument(5,v6_BarCount); entity = e; } +IfcReinforcementBarProperties::IfcReinforcementBarProperties(IfcAreaMeasure v1_TotalCrossSectionArea, IfcLabel v2_SteelGrade, optional v3_BarSurface, optional v4_EffectiveDepth, optional v5_NominalBarDiameter, optional v6_BarCount) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TotalCrossSectionArea)); e->setArgument(1,(v2_SteelGrade)); if (v3_BarSurface) { e->setArgument(2,*v3_BarSurface,IfcReinforcingBarSurfaceEnum::ToString(*v3_BarSurface)); } else { e->setArgument(2); } ; if (v4_EffectiveDepth) { e->setArgument(3,(*v4_EffectiveDepth)); } else { e->setArgument(3); } ; if (v5_NominalBarDiameter) { e->setArgument(4,(*v5_NominalBarDiameter)); } else { e->setArgument(4); } ; if (v6_BarCount) { e->setArgument(5,(*v6_BarCount)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReinforcementDefinitionProperties bool IfcReinforcementDefinitionProperties::hasDefinitionType() { return !entity->getArgument(4)->isNull(); } IfcLabel IfcReinforcementDefinitionProperties::DefinitionType() { return *entity->getArgument(4); } @@ -9400,7 +9400,7 @@ bool IfcReinforcementDefinitionProperties::is(Type::Enum v) const { return v == Type::Enum IfcReinforcementDefinitionProperties::type() const { return Type::IfcReinforcementDefinitionProperties; } Type::Enum IfcReinforcementDefinitionProperties::Class() { return Type::IfcReinforcementDefinitionProperties; } IfcReinforcementDefinitionProperties::IfcReinforcementDefinitionProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcReinforcementDefinitionProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReinforcementDefinitionProperties::IfcReinforcementDefinitionProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_DefinitionType, SHARED_PTR< IfcTemplatedEntityList > v6_ReinforcementSectionDefinitions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_DefinitionType); e->setArgument(5,v6_ReinforcementSectionDefinitions->generalize()); entity = e; } +IfcReinforcementDefinitionProperties::IfcReinforcementDefinitionProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_DefinitionType, SHARED_PTR< IfcTemplatedEntityList > v6_ReinforcementSectionDefinitions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_DefinitionType) { e->setArgument(4,(*v5_DefinitionType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ReinforcementSectionDefinitions)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReinforcingBar IfcPositiveLengthMeasure IfcReinforcingBar::NominalDiameter() { return *entity->getArgument(9); } void IfcReinforcingBar::setNominalDiameter(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v); } @@ -9418,7 +9418,7 @@ bool IfcReinforcingBar::is(Type::Enum v) const { return v == Type::IfcReinforcin Type::Enum IfcReinforcingBar::type() const { return Type::IfcReinforcingBar; } Type::Enum IfcReinforcingBar::Class() { return Type::IfcReinforcingBar; } IfcReinforcingBar::IfcReinforcingBar(IfcAbstractEntityPtr e) { if (!is(Type::IfcReinforcingBar)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReinforcingBar::IfcReinforcingBar(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcPositiveLengthMeasure v10_NominalDiameter, IfcAreaMeasure v11_CrossSectionArea, IfcPositiveLengthMeasure v12_BarLength, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v13_BarRole, IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum v14_BarSurface) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_SteelGrade); e->setArgument(9,v10_NominalDiameter); e->setArgument(10,v11_CrossSectionArea); e->setArgument(11,v12_BarLength); e->setArgument(12,v13_BarRole); e->setArgument(13,v14_BarSurface); entity = e; } +IfcReinforcingBar::IfcReinforcingBar(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, IfcPositiveLengthMeasure v10_NominalDiameter, IfcAreaMeasure v11_CrossSectionArea, optional v12_BarLength, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v13_BarRole, optional v14_BarSurface) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_SteelGrade) { e->setArgument(8,(*v9_SteelGrade)); } else { e->setArgument(8); } ; e->setArgument(9,(v10_NominalDiameter)); e->setArgument(10,(v11_CrossSectionArea)); if (v12_BarLength) { e->setArgument(11,(*v12_BarLength)); } else { e->setArgument(11); } ; e->setArgument(12,v13_BarRole,IfcReinforcingBarRoleEnum::ToString(v13_BarRole)); if (v14_BarSurface) { e->setArgument(13,*v14_BarSurface,IfcReinforcingBarSurfaceEnum::ToString(*v14_BarSurface)); } else { e->setArgument(13); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReinforcingElement bool IfcReinforcingElement::hasSteelGrade() { return !entity->getArgument(8)->isNull(); } IfcLabel IfcReinforcingElement::SteelGrade() { return *entity->getArgument(8); } @@ -9427,7 +9427,7 @@ bool IfcReinforcingElement::is(Type::Enum v) const { return v == Type::IfcReinfo Type::Enum IfcReinforcingElement::type() const { return Type::IfcReinforcingElement; } Type::Enum IfcReinforcingElement::Class() { return Type::IfcReinforcingElement; } IfcReinforcingElement::IfcReinforcingElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcReinforcingElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReinforcingElement::IfcReinforcingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_SteelGrade); entity = e; } +IfcReinforcingElement::IfcReinforcingElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_SteelGrade) { e->setArgument(8,(*v9_SteelGrade)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcReinforcingMesh bool IfcReinforcingMesh::hasMeshLength() { return !entity->getArgument(9)->isNull(); } IfcPositiveLengthMeasure IfcReinforcingMesh::MeshLength() { return *entity->getArgument(9); } @@ -9451,13 +9451,13 @@ bool IfcReinforcingMesh::is(Type::Enum v) const { return v == Type::IfcReinforci Type::Enum IfcReinforcingMesh::type() const { return Type::IfcReinforcingMesh; } Type::Enum IfcReinforcingMesh::Class() { return Type::IfcReinforcingMesh; } IfcReinforcingMesh::IfcReinforcingMesh(IfcAbstractEntityPtr e) { if (!is(Type::IfcReinforcingMesh)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcReinforcingMesh::IfcReinforcingMesh(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcPositiveLengthMeasure v10_MeshLength, IfcPositiveLengthMeasure v11_MeshWidth, IfcPositiveLengthMeasure v12_LongitudinalBarNominalDiameter, IfcPositiveLengthMeasure v13_TransverseBarNominalDiameter, IfcAreaMeasure v14_LongitudinalBarCrossSectionArea, IfcAreaMeasure v15_TransverseBarCrossSectionArea, IfcPositiveLengthMeasure v16_LongitudinalBarSpacing, IfcPositiveLengthMeasure v17_TransverseBarSpacing) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_SteelGrade); e->setArgument(9,v10_MeshLength); e->setArgument(10,v11_MeshWidth); e->setArgument(11,v12_LongitudinalBarNominalDiameter); e->setArgument(12,v13_TransverseBarNominalDiameter); e->setArgument(13,v14_LongitudinalBarCrossSectionArea); e->setArgument(14,v15_TransverseBarCrossSectionArea); e->setArgument(15,v16_LongitudinalBarSpacing); e->setArgument(16,v17_TransverseBarSpacing); entity = e; } +IfcReinforcingMesh::IfcReinforcingMesh(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, optional v10_MeshLength, optional v11_MeshWidth, IfcPositiveLengthMeasure v12_LongitudinalBarNominalDiameter, IfcPositiveLengthMeasure v13_TransverseBarNominalDiameter, IfcAreaMeasure v14_LongitudinalBarCrossSectionArea, IfcAreaMeasure v15_TransverseBarCrossSectionArea, IfcPositiveLengthMeasure v16_LongitudinalBarSpacing, IfcPositiveLengthMeasure v17_TransverseBarSpacing) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_SteelGrade) { e->setArgument(8,(*v9_SteelGrade)); } else { e->setArgument(8); } ; if (v10_MeshLength) { e->setArgument(9,(*v10_MeshLength)); } else { e->setArgument(9); } ; if (v11_MeshWidth) { e->setArgument(10,(*v11_MeshWidth)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_LongitudinalBarNominalDiameter)); e->setArgument(12,(v13_TransverseBarNominalDiameter)); e->setArgument(13,(v14_LongitudinalBarCrossSectionArea)); e->setArgument(14,(v15_TransverseBarCrossSectionArea)); e->setArgument(15,(v16_LongitudinalBarSpacing)); e->setArgument(16,(v17_TransverseBarSpacing)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAggregates bool IfcRelAggregates::is(Type::Enum v) const { return v == Type::IfcRelAggregates || IfcRelDecomposes::is(v); } Type::Enum IfcRelAggregates::type() const { return Type::IfcRelAggregates; } Type::Enum IfcRelAggregates::Class() { return Type::IfcRelAggregates; } IfcRelAggregates::IfcRelAggregates(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAggregates)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAggregates::IfcRelAggregates(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingObject); e->setArgument(5,v6_RelatedObjects->generalize()); entity = e; } +IfcRelAggregates::IfcRelAggregates(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingObject)); e->setArgument(5,(v6_RelatedObjects)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssigns SHARED_PTR< IfcTemplatedEntityList > IfcRelAssigns::RelatedObjects() { RETURN_AS_LIST(IfcObjectDefinition,4) } void IfcRelAssigns::setRelatedObjects(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9468,7 +9468,7 @@ bool IfcRelAssigns::is(Type::Enum v) const { return v == Type::IfcRelAssigns || Type::Enum IfcRelAssigns::type() const { return Type::IfcRelAssigns; } Type::Enum IfcRelAssigns::Class() { return Type::IfcRelAssigns; } IfcRelAssigns::IfcRelAssigns(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssigns)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssigns::IfcRelAssigns(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); entity = e; } +IfcRelAssigns::IfcRelAssigns(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsTasks bool IfcRelAssignsTasks::hasTimeForTask() { return !entity->getArgument(7)->isNull(); } IfcScheduleTimeControl* IfcRelAssignsTasks::TimeForTask() { return reinterpret_pointer_cast(*entity->getArgument(7)); } @@ -9477,7 +9477,7 @@ bool IfcRelAssignsTasks::is(Type::Enum v) const { return v == Type::IfcRelAssign Type::Enum IfcRelAssignsTasks::type() const { return Type::IfcRelAssignsTasks; } Type::Enum IfcRelAssignsTasks::Class() { return Type::IfcRelAssignsTasks; } IfcRelAssignsTasks::IfcRelAssignsTasks(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsTasks)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsTasks::IfcRelAssignsTasks(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl, IfcScheduleTimeControl* v8_TimeForTask) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingControl); e->setArgument(7,v8_TimeForTask); entity = e; } +IfcRelAssignsTasks::IfcRelAssignsTasks(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl, IfcScheduleTimeControl* v8_TimeForTask) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingControl)); e->setArgument(7,(v8_TimeForTask)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToActor IfcActor* IfcRelAssignsToActor::RelatingActor() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToActor::setRelatingActor(IfcActor* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9488,7 +9488,7 @@ bool IfcRelAssignsToActor::is(Type::Enum v) const { return v == Type::IfcRelAssi Type::Enum IfcRelAssignsToActor::type() const { return Type::IfcRelAssignsToActor; } Type::Enum IfcRelAssignsToActor::Class() { return Type::IfcRelAssignsToActor; } IfcRelAssignsToActor::IfcRelAssignsToActor(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToActor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToActor::IfcRelAssignsToActor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingActor); e->setArgument(7,v8_ActingRole); entity = e; } +IfcRelAssignsToActor::IfcRelAssignsToActor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingActor)); e->setArgument(7,(v8_ActingRole)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToControl IfcControl* IfcRelAssignsToControl::RelatingControl() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToControl::setRelatingControl(IfcControl* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9496,7 +9496,7 @@ bool IfcRelAssignsToControl::is(Type::Enum v) const { return v == Type::IfcRelAs Type::Enum IfcRelAssignsToControl::type() const { return Type::IfcRelAssignsToControl; } Type::Enum IfcRelAssignsToControl::Class() { return Type::IfcRelAssignsToControl; } IfcRelAssignsToControl::IfcRelAssignsToControl(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToControl)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToControl::IfcRelAssignsToControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingControl); entity = e; } +IfcRelAssignsToControl::IfcRelAssignsToControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingControl)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToGroup IfcGroup* IfcRelAssignsToGroup::RelatingGroup() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToGroup::setRelatingGroup(IfcGroup* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9504,7 +9504,7 @@ bool IfcRelAssignsToGroup::is(Type::Enum v) const { return v == Type::IfcRelAssi Type::Enum IfcRelAssignsToGroup::type() const { return Type::IfcRelAssignsToGroup; } Type::Enum IfcRelAssignsToGroup::Class() { return Type::IfcRelAssignsToGroup; } IfcRelAssignsToGroup::IfcRelAssignsToGroup(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToGroup)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToGroup::IfcRelAssignsToGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcGroup* v7_RelatingGroup) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingGroup); entity = e; } +IfcRelAssignsToGroup::IfcRelAssignsToGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcGroup* v7_RelatingGroup) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingGroup)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToProcess IfcProcess* IfcRelAssignsToProcess::RelatingProcess() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToProcess::setRelatingProcess(IfcProcess* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9515,7 +9515,7 @@ bool IfcRelAssignsToProcess::is(Type::Enum v) const { return v == Type::IfcRelAs Type::Enum IfcRelAssignsToProcess::type() const { return Type::IfcRelAssignsToProcess; } Type::Enum IfcRelAssignsToProcess::Class() { return Type::IfcRelAssignsToProcess; } IfcRelAssignsToProcess::IfcRelAssignsToProcess(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToProcess)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToProcess::IfcRelAssignsToProcess(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcProcess* v7_RelatingProcess, IfcMeasureWithUnit* v8_QuantityInProcess) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingProcess); e->setArgument(7,v8_QuantityInProcess); entity = e; } +IfcRelAssignsToProcess::IfcRelAssignsToProcess(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcProcess* v7_RelatingProcess, IfcMeasureWithUnit* v8_QuantityInProcess) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingProcess)); e->setArgument(7,(v8_QuantityInProcess)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToProduct IfcProduct* IfcRelAssignsToProduct::RelatingProduct() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToProduct::setRelatingProduct(IfcProduct* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9523,13 +9523,13 @@ bool IfcRelAssignsToProduct::is(Type::Enum v) const { return v == Type::IfcRelAs Type::Enum IfcRelAssignsToProduct::type() const { return Type::IfcRelAssignsToProduct; } Type::Enum IfcRelAssignsToProduct::Class() { return Type::IfcRelAssignsToProduct; } IfcRelAssignsToProduct::IfcRelAssignsToProduct(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToProduct)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToProduct::IfcRelAssignsToProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcProduct* v7_RelatingProduct) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingProduct); entity = e; } +IfcRelAssignsToProduct::IfcRelAssignsToProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcProduct* v7_RelatingProduct) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingProduct)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToProjectOrder bool IfcRelAssignsToProjectOrder::is(Type::Enum v) const { return v == Type::IfcRelAssignsToProjectOrder || IfcRelAssignsToControl::is(v); } Type::Enum IfcRelAssignsToProjectOrder::type() const { return Type::IfcRelAssignsToProjectOrder; } Type::Enum IfcRelAssignsToProjectOrder::Class() { return Type::IfcRelAssignsToProjectOrder; } IfcRelAssignsToProjectOrder::IfcRelAssignsToProjectOrder(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToProjectOrder)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToProjectOrder::IfcRelAssignsToProjectOrder(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingControl); entity = e; } +IfcRelAssignsToProjectOrder::IfcRelAssignsToProjectOrder(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingControl)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssignsToResource IfcResource* IfcRelAssignsToResource::RelatingResource() { return reinterpret_pointer_cast(*entity->getArgument(6)); } void IfcRelAssignsToResource::setRelatingResource(IfcResource* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v); } @@ -9537,7 +9537,7 @@ bool IfcRelAssignsToResource::is(Type::Enum v) const { return v == Type::IfcRelA Type::Enum IfcRelAssignsToResource::type() const { return Type::IfcRelAssignsToResource; } Type::Enum IfcRelAssignsToResource::Class() { return Type::IfcRelAssignsToResource; } IfcRelAssignsToResource::IfcRelAssignsToResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssignsToResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssignsToResource::IfcRelAssignsToResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcResource* v7_RelatingResource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingResource); entity = e; } +IfcRelAssignsToResource::IfcRelAssignsToResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcResource* v7_RelatingResource) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingResource)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociates SHARED_PTR< IfcTemplatedEntityList > IfcRelAssociates::RelatedObjects() { RETURN_AS_LIST(IfcRoot,4) } void IfcRelAssociates::setRelatedObjects(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9545,7 +9545,7 @@ bool IfcRelAssociates::is(Type::Enum v) const { return v == Type::IfcRelAssociat Type::Enum IfcRelAssociates::type() const { return Type::IfcRelAssociates; } Type::Enum IfcRelAssociates::Class() { return Type::IfcRelAssociates; } IfcRelAssociates::IfcRelAssociates(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociates)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociates::IfcRelAssociates(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); entity = e; } +IfcRelAssociates::IfcRelAssociates(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesAppliedValue IfcAppliedValue* IfcRelAssociatesAppliedValue::RelatingAppliedValue() { return reinterpret_pointer_cast(*entity->getArgument(5)); } void IfcRelAssociatesAppliedValue::setRelatingAppliedValue(IfcAppliedValue* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9553,7 +9553,7 @@ bool IfcRelAssociatesAppliedValue::is(Type::Enum v) const { return v == Type::If Type::Enum IfcRelAssociatesAppliedValue::type() const { return Type::IfcRelAssociatesAppliedValue; } Type::Enum IfcRelAssociatesAppliedValue::Class() { return Type::IfcRelAssociatesAppliedValue; } IfcRelAssociatesAppliedValue::IfcRelAssociatesAppliedValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesAppliedValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesAppliedValue::IfcRelAssociatesAppliedValue(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcAppliedValue* v6_RelatingAppliedValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingAppliedValue); entity = e; } +IfcRelAssociatesAppliedValue::IfcRelAssociatesAppliedValue(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcAppliedValue* v6_RelatingAppliedValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingAppliedValue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesApproval IfcApproval* IfcRelAssociatesApproval::RelatingApproval() { return reinterpret_pointer_cast(*entity->getArgument(5)); } void IfcRelAssociatesApproval::setRelatingApproval(IfcApproval* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9561,7 +9561,7 @@ bool IfcRelAssociatesApproval::is(Type::Enum v) const { return v == Type::IfcRel Type::Enum IfcRelAssociatesApproval::type() const { return Type::IfcRelAssociatesApproval; } Type::Enum IfcRelAssociatesApproval::Class() { return Type::IfcRelAssociatesApproval; } IfcRelAssociatesApproval::IfcRelAssociatesApproval(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesApproval)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesApproval::IfcRelAssociatesApproval(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcApproval* v6_RelatingApproval) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingApproval); entity = e; } +IfcRelAssociatesApproval::IfcRelAssociatesApproval(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcApproval* v6_RelatingApproval) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingApproval)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesClassification IfcClassificationNotationSelect IfcRelAssociatesClassification::RelatingClassification() { return *entity->getArgument(5); } void IfcRelAssociatesClassification::setRelatingClassification(IfcClassificationNotationSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9569,7 +9569,7 @@ bool IfcRelAssociatesClassification::is(Type::Enum v) const { return v == Type:: Type::Enum IfcRelAssociatesClassification::type() const { return Type::IfcRelAssociatesClassification; } Type::Enum IfcRelAssociatesClassification::Class() { return Type::IfcRelAssociatesClassification; } IfcRelAssociatesClassification::IfcRelAssociatesClassification(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesClassification)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesClassification::IfcRelAssociatesClassification(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcClassificationNotationSelect v6_RelatingClassification) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingClassification); entity = e; } +IfcRelAssociatesClassification::IfcRelAssociatesClassification(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcClassificationNotationSelect v6_RelatingClassification) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingClassification)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesConstraint IfcLabel IfcRelAssociatesConstraint::Intent() { return *entity->getArgument(5); } void IfcRelAssociatesConstraint::setIntent(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9579,7 +9579,7 @@ bool IfcRelAssociatesConstraint::is(Type::Enum v) const { return v == Type::IfcR Type::Enum IfcRelAssociatesConstraint::type() const { return Type::IfcRelAssociatesConstraint; } Type::Enum IfcRelAssociatesConstraint::Class() { return Type::IfcRelAssociatesConstraint; } IfcRelAssociatesConstraint::IfcRelAssociatesConstraint(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesConstraint)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesConstraint::IfcRelAssociatesConstraint(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLabel v6_Intent, IfcConstraint* v7_RelatingConstraint) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_Intent); e->setArgument(6,v7_RelatingConstraint); entity = e; } +IfcRelAssociatesConstraint::IfcRelAssociatesConstraint(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLabel v6_Intent, IfcConstraint* v7_RelatingConstraint) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_Intent)); e->setArgument(6,(v7_RelatingConstraint)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesDocument IfcDocumentSelect IfcRelAssociatesDocument::RelatingDocument() { return *entity->getArgument(5); } void IfcRelAssociatesDocument::setRelatingDocument(IfcDocumentSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9587,7 +9587,7 @@ bool IfcRelAssociatesDocument::is(Type::Enum v) const { return v == Type::IfcRel Type::Enum IfcRelAssociatesDocument::type() const { return Type::IfcRelAssociatesDocument; } Type::Enum IfcRelAssociatesDocument::Class() { return Type::IfcRelAssociatesDocument; } IfcRelAssociatesDocument::IfcRelAssociatesDocument(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesDocument)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesDocument::IfcRelAssociatesDocument(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcDocumentSelect v6_RelatingDocument) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingDocument); entity = e; } +IfcRelAssociatesDocument::IfcRelAssociatesDocument(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcDocumentSelect v6_RelatingDocument) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingDocument)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesLibrary IfcLibrarySelect IfcRelAssociatesLibrary::RelatingLibrary() { return *entity->getArgument(5); } void IfcRelAssociatesLibrary::setRelatingLibrary(IfcLibrarySelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9595,7 +9595,7 @@ bool IfcRelAssociatesLibrary::is(Type::Enum v) const { return v == Type::IfcRelA Type::Enum IfcRelAssociatesLibrary::type() const { return Type::IfcRelAssociatesLibrary; } Type::Enum IfcRelAssociatesLibrary::Class() { return Type::IfcRelAssociatesLibrary; } IfcRelAssociatesLibrary::IfcRelAssociatesLibrary(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesLibrary)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesLibrary::IfcRelAssociatesLibrary(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLibrarySelect v6_RelatingLibrary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingLibrary); entity = e; } +IfcRelAssociatesLibrary::IfcRelAssociatesLibrary(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLibrarySelect v6_RelatingLibrary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingLibrary)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesMaterial IfcMaterialSelect IfcRelAssociatesMaterial::RelatingMaterial() { return *entity->getArgument(5); } void IfcRelAssociatesMaterial::setRelatingMaterial(IfcMaterialSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9603,7 +9603,7 @@ bool IfcRelAssociatesMaterial::is(Type::Enum v) const { return v == Type::IfcRel Type::Enum IfcRelAssociatesMaterial::type() const { return Type::IfcRelAssociatesMaterial; } Type::Enum IfcRelAssociatesMaterial::Class() { return Type::IfcRelAssociatesMaterial; } IfcRelAssociatesMaterial::IfcRelAssociatesMaterial(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesMaterial)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesMaterial::IfcRelAssociatesMaterial(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcMaterialSelect v6_RelatingMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingMaterial); entity = e; } +IfcRelAssociatesMaterial::IfcRelAssociatesMaterial(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcMaterialSelect v6_RelatingMaterial) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingMaterial)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelAssociatesProfileProperties IfcProfileProperties* IfcRelAssociatesProfileProperties::RelatingProfileProperties() { return reinterpret_pointer_cast(*entity->getArgument(5)); } void IfcRelAssociatesProfileProperties::setRelatingProfileProperties(IfcProfileProperties* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9617,13 +9617,13 @@ bool IfcRelAssociatesProfileProperties::is(Type::Enum v) const { return v == Typ Type::Enum IfcRelAssociatesProfileProperties::type() const { return Type::IfcRelAssociatesProfileProperties; } Type::Enum IfcRelAssociatesProfileProperties::Class() { return Type::IfcRelAssociatesProfileProperties; } IfcRelAssociatesProfileProperties::IfcRelAssociatesProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelAssociatesProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelAssociatesProfileProperties::IfcRelAssociatesProfileProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcProfileProperties* v6_RelatingProfileProperties, IfcShapeAspect* v7_ProfileSectionLocation, IfcOrientationSelect v8_ProfileOrientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingProfileProperties); e->setArgument(6,v7_ProfileSectionLocation); e->setArgument(7,v8_ProfileOrientation); entity = e; } +IfcRelAssociatesProfileProperties::IfcRelAssociatesProfileProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcProfileProperties* v6_RelatingProfileProperties, IfcShapeAspect* v7_ProfileSectionLocation, optional v8_ProfileOrientation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingProfileProperties)); e->setArgument(6,(v7_ProfileSectionLocation)); if (v8_ProfileOrientation) { e->setArgument(7,(*v8_ProfileOrientation)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnects bool IfcRelConnects::is(Type::Enum v) const { return v == Type::IfcRelConnects || IfcRelationship::is(v); } Type::Enum IfcRelConnects::type() const { return Type::IfcRelConnects; } Type::Enum IfcRelConnects::Class() { return Type::IfcRelConnects; } IfcRelConnects::IfcRelConnects(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnects)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnects::IfcRelConnects(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcRelConnects::IfcRelConnects(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsElements bool IfcRelConnectsElements::hasConnectionGeometry() { return !entity->getArgument(4)->isNull(); } IfcConnectionGeometry* IfcRelConnectsElements::ConnectionGeometry() { return reinterpret_pointer_cast(*entity->getArgument(4)); } @@ -9636,7 +9636,7 @@ bool IfcRelConnectsElements::is(Type::Enum v) const { return v == Type::IfcRelCo Type::Enum IfcRelConnectsElements::type() const { return Type::IfcRelConnectsElements; } Type::Enum IfcRelConnectsElements::Class() { return Type::IfcRelConnectsElements; } IfcRelConnectsElements::IfcRelConnectsElements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsElements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsElements::IfcRelConnectsElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ConnectionGeometry); e->setArgument(5,v6_RelatingElement); e->setArgument(6,v7_RelatedElement); entity = e; } +IfcRelConnectsElements::IfcRelConnectsElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_ConnectionGeometry)); e->setArgument(5,(v6_RelatingElement)); e->setArgument(6,(v7_RelatedElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsPathElements std::vector /*[0:?]*/ IfcRelConnectsPathElements::RelatingPriorities() { return *entity->getArgument(7); } void IfcRelConnectsPathElements::setRelatingPriorities(std::vector /*[0:?]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v); } @@ -9650,7 +9650,7 @@ bool IfcRelConnectsPathElements::is(Type::Enum v) const { return v == Type::IfcR Type::Enum IfcRelConnectsPathElements::type() const { return Type::IfcRelConnectsPathElements; } Type::Enum IfcRelConnectsPathElements::Class() { return Type::IfcRelConnectsPathElements; } IfcRelConnectsPathElements::IfcRelConnectsPathElements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsPathElements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsPathElements::IfcRelConnectsPathElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, std::vector /*[0:?]*/ v8_RelatingPriorities, std::vector /*[0:?]*/ v9_RelatedPriorities, IfcConnectionTypeEnum::IfcConnectionTypeEnum v10_RelatedConnectionType, IfcConnectionTypeEnum::IfcConnectionTypeEnum v11_RelatingConnectionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ConnectionGeometry); e->setArgument(5,v6_RelatingElement); e->setArgument(6,v7_RelatedElement); e->setArgument(7,v8_RelatingPriorities); e->setArgument(8,v9_RelatedPriorities); e->setArgument(9,v10_RelatedConnectionType); e->setArgument(10,v11_RelatingConnectionType); entity = e; } +IfcRelConnectsPathElements::IfcRelConnectsPathElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, std::vector /*[0:?]*/ v8_RelatingPriorities, std::vector /*[0:?]*/ v9_RelatedPriorities, IfcConnectionTypeEnum::IfcConnectionTypeEnum v10_RelatedConnectionType, IfcConnectionTypeEnum::IfcConnectionTypeEnum v11_RelatingConnectionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_ConnectionGeometry)); e->setArgument(5,(v6_RelatingElement)); e->setArgument(6,(v7_RelatedElement)); e->setArgument(7,(v8_RelatingPriorities)); e->setArgument(8,(v9_RelatedPriorities)); e->setArgument(9,v10_RelatedConnectionType,IfcConnectionTypeEnum::ToString(v10_RelatedConnectionType)); e->setArgument(10,v11_RelatingConnectionType,IfcConnectionTypeEnum::ToString(v11_RelatingConnectionType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsPortToElement IfcPort* IfcRelConnectsPortToElement::RelatingPort() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelConnectsPortToElement::setRelatingPort(IfcPort* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9660,7 +9660,7 @@ bool IfcRelConnectsPortToElement::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcRelConnectsPortToElement::type() const { return Type::IfcRelConnectsPortToElement; } Type::Enum IfcRelConnectsPortToElement::Class() { return Type::IfcRelConnectsPortToElement; } IfcRelConnectsPortToElement::IfcRelConnectsPortToElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsPortToElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsPortToElement::IfcRelConnectsPortToElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPort* v5_RelatingPort, IfcElement* v6_RelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingPort); e->setArgument(5,v6_RelatedElement); entity = e; } +IfcRelConnectsPortToElement::IfcRelConnectsPortToElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPort* v5_RelatingPort, IfcElement* v6_RelatedElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingPort)); e->setArgument(5,(v6_RelatedElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsPorts IfcPort* IfcRelConnectsPorts::RelatingPort() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelConnectsPorts::setRelatingPort(IfcPort* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9673,7 +9673,7 @@ bool IfcRelConnectsPorts::is(Type::Enum v) const { return v == Type::IfcRelConne Type::Enum IfcRelConnectsPorts::type() const { return Type::IfcRelConnectsPorts; } Type::Enum IfcRelConnectsPorts::Class() { return Type::IfcRelConnectsPorts; } IfcRelConnectsPorts::IfcRelConnectsPorts(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsPorts)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsPorts::IfcRelConnectsPorts(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPort* v5_RelatingPort, IfcPort* v6_RelatedPort, IfcElement* v7_RealizingElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingPort); e->setArgument(5,v6_RelatedPort); e->setArgument(6,v7_RealizingElement); entity = e; } +IfcRelConnectsPorts::IfcRelConnectsPorts(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPort* v5_RelatingPort, IfcPort* v6_RelatedPort, IfcElement* v7_RealizingElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingPort)); e->setArgument(5,(v6_RelatedPort)); e->setArgument(6,(v7_RealizingElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsStructuralActivity IfcStructuralActivityAssignmentSelect IfcRelConnectsStructuralActivity::RelatingElement() { return *entity->getArgument(4); } void IfcRelConnectsStructuralActivity::setRelatingElement(IfcStructuralActivityAssignmentSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9683,7 +9683,7 @@ bool IfcRelConnectsStructuralActivity::is(Type::Enum v) const { return v == Type Type::Enum IfcRelConnectsStructuralActivity::type() const { return Type::IfcRelConnectsStructuralActivity; } Type::Enum IfcRelConnectsStructuralActivity::Class() { return Type::IfcRelConnectsStructuralActivity; } IfcRelConnectsStructuralActivity::IfcRelConnectsStructuralActivity(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsStructuralActivity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsStructuralActivity::IfcRelConnectsStructuralActivity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralActivityAssignmentSelect v5_RelatingElement, IfcStructuralActivity* v6_RelatedStructuralActivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingElement); e->setArgument(5,v6_RelatedStructuralActivity); entity = e; } +IfcRelConnectsStructuralActivity::IfcRelConnectsStructuralActivity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralActivityAssignmentSelect v5_RelatingElement, IfcStructuralActivity* v6_RelatedStructuralActivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingElement)); e->setArgument(5,(v6_RelatedStructuralActivity)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsStructuralElement IfcElement* IfcRelConnectsStructuralElement::RelatingElement() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelConnectsStructuralElement::setRelatingElement(IfcElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9693,7 +9693,7 @@ bool IfcRelConnectsStructuralElement::is(Type::Enum v) const { return v == Type: Type::Enum IfcRelConnectsStructuralElement::type() const { return Type::IfcRelConnectsStructuralElement; } Type::Enum IfcRelConnectsStructuralElement::Class() { return Type::IfcRelConnectsStructuralElement; } IfcRelConnectsStructuralElement::IfcRelConnectsStructuralElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsStructuralElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsStructuralElement::IfcRelConnectsStructuralElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingElement, IfcStructuralMember* v6_RelatedStructuralMember) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingElement); e->setArgument(5,v6_RelatedStructuralMember); entity = e; } +IfcRelConnectsStructuralElement::IfcRelConnectsStructuralElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingElement, IfcStructuralMember* v6_RelatedStructuralMember) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingElement)); e->setArgument(5,(v6_RelatedStructuralMember)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsStructuralMember IfcStructuralMember* IfcRelConnectsStructuralMember::RelatingStructuralMember() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelConnectsStructuralMember::setRelatingStructuralMember(IfcStructuralMember* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9715,7 +9715,7 @@ bool IfcRelConnectsStructuralMember::is(Type::Enum v) const { return v == Type:: Type::Enum IfcRelConnectsStructuralMember::type() const { return Type::IfcRelConnectsStructuralMember; } Type::Enum IfcRelConnectsStructuralMember::Class() { return Type::IfcRelConnectsStructuralMember; } IfcRelConnectsStructuralMember::IfcRelConnectsStructuralMember(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsStructuralMember)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsStructuralMember::IfcRelConnectsStructuralMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, IfcLengthMeasure v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingStructuralMember); e->setArgument(5,v6_RelatedStructuralConnection); e->setArgument(6,v7_AppliedCondition); e->setArgument(7,v8_AdditionalConditions); e->setArgument(8,v9_SupportedLength); e->setArgument(9,v10_ConditionCoordinateSystem); entity = e; } +IfcRelConnectsStructuralMember::IfcRelConnectsStructuralMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, optional v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingStructuralMember)); e->setArgument(5,(v6_RelatedStructuralConnection)); e->setArgument(6,(v7_AppliedCondition)); e->setArgument(7,(v8_AdditionalConditions)); if (v9_SupportedLength) { e->setArgument(8,(*v9_SupportedLength)); } else { e->setArgument(8); } ; e->setArgument(9,(v10_ConditionCoordinateSystem)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsWithEccentricity IfcConnectionGeometry* IfcRelConnectsWithEccentricity::ConnectionConstraint() { return reinterpret_pointer_cast(*entity->getArgument(10)); } void IfcRelConnectsWithEccentricity::setConnectionConstraint(IfcConnectionGeometry* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(10,v); } @@ -9723,7 +9723,7 @@ bool IfcRelConnectsWithEccentricity::is(Type::Enum v) const { return v == Type:: Type::Enum IfcRelConnectsWithEccentricity::type() const { return Type::IfcRelConnectsWithEccentricity; } Type::Enum IfcRelConnectsWithEccentricity::Class() { return Type::IfcRelConnectsWithEccentricity; } IfcRelConnectsWithEccentricity::IfcRelConnectsWithEccentricity(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsWithEccentricity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsWithEccentricity::IfcRelConnectsWithEccentricity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, IfcLengthMeasure v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem, IfcConnectionGeometry* v11_ConnectionConstraint) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingStructuralMember); e->setArgument(5,v6_RelatedStructuralConnection); e->setArgument(6,v7_AppliedCondition); e->setArgument(7,v8_AdditionalConditions); e->setArgument(8,v9_SupportedLength); e->setArgument(9,v10_ConditionCoordinateSystem); e->setArgument(10,v11_ConnectionConstraint); entity = e; } +IfcRelConnectsWithEccentricity::IfcRelConnectsWithEccentricity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, optional v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem, IfcConnectionGeometry* v11_ConnectionConstraint) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingStructuralMember)); e->setArgument(5,(v6_RelatedStructuralConnection)); e->setArgument(6,(v7_AppliedCondition)); e->setArgument(7,(v8_AdditionalConditions)); if (v9_SupportedLength) { e->setArgument(8,(*v9_SupportedLength)); } else { e->setArgument(8); } ; e->setArgument(9,(v10_ConditionCoordinateSystem)); e->setArgument(10,(v11_ConnectionConstraint)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelConnectsWithRealizingElements SHARED_PTR< IfcTemplatedEntityList > IfcRelConnectsWithRealizingElements::RealizingElements() { RETURN_AS_LIST(IfcElement,7) } void IfcRelConnectsWithRealizingElements::setRealizingElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v->generalize()); } @@ -9734,7 +9734,7 @@ bool IfcRelConnectsWithRealizingElements::is(Type::Enum v) const { return v == T Type::Enum IfcRelConnectsWithRealizingElements::type() const { return Type::IfcRelConnectsWithRealizingElements; } Type::Enum IfcRelConnectsWithRealizingElements::Class() { return Type::IfcRelConnectsWithRealizingElements; } IfcRelConnectsWithRealizingElements::IfcRelConnectsWithRealizingElements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelConnectsWithRealizingElements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelConnectsWithRealizingElements::IfcRelConnectsWithRealizingElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, SHARED_PTR< IfcTemplatedEntityList > v8_RealizingElements, IfcLabel v9_ConnectionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ConnectionGeometry); e->setArgument(5,v6_RelatingElement); e->setArgument(6,v7_RelatedElement); e->setArgument(7,v8_RealizingElements->generalize()); e->setArgument(8,v9_ConnectionType); entity = e; } +IfcRelConnectsWithRealizingElements::IfcRelConnectsWithRealizingElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, SHARED_PTR< IfcTemplatedEntityList > v8_RealizingElements, optional v9_ConnectionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_ConnectionGeometry)); e->setArgument(5,(v6_RelatingElement)); e->setArgument(6,(v7_RelatedElement)); e->setArgument(7,(v8_RealizingElements)->generalize()); if (v9_ConnectionType) { e->setArgument(8,(*v9_ConnectionType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelContainedInSpatialStructure SHARED_PTR< IfcTemplatedEntityList > IfcRelContainedInSpatialStructure::RelatedElements() { RETURN_AS_LIST(IfcProduct,4) } void IfcRelContainedInSpatialStructure::setRelatedElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9744,7 +9744,7 @@ bool IfcRelContainedInSpatialStructure::is(Type::Enum v) const { return v == Typ Type::Enum IfcRelContainedInSpatialStructure::type() const { return Type::IfcRelContainedInSpatialStructure; } Type::Enum IfcRelContainedInSpatialStructure::Class() { return Type::IfcRelContainedInSpatialStructure; } IfcRelContainedInSpatialStructure::IfcRelContainedInSpatialStructure(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelContainedInSpatialStructure)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelContainedInSpatialStructure::IfcRelContainedInSpatialStructure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedElements->generalize()); e->setArgument(5,v6_RelatingStructure); entity = e; } +IfcRelContainedInSpatialStructure::IfcRelContainedInSpatialStructure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedElements)->generalize()); e->setArgument(5,(v6_RelatingStructure)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelCoversBldgElements IfcElement* IfcRelCoversBldgElements::RelatingBuildingElement() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelCoversBldgElements::setRelatingBuildingElement(IfcElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9754,7 +9754,7 @@ bool IfcRelCoversBldgElements::is(Type::Enum v) const { return v == Type::IfcRel Type::Enum IfcRelCoversBldgElements::type() const { return Type::IfcRelCoversBldgElements; } Type::Enum IfcRelCoversBldgElements::Class() { return Type::IfcRelCoversBldgElements; } IfcRelCoversBldgElements::IfcRelCoversBldgElements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelCoversBldgElements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelCoversBldgElements::IfcRelCoversBldgElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingBuildingElement, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingBuildingElement); e->setArgument(5,v6_RelatedCoverings->generalize()); entity = e; } +IfcRelCoversBldgElements::IfcRelCoversBldgElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingBuildingElement, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingBuildingElement)); e->setArgument(5,(v6_RelatedCoverings)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelCoversSpaces IfcSpace* IfcRelCoversSpaces::RelatedSpace() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelCoversSpaces::setRelatedSpace(IfcSpace* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9764,7 +9764,7 @@ bool IfcRelCoversSpaces::is(Type::Enum v) const { return v == Type::IfcRelCovers Type::Enum IfcRelCoversSpaces::type() const { return Type::IfcRelCoversSpaces; } Type::Enum IfcRelCoversSpaces::Class() { return Type::IfcRelCoversSpaces; } IfcRelCoversSpaces::IfcRelCoversSpaces(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelCoversSpaces)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelCoversSpaces::IfcRelCoversSpaces(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSpace* v5_RelatedSpace, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedSpace); e->setArgument(5,v6_RelatedCoverings->generalize()); entity = e; } +IfcRelCoversSpaces::IfcRelCoversSpaces(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSpace* v5_RelatedSpace, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedSpace)); e->setArgument(5,(v6_RelatedCoverings)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelDecomposes IfcObjectDefinition* IfcRelDecomposes::RelatingObject() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelDecomposes::setRelatingObject(IfcObjectDefinition* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9774,7 +9774,7 @@ bool IfcRelDecomposes::is(Type::Enum v) const { return v == Type::IfcRelDecompos Type::Enum IfcRelDecomposes::type() const { return Type::IfcRelDecomposes; } Type::Enum IfcRelDecomposes::Class() { return Type::IfcRelDecomposes; } IfcRelDecomposes::IfcRelDecomposes(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelDecomposes)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelDecomposes::IfcRelDecomposes(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingObject); e->setArgument(5,v6_RelatedObjects->generalize()); entity = e; } +IfcRelDecomposes::IfcRelDecomposes(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingObject)); e->setArgument(5,(v6_RelatedObjects)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelDefines SHARED_PTR< IfcTemplatedEntityList > IfcRelDefines::RelatedObjects() { RETURN_AS_LIST(IfcObject,4) } void IfcRelDefines::setRelatedObjects(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9782,7 +9782,7 @@ bool IfcRelDefines::is(Type::Enum v) const { return v == Type::IfcRelDefines || Type::Enum IfcRelDefines::type() const { return Type::IfcRelDefines; } Type::Enum IfcRelDefines::Class() { return Type::IfcRelDefines; } IfcRelDefines::IfcRelDefines(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelDefines)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelDefines::IfcRelDefines(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); entity = e; } +IfcRelDefines::IfcRelDefines(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelDefinesByProperties IfcPropertySetDefinition* IfcRelDefinesByProperties::RelatingPropertyDefinition() { return reinterpret_pointer_cast(*entity->getArgument(5)); } void IfcRelDefinesByProperties::setRelatingPropertyDefinition(IfcPropertySetDefinition* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9790,7 +9790,7 @@ bool IfcRelDefinesByProperties::is(Type::Enum v) const { return v == Type::IfcRe Type::Enum IfcRelDefinesByProperties::type() const { return Type::IfcRelDefinesByProperties; } Type::Enum IfcRelDefinesByProperties::Class() { return Type::IfcRelDefinesByProperties; } IfcRelDefinesByProperties::IfcRelDefinesByProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelDefinesByProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelDefinesByProperties::IfcRelDefinesByProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingPropertyDefinition); entity = e; } +IfcRelDefinesByProperties::IfcRelDefinesByProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingPropertyDefinition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelDefinesByType IfcTypeObject* IfcRelDefinesByType::RelatingType() { return reinterpret_pointer_cast(*entity->getArgument(5)); } void IfcRelDefinesByType::setRelatingType(IfcTypeObject* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -9798,7 +9798,7 @@ bool IfcRelDefinesByType::is(Type::Enum v) const { return v == Type::IfcRelDefin Type::Enum IfcRelDefinesByType::type() const { return Type::IfcRelDefinesByType; } Type::Enum IfcRelDefinesByType::Class() { return Type::IfcRelDefinesByType; } IfcRelDefinesByType::IfcRelDefinesByType(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelDefinesByType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelDefinesByType::IfcRelDefinesByType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcTypeObject* v6_RelatingType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingType); entity = e; } +IfcRelDefinesByType::IfcRelDefinesByType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcTypeObject* v6_RelatingType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelFillsElement IfcOpeningElement* IfcRelFillsElement::RelatingOpeningElement() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelFillsElement::setRelatingOpeningElement(IfcOpeningElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9808,7 +9808,7 @@ bool IfcRelFillsElement::is(Type::Enum v) const { return v == Type::IfcRelFillsE Type::Enum IfcRelFillsElement::type() const { return Type::IfcRelFillsElement; } Type::Enum IfcRelFillsElement::Class() { return Type::IfcRelFillsElement; } IfcRelFillsElement::IfcRelFillsElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelFillsElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelFillsElement::IfcRelFillsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcOpeningElement* v5_RelatingOpeningElement, IfcElement* v6_RelatedBuildingElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingOpeningElement); e->setArgument(5,v6_RelatedBuildingElement); entity = e; } +IfcRelFillsElement::IfcRelFillsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcOpeningElement* v5_RelatingOpeningElement, IfcElement* v6_RelatedBuildingElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingOpeningElement)); e->setArgument(5,(v6_RelatedBuildingElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelFlowControlElements SHARED_PTR< IfcTemplatedEntityList > IfcRelFlowControlElements::RelatedControlElements() { RETURN_AS_LIST(IfcDistributionControlElement,4) } void IfcRelFlowControlElements::setRelatedControlElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9818,7 +9818,7 @@ bool IfcRelFlowControlElements::is(Type::Enum v) const { return v == Type::IfcRe Type::Enum IfcRelFlowControlElements::type() const { return Type::IfcRelFlowControlElements; } Type::Enum IfcRelFlowControlElements::Class() { return Type::IfcRelFlowControlElements; } IfcRelFlowControlElements::IfcRelFlowControlElements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelFlowControlElements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelFlowControlElements::IfcRelFlowControlElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedControlElements, IfcDistributionFlowElement* v6_RelatingFlowElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedControlElements->generalize()); e->setArgument(5,v6_RelatingFlowElement); entity = e; } +IfcRelFlowControlElements::IfcRelFlowControlElements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedControlElements, IfcDistributionFlowElement* v6_RelatingFlowElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedControlElements)->generalize()); e->setArgument(5,(v6_RelatingFlowElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelInteractionRequirements bool IfcRelInteractionRequirements::hasDailyInteraction() { return !entity->getArgument(4)->isNull(); } IfcCountMeasure IfcRelInteractionRequirements::DailyInteraction() { return *entity->getArgument(4); } @@ -9837,19 +9837,19 @@ bool IfcRelInteractionRequirements::is(Type::Enum v) const { return v == Type::I Type::Enum IfcRelInteractionRequirements::type() const { return Type::IfcRelInteractionRequirements; } Type::Enum IfcRelInteractionRequirements::Class() { return Type::IfcRelInteractionRequirements; } IfcRelInteractionRequirements::IfcRelInteractionRequirements(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelInteractionRequirements)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelInteractionRequirements::IfcRelInteractionRequirements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcCountMeasure v5_DailyInteraction, IfcNormalisedRatioMeasure v6_ImportanceRating, IfcSpatialStructureElement* v7_LocationOfInteraction, IfcSpaceProgram* v8_RelatedSpaceProgram, IfcSpaceProgram* v9_RelatingSpaceProgram) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_DailyInteraction); e->setArgument(5,v6_ImportanceRating); e->setArgument(6,v7_LocationOfInteraction); e->setArgument(7,v8_RelatedSpaceProgram); e->setArgument(8,v9_RelatingSpaceProgram); entity = e; } +IfcRelInteractionRequirements::IfcRelInteractionRequirements(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_DailyInteraction, optional v6_ImportanceRating, IfcSpatialStructureElement* v7_LocationOfInteraction, IfcSpaceProgram* v8_RelatedSpaceProgram, IfcSpaceProgram* v9_RelatingSpaceProgram) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_DailyInteraction) { e->setArgument(4,(*v5_DailyInteraction)); } else { e->setArgument(4); } ; if (v6_ImportanceRating) { e->setArgument(5,(*v6_ImportanceRating)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_LocationOfInteraction)); e->setArgument(7,(v8_RelatedSpaceProgram)); e->setArgument(8,(v9_RelatingSpaceProgram)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelNests bool IfcRelNests::is(Type::Enum v) const { return v == Type::IfcRelNests || IfcRelDecomposes::is(v); } Type::Enum IfcRelNests::type() const { return Type::IfcRelNests; } Type::Enum IfcRelNests::Class() { return Type::IfcRelNests; } IfcRelNests::IfcRelNests(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelNests)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelNests::IfcRelNests(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingObject); e->setArgument(5,v6_RelatedObjects->generalize()); entity = e; } +IfcRelNests::IfcRelNests(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingObject)); e->setArgument(5,(v6_RelatedObjects)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelOccupiesSpaces bool IfcRelOccupiesSpaces::is(Type::Enum v) const { return v == Type::IfcRelOccupiesSpaces || IfcRelAssignsToActor::is(v); } Type::Enum IfcRelOccupiesSpaces::type() const { return Type::IfcRelOccupiesSpaces; } Type::Enum IfcRelOccupiesSpaces::Class() { return Type::IfcRelOccupiesSpaces; } IfcRelOccupiesSpaces::IfcRelOccupiesSpaces(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelOccupiesSpaces)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelOccupiesSpaces::IfcRelOccupiesSpaces(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingActor); e->setArgument(7,v8_ActingRole); entity = e; } +IfcRelOccupiesSpaces::IfcRelOccupiesSpaces(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingActor)); e->setArgument(7,(v8_ActingRole)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelOverridesProperties SHARED_PTR< IfcTemplatedEntityList > IfcRelOverridesProperties::OverridingProperties() { RETURN_AS_LIST(IfcProperty,6) } void IfcRelOverridesProperties::setOverridingProperties(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(6,v->generalize()); } @@ -9857,7 +9857,7 @@ bool IfcRelOverridesProperties::is(Type::Enum v) const { return v == Type::IfcRe Type::Enum IfcRelOverridesProperties::type() const { return Type::IfcRelOverridesProperties; } Type::Enum IfcRelOverridesProperties::Class() { return Type::IfcRelOverridesProperties; } IfcRelOverridesProperties::IfcRelOverridesProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelOverridesProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelOverridesProperties::IfcRelOverridesProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition, SHARED_PTR< IfcTemplatedEntityList > v7_OverridingProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatingPropertyDefinition); e->setArgument(6,v7_OverridingProperties->generalize()); entity = e; } +IfcRelOverridesProperties::IfcRelOverridesProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition, SHARED_PTR< IfcTemplatedEntityList > v7_OverridingProperties) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); e->setArgument(5,(v6_RelatingPropertyDefinition)); e->setArgument(6,(v7_OverridingProperties)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelProjectsElement IfcElement* IfcRelProjectsElement::RelatingElement() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelProjectsElement::setRelatingElement(IfcElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9867,7 +9867,7 @@ bool IfcRelProjectsElement::is(Type::Enum v) const { return v == Type::IfcRelPro Type::Enum IfcRelProjectsElement::type() const { return Type::IfcRelProjectsElement; } Type::Enum IfcRelProjectsElement::Class() { return Type::IfcRelProjectsElement; } IfcRelProjectsElement::IfcRelProjectsElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelProjectsElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelProjectsElement::IfcRelProjectsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingElement, IfcFeatureElementAddition* v6_RelatedFeatureElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingElement); e->setArgument(5,v6_RelatedFeatureElement); entity = e; } +IfcRelProjectsElement::IfcRelProjectsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingElement, IfcFeatureElementAddition* v6_RelatedFeatureElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingElement)); e->setArgument(5,(v6_RelatedFeatureElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelReferencedInSpatialStructure SHARED_PTR< IfcTemplatedEntityList > IfcRelReferencedInSpatialStructure::RelatedElements() { RETURN_AS_LIST(IfcProduct,4) } void IfcRelReferencedInSpatialStructure::setRelatedElements(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v->generalize()); } @@ -9877,13 +9877,13 @@ bool IfcRelReferencedInSpatialStructure::is(Type::Enum v) const { return v == Ty Type::Enum IfcRelReferencedInSpatialStructure::type() const { return Type::IfcRelReferencedInSpatialStructure; } Type::Enum IfcRelReferencedInSpatialStructure::Class() { return Type::IfcRelReferencedInSpatialStructure; } IfcRelReferencedInSpatialStructure::IfcRelReferencedInSpatialStructure(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelReferencedInSpatialStructure)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelReferencedInSpatialStructure::IfcRelReferencedInSpatialStructure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedElements->generalize()); e->setArgument(5,v6_RelatingStructure); entity = e; } +IfcRelReferencedInSpatialStructure::IfcRelReferencedInSpatialStructure(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedElements)->generalize()); e->setArgument(5,(v6_RelatingStructure)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelSchedulesCostItems bool IfcRelSchedulesCostItems::is(Type::Enum v) const { return v == Type::IfcRelSchedulesCostItems || IfcRelAssignsToControl::is(v); } Type::Enum IfcRelSchedulesCostItems::type() const { return Type::IfcRelSchedulesCostItems; } Type::Enum IfcRelSchedulesCostItems::Class() { return Type::IfcRelSchedulesCostItems; } IfcRelSchedulesCostItems::IfcRelSchedulesCostItems(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelSchedulesCostItems)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelSchedulesCostItems::IfcRelSchedulesCostItems(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatedObjects->generalize()); e->setArgument(5,v6_RelatedObjectsType); e->setArgument(6,v7_RelatingControl); entity = e; } +IfcRelSchedulesCostItems::IfcRelSchedulesCostItems(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatedObjects)->generalize()); if (v6_RelatedObjectsType) { e->setArgument(5,*v6_RelatedObjectsType,IfcObjectTypeEnum::ToString(*v6_RelatedObjectsType)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_RelatingControl)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelSequence IfcProcess* IfcRelSequence::RelatingProcess() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelSequence::setRelatingProcess(IfcProcess* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9897,7 +9897,7 @@ bool IfcRelSequence::is(Type::Enum v) const { return v == Type::IfcRelSequence | Type::Enum IfcRelSequence::type() const { return Type::IfcRelSequence; } Type::Enum IfcRelSequence::Class() { return Type::IfcRelSequence; } IfcRelSequence::IfcRelSequence(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelSequence)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelSequence::IfcRelSequence(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcProcess* v5_RelatingProcess, IfcProcess* v6_RelatedProcess, IfcTimeMeasure v7_TimeLag, IfcSequenceEnum::IfcSequenceEnum v8_SequenceType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingProcess); e->setArgument(5,v6_RelatedProcess); e->setArgument(6,v7_TimeLag); e->setArgument(7,v8_SequenceType); entity = e; } +IfcRelSequence::IfcRelSequence(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcProcess* v5_RelatingProcess, IfcProcess* v6_RelatedProcess, IfcTimeMeasure v7_TimeLag, IfcSequenceEnum::IfcSequenceEnum v8_SequenceType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingProcess)); e->setArgument(5,(v6_RelatedProcess)); e->setArgument(6,(v7_TimeLag)); e->setArgument(7,v8_SequenceType,IfcSequenceEnum::ToString(v8_SequenceType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelServicesBuildings IfcSystem* IfcRelServicesBuildings::RelatingSystem() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelServicesBuildings::setRelatingSystem(IfcSystem* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9907,7 +9907,7 @@ bool IfcRelServicesBuildings::is(Type::Enum v) const { return v == Type::IfcRelS Type::Enum IfcRelServicesBuildings::type() const { return Type::IfcRelServicesBuildings; } Type::Enum IfcRelServicesBuildings::Class() { return Type::IfcRelServicesBuildings; } IfcRelServicesBuildings::IfcRelServicesBuildings(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelServicesBuildings)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelServicesBuildings::IfcRelServicesBuildings(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSystem* v5_RelatingSystem, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedBuildings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingSystem); e->setArgument(5,v6_RelatedBuildings->generalize()); entity = e; } +IfcRelServicesBuildings::IfcRelServicesBuildings(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSystem* v5_RelatingSystem, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedBuildings) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingSystem)); e->setArgument(5,(v6_RelatedBuildings)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelSpaceBoundary IfcSpace* IfcRelSpaceBoundary::RelatingSpace() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelSpaceBoundary::setRelatingSpace(IfcSpace* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9925,7 +9925,7 @@ bool IfcRelSpaceBoundary::is(Type::Enum v) const { return v == Type::IfcRelSpace Type::Enum IfcRelSpaceBoundary::type() const { return Type::IfcRelSpaceBoundary; } Type::Enum IfcRelSpaceBoundary::Class() { return Type::IfcRelSpaceBoundary; } IfcRelSpaceBoundary::IfcRelSpaceBoundary(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelSpaceBoundary)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelSpaceBoundary::IfcRelSpaceBoundary(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSpace* v5_RelatingSpace, IfcElement* v6_RelatedBuildingElement, IfcConnectionGeometry* v7_ConnectionGeometry, IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum v8_PhysicalOrVirtualBoundary, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v9_InternalOrExternalBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingSpace); e->setArgument(5,v6_RelatedBuildingElement); e->setArgument(6,v7_ConnectionGeometry); e->setArgument(7,v8_PhysicalOrVirtualBoundary); e->setArgument(8,v9_InternalOrExternalBoundary); entity = e; } +IfcRelSpaceBoundary::IfcRelSpaceBoundary(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSpace* v5_RelatingSpace, IfcElement* v6_RelatedBuildingElement, IfcConnectionGeometry* v7_ConnectionGeometry, IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum v8_PhysicalOrVirtualBoundary, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v9_InternalOrExternalBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingSpace)); e->setArgument(5,(v6_RelatedBuildingElement)); e->setArgument(6,(v7_ConnectionGeometry)); e->setArgument(7,v8_PhysicalOrVirtualBoundary,IfcPhysicalOrVirtualEnum::ToString(v8_PhysicalOrVirtualBoundary)); e->setArgument(8,v9_InternalOrExternalBoundary,IfcInternalOrExternalEnum::ToString(v9_InternalOrExternalBoundary)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelVoidsElement IfcElement* IfcRelVoidsElement::RelatingBuildingElement() { return reinterpret_pointer_cast(*entity->getArgument(4)); } void IfcRelVoidsElement::setRelatingBuildingElement(IfcElement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v); } @@ -9935,13 +9935,13 @@ bool IfcRelVoidsElement::is(Type::Enum v) const { return v == Type::IfcRelVoidsE Type::Enum IfcRelVoidsElement::type() const { return Type::IfcRelVoidsElement; } Type::Enum IfcRelVoidsElement::Class() { return Type::IfcRelVoidsElement; } IfcRelVoidsElement::IfcRelVoidsElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelVoidsElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelVoidsElement::IfcRelVoidsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingBuildingElement, IfcFeatureElementSubtraction* v6_RelatedOpeningElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_RelatingBuildingElement); e->setArgument(5,v6_RelatedOpeningElement); entity = e; } +IfcRelVoidsElement::IfcRelVoidsElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingBuildingElement, IfcFeatureElementSubtraction* v6_RelatedOpeningElement) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_RelatingBuildingElement)); e->setArgument(5,(v6_RelatedOpeningElement)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelationship bool IfcRelationship::is(Type::Enum v) const { return v == Type::IfcRelationship || IfcRoot::is(v); } Type::Enum IfcRelationship::type() const { return Type::IfcRelationship; } Type::Enum IfcRelationship::Class() { return Type::IfcRelationship; } IfcRelationship::IfcRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelationship::IfcRelationship(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcRelationship::IfcRelationship(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRelaxation IfcNormalisedRatioMeasure IfcRelaxation::RelaxationValue() { return *entity->getArgument(0); } void IfcRelaxation::setRelaxationValue(IfcNormalisedRatioMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9951,7 +9951,7 @@ bool IfcRelaxation::is(Type::Enum v) const { return v == Type::IfcRelaxation; } Type::Enum IfcRelaxation::type() const { return Type::IfcRelaxation; } Type::Enum IfcRelaxation::Class() { return Type::IfcRelaxation; } IfcRelaxation::IfcRelaxation(IfcAbstractEntityPtr e) { if (!is(Type::IfcRelaxation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRelaxation::IfcRelaxation(IfcNormalisedRatioMeasure v1_RelaxationValue, IfcNormalisedRatioMeasure v2_InitialStress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RelaxationValue); e->setArgument(1,v2_InitialStress); entity = e; } +IfcRelaxation::IfcRelaxation(IfcNormalisedRatioMeasure v1_RelaxationValue, IfcNormalisedRatioMeasure v2_InitialStress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RelaxationValue)); e->setArgument(1,(v2_InitialStress)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRepresentation IfcRepresentationContext* IfcRepresentation::ContextOfItems() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcRepresentation::setContextOfItems(IfcRepresentationContext* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -9970,7 +9970,7 @@ bool IfcRepresentation::is(Type::Enum v) const { return v == Type::IfcRepresenta Type::Enum IfcRepresentation::type() const { return Type::IfcRepresentation; } Type::Enum IfcRepresentation::Class() { return Type::IfcRepresentation; } IfcRepresentation::IfcRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRepresentation::IfcRepresentation(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcRepresentation::IfcRepresentation(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRepresentationContext bool IfcRepresentationContext::hasContextIdentifier() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcRepresentationContext::ContextIdentifier() { return *entity->getArgument(0); } @@ -9983,7 +9983,7 @@ bool IfcRepresentationContext::is(Type::Enum v) const { return v == Type::IfcRep Type::Enum IfcRepresentationContext::type() const { return Type::IfcRepresentationContext; } Type::Enum IfcRepresentationContext::Class() { return Type::IfcRepresentationContext; } IfcRepresentationContext::IfcRepresentationContext(IfcAbstractEntityPtr e) { if (!is(Type::IfcRepresentationContext)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRepresentationContext::IfcRepresentationContext(IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextIdentifier); e->setArgument(1,v2_ContextType); entity = e; } +IfcRepresentationContext::IfcRepresentationContext(optional v1_ContextIdentifier, optional v2_ContextType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ContextIdentifier) { e->setArgument(0,(*v1_ContextIdentifier)); } else { e->setArgument(0); } ; if (v2_ContextType) { e->setArgument(1,(*v2_ContextType)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRepresentationItem IfcPresentationLayerAssignment::list IfcRepresentationItem::LayerAssignments() { RETURN_INVERSE(IfcPresentationLayerAssignment) } IfcStyledItem::list IfcRepresentationItem::StyledByItem() { RETURN_INVERSE(IfcStyledItem) } @@ -10001,14 +10001,14 @@ bool IfcRepresentationMap::is(Type::Enum v) const { return v == Type::IfcReprese Type::Enum IfcRepresentationMap::type() const { return Type::IfcRepresentationMap; } Type::Enum IfcRepresentationMap::Class() { return Type::IfcRepresentationMap; } IfcRepresentationMap::IfcRepresentationMap(IfcAbstractEntityPtr e) { if (!is(Type::IfcRepresentationMap)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRepresentationMap::IfcRepresentationMap(IfcAxis2Placement v1_MappingOrigin, IfcRepresentation* v2_MappedRepresentation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_MappingOrigin); e->setArgument(1,v2_MappedRepresentation); entity = e; } +IfcRepresentationMap::IfcRepresentationMap(IfcAxis2Placement v1_MappingOrigin, IfcRepresentation* v2_MappedRepresentation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_MappingOrigin)); e->setArgument(1,(v2_MappedRepresentation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcResource IfcRelAssignsToResource::list IfcResource::ResourceOf() { RETURN_INVERSE(IfcRelAssignsToResource) } bool IfcResource::is(Type::Enum v) const { return v == Type::IfcResource || IfcObject::is(v); } Type::Enum IfcResource::type() const { return Type::IfcResource; } Type::Enum IfcResource::Class() { return Type::IfcResource; } IfcResource::IfcResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcResource::IfcResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcResource::IfcResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRevolvedAreaSolid IfcAxis1Placement* IfcRevolvedAreaSolid::Axis() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcRevolvedAreaSolid::setAxis(IfcAxis1Placement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -10018,7 +10018,7 @@ bool IfcRevolvedAreaSolid::is(Type::Enum v) const { return v == Type::IfcRevolve Type::Enum IfcRevolvedAreaSolid::type() const { return Type::IfcRevolvedAreaSolid; } Type::Enum IfcRevolvedAreaSolid::Class() { return Type::IfcRevolvedAreaSolid; } IfcRevolvedAreaSolid::IfcRevolvedAreaSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcRevolvedAreaSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRevolvedAreaSolid::IfcRevolvedAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcAxis1Placement* v3_Axis, IfcPlaneAngleMeasure v4_Angle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptArea); e->setArgument(1,v2_Position); e->setArgument(2,v3_Axis); e->setArgument(3,v4_Angle); entity = e; } +IfcRevolvedAreaSolid::IfcRevolvedAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcAxis1Placement* v3_Axis, IfcPlaneAngleMeasure v4_Angle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptArea)); e->setArgument(1,(v2_Position)); e->setArgument(2,(v3_Axis)); e->setArgument(3,(v4_Angle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRibPlateProfileProperties bool IfcRibPlateProfileProperties::hasThickness() { return !entity->getArgument(2)->isNull(); } IfcPositiveLengthMeasure IfcRibPlateProfileProperties::Thickness() { return *entity->getArgument(2); } @@ -10038,7 +10038,7 @@ bool IfcRibPlateProfileProperties::is(Type::Enum v) const { return v == Type::If Type::Enum IfcRibPlateProfileProperties::type() const { return Type::IfcRibPlateProfileProperties; } Type::Enum IfcRibPlateProfileProperties::Class() { return Type::IfcRibPlateProfileProperties; } IfcRibPlateProfileProperties::IfcRibPlateProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcRibPlateProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRibPlateProfileProperties::IfcRibPlateProfileProperties(IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcPositiveLengthMeasure v3_Thickness, IfcPositiveLengthMeasure v4_RibHeight, IfcPositiveLengthMeasure v5_RibWidth, IfcPositiveLengthMeasure v6_RibSpacing, IfcRibPlateDirectionEnum::IfcRibPlateDirectionEnum v7_Direction) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileName); e->setArgument(1,v2_ProfileDefinition); e->setArgument(2,v3_Thickness); e->setArgument(3,v4_RibHeight); e->setArgument(4,v5_RibWidth); e->setArgument(5,v6_RibSpacing); e->setArgument(6,v7_Direction); entity = e; } +IfcRibPlateProfileProperties::IfcRibPlateProfileProperties(optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_Thickness, optional v4_RibHeight, optional v5_RibWidth, optional v6_RibSpacing, IfcRibPlateDirectionEnum::IfcRibPlateDirectionEnum v7_Direction) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ProfileName) { e->setArgument(0,(*v1_ProfileName)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ProfileDefinition)); if (v3_Thickness) { e->setArgument(2,(*v3_Thickness)); } else { e->setArgument(2); } ; if (v4_RibHeight) { e->setArgument(3,(*v4_RibHeight)); } else { e->setArgument(3); } ; if (v5_RibWidth) { e->setArgument(4,(*v5_RibWidth)); } else { e->setArgument(4); } ; if (v6_RibSpacing) { e->setArgument(5,(*v6_RibSpacing)); } else { e->setArgument(5); } ; e->setArgument(6,v7_Direction,IfcRibPlateDirectionEnum::ToString(v7_Direction)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRightCircularCone IfcPositiveLengthMeasure IfcRightCircularCone::Height() { return *entity->getArgument(1); } void IfcRightCircularCone::setHeight(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -10048,7 +10048,7 @@ bool IfcRightCircularCone::is(Type::Enum v) const { return v == Type::IfcRightCi Type::Enum IfcRightCircularCone::type() const { return Type::IfcRightCircularCone; } Type::Enum IfcRightCircularCone::Class() { return Type::IfcRightCircularCone; } IfcRightCircularCone::IfcRightCircularCone(IfcAbstractEntityPtr e) { if (!is(Type::IfcRightCircularCone)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRightCircularCone::IfcRightCircularCone(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Height, IfcPositiveLengthMeasure v3_BottomRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_Height); e->setArgument(2,v3_BottomRadius); entity = e; } +IfcRightCircularCone::IfcRightCircularCone(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Height, IfcPositiveLengthMeasure v3_BottomRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_Height)); e->setArgument(2,(v3_BottomRadius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRightCircularCylinder IfcPositiveLengthMeasure IfcRightCircularCylinder::Height() { return *entity->getArgument(1); } void IfcRightCircularCylinder::setHeight(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -10058,7 +10058,7 @@ bool IfcRightCircularCylinder::is(Type::Enum v) const { return v == Type::IfcRig Type::Enum IfcRightCircularCylinder::type() const { return Type::IfcRightCircularCylinder; } Type::Enum IfcRightCircularCylinder::Class() { return Type::IfcRightCircularCylinder; } IfcRightCircularCylinder::IfcRightCircularCylinder(IfcAbstractEntityPtr e) { if (!is(Type::IfcRightCircularCylinder)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRightCircularCylinder::IfcRightCircularCylinder(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Height, IfcPositiveLengthMeasure v3_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_Height); e->setArgument(2,v3_Radius); entity = e; } +IfcRightCircularCylinder::IfcRightCircularCylinder(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Height, IfcPositiveLengthMeasure v3_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_Height)); e->setArgument(2,(v3_Radius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRoof IfcRoofTypeEnum::IfcRoofTypeEnum IfcRoof::ShapeType() { return IfcRoofTypeEnum::FromString(*entity->getArgument(8)); } void IfcRoof::setShapeType(IfcRoofTypeEnum::IfcRoofTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcRoofTypeEnum::ToString(v)); } @@ -10066,7 +10066,7 @@ bool IfcRoof::is(Type::Enum v) const { return v == Type::IfcRoof || IfcBuildingE Type::Enum IfcRoof::type() const { return Type::IfcRoof; } Type::Enum IfcRoof::Class() { return Type::IfcRoof; } IfcRoof::IfcRoof(IfcAbstractEntityPtr e) { if (!is(Type::IfcRoof)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRoof::IfcRoof(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRoofTypeEnum::IfcRoofTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ShapeType); entity = e; } +IfcRoof::IfcRoof(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcRoofTypeEnum::IfcRoofTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_ShapeType,IfcRoofTypeEnum::ToString(v9_ShapeType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRoot IfcGloballyUniqueId IfcRoot::GlobalId() { return *entity->getArgument(0); } void IfcRoot::setGlobalId(IfcGloballyUniqueId v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -10082,7 +10082,7 @@ bool IfcRoot::is(Type::Enum v) const { return v == Type::IfcRoot; } Type::Enum IfcRoot::type() const { return Type::IfcRoot; } Type::Enum IfcRoot::Class() { return Type::IfcRoot; } IfcRoot::IfcRoot(IfcAbstractEntityPtr e) { if (!is(Type::IfcRoot)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRoot::IfcRoot(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); entity = e; } +IfcRoot::IfcRoot(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRoundedEdgeFeature bool IfcRoundedEdgeFeature::hasRadius() { return !entity->getArgument(9)->isNull(); } IfcPositiveLengthMeasure IfcRoundedEdgeFeature::Radius() { return *entity->getArgument(9); } @@ -10091,7 +10091,7 @@ bool IfcRoundedEdgeFeature::is(Type::Enum v) const { return v == Type::IfcRounde Type::Enum IfcRoundedEdgeFeature::type() const { return Type::IfcRoundedEdgeFeature; } Type::Enum IfcRoundedEdgeFeature::Class() { return Type::IfcRoundedEdgeFeature; } IfcRoundedEdgeFeature::IfcRoundedEdgeFeature(IfcAbstractEntityPtr e) { if (!is(Type::IfcRoundedEdgeFeature)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRoundedEdgeFeature::IfcRoundedEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength, IfcPositiveLengthMeasure v10_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_FeatureLength); e->setArgument(9,v10_Radius); entity = e; } +IfcRoundedEdgeFeature::IfcRoundedEdgeFeature(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength, optional v10_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_FeatureLength) { e->setArgument(8,(*v9_FeatureLength)); } else { e->setArgument(8); } ; if (v10_Radius) { e->setArgument(9,(*v10_Radius)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcRoundedRectangleProfileDef IfcPositiveLengthMeasure IfcRoundedRectangleProfileDef::RoundingRadius() { return *entity->getArgument(5); } void IfcRoundedRectangleProfileDef::setRoundingRadius(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -10099,7 +10099,7 @@ bool IfcRoundedRectangleProfileDef::is(Type::Enum v) const { return v == Type::I Type::Enum IfcRoundedRectangleProfileDef::type() const { return Type::IfcRoundedRectangleProfileDef; } Type::Enum IfcRoundedRectangleProfileDef::Class() { return Type::IfcRoundedRectangleProfileDef; } IfcRoundedRectangleProfileDef::IfcRoundedRectangleProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcRoundedRectangleProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcRoundedRectangleProfileDef::IfcRoundedRectangleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_RoundingRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_XDim); e->setArgument(4,v5_YDim); e->setArgument(5,v6_RoundingRadius); entity = e; } +IfcRoundedRectangleProfileDef::IfcRoundedRectangleProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_RoundingRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_XDim)); e->setArgument(4,(v5_YDim)); e->setArgument(5,(v6_RoundingRadius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSIUnit bool IfcSIUnit::hasPrefix() { return !entity->getArgument(2)->isNull(); } IfcSIPrefix::IfcSIPrefix IfcSIUnit::Prefix() { return IfcSIPrefix::FromString(*entity->getArgument(2)); } @@ -10110,7 +10110,7 @@ bool IfcSIUnit::is(Type::Enum v) const { return v == Type::IfcSIUnit || IfcNamed Type::Enum IfcSIUnit::type() const { return Type::IfcSIUnit; } Type::Enum IfcSIUnit::Class() { return Type::IfcSIUnit; } IfcSIUnit::IfcSIUnit(IfcAbstractEntityPtr e) { if (!is(Type::IfcSIUnit)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSIUnit::IfcSIUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcSIPrefix::IfcSIPrefix v3_Prefix, IfcSIUnitName::IfcSIUnitName v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Dimensions); e->setArgument(1,v2_UnitType); e->setArgument(2,v3_Prefix); e->setArgument(3,v4_Name); entity = e; } +IfcSIUnit::IfcSIUnit(IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, optional v3_Prefix, IfcSIUnitName::IfcSIUnitName v4_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Dimensions)); e->setArgument(1,v2_UnitType,IfcUnitEnum::ToString(v2_UnitType)); if (v3_Prefix) { e->setArgument(2,*v3_Prefix,IfcSIPrefix::ToString(*v3_Prefix)); } else { e->setArgument(2); } ; e->setArgument(3,v4_Name,IfcSIUnitName::ToString(v4_Name)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSanitaryTerminalType IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum IfcSanitaryTerminalType::PredefinedType() { return IfcSanitaryTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcSanitaryTerminalType::setPredefinedType(IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSanitaryTerminalTypeEnum::ToString(v)); } @@ -10118,7 +10118,7 @@ bool IfcSanitaryTerminalType::is(Type::Enum v) const { return v == Type::IfcSani Type::Enum IfcSanitaryTerminalType::type() const { return Type::IfcSanitaryTerminalType; } Type::Enum IfcSanitaryTerminalType::Class() { return Type::IfcSanitaryTerminalType; } IfcSanitaryTerminalType::IfcSanitaryTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSanitaryTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSanitaryTerminalType::IfcSanitaryTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSanitaryTerminalType::IfcSanitaryTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSanitaryTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcScheduleTimeControl bool IfcScheduleTimeControl::hasActualStart() { return !entity->getArgument(5)->isNull(); } IfcDateTimeSelect IfcScheduleTimeControl::ActualStart() { return *entity->getArgument(5); } @@ -10179,7 +10179,7 @@ bool IfcScheduleTimeControl::is(Type::Enum v) const { return v == Type::IfcSched Type::Enum IfcScheduleTimeControl::type() const { return Type::IfcScheduleTimeControl; } Type::Enum IfcScheduleTimeControl::Class() { return Type::IfcScheduleTimeControl; } IfcScheduleTimeControl::IfcScheduleTimeControl(IfcAbstractEntityPtr e) { if (!is(Type::IfcScheduleTimeControl)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcScheduleTimeControl::IfcScheduleTimeControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcDateTimeSelect v6_ActualStart, IfcDateTimeSelect v7_EarlyStart, IfcDateTimeSelect v8_LateStart, IfcDateTimeSelect v9_ScheduleStart, IfcDateTimeSelect v10_ActualFinish, IfcDateTimeSelect v11_EarlyFinish, IfcDateTimeSelect v12_LateFinish, IfcDateTimeSelect v13_ScheduleFinish, IfcTimeMeasure v14_ScheduleDuration, IfcTimeMeasure v15_ActualDuration, IfcTimeMeasure v16_RemainingTime, IfcTimeMeasure v17_FreeFloat, IfcTimeMeasure v18_TotalFloat, bool v19_IsCritical, IfcDateTimeSelect v20_StatusTime, IfcTimeMeasure v21_StartFloat, IfcTimeMeasure v22_FinishFloat, IfcPositiveRatioMeasure v23_Completion) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ActualStart); e->setArgument(6,v7_EarlyStart); e->setArgument(7,v8_LateStart); e->setArgument(8,v9_ScheduleStart); e->setArgument(9,v10_ActualFinish); e->setArgument(10,v11_EarlyFinish); e->setArgument(11,v12_LateFinish); e->setArgument(12,v13_ScheduleFinish); e->setArgument(13,v14_ScheduleDuration); e->setArgument(14,v15_ActualDuration); e->setArgument(15,v16_RemainingTime); e->setArgument(16,v17_FreeFloat); e->setArgument(17,v18_TotalFloat); e->setArgument(18,v19_IsCritical); e->setArgument(19,v20_StatusTime); e->setArgument(20,v21_StartFloat); e->setArgument(21,v22_FinishFloat); e->setArgument(22,v23_Completion); entity = e; } +IfcScheduleTimeControl::IfcScheduleTimeControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ActualStart, optional v7_EarlyStart, optional v8_LateStart, optional v9_ScheduleStart, optional v10_ActualFinish, optional v11_EarlyFinish, optional v12_LateFinish, optional v13_ScheduleFinish, optional v14_ScheduleDuration, optional v15_ActualDuration, optional v16_RemainingTime, optional v17_FreeFloat, optional v18_TotalFloat, optional v19_IsCritical, optional v20_StatusTime, optional v21_StartFloat, optional v22_FinishFloat, optional v23_Completion) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ActualStart) { e->setArgument(5,(*v6_ActualStart)); } else { e->setArgument(5); } ; if (v7_EarlyStart) { e->setArgument(6,(*v7_EarlyStart)); } else { e->setArgument(6); } ; if (v8_LateStart) { e->setArgument(7,(*v8_LateStart)); } else { e->setArgument(7); } ; if (v9_ScheduleStart) { e->setArgument(8,(*v9_ScheduleStart)); } else { e->setArgument(8); } ; if (v10_ActualFinish) { e->setArgument(9,(*v10_ActualFinish)); } else { e->setArgument(9); } ; if (v11_EarlyFinish) { e->setArgument(10,(*v11_EarlyFinish)); } else { e->setArgument(10); } ; if (v12_LateFinish) { e->setArgument(11,(*v12_LateFinish)); } else { e->setArgument(11); } ; if (v13_ScheduleFinish) { e->setArgument(12,(*v13_ScheduleFinish)); } else { e->setArgument(12); } ; if (v14_ScheduleDuration) { e->setArgument(13,(*v14_ScheduleDuration)); } else { e->setArgument(13); } ; if (v15_ActualDuration) { e->setArgument(14,(*v15_ActualDuration)); } else { e->setArgument(14); } ; if (v16_RemainingTime) { e->setArgument(15,(*v16_RemainingTime)); } else { e->setArgument(15); } ; if (v17_FreeFloat) { e->setArgument(16,(*v17_FreeFloat)); } else { e->setArgument(16); } ; if (v18_TotalFloat) { e->setArgument(17,(*v18_TotalFloat)); } else { e->setArgument(17); } ; if (v19_IsCritical) { e->setArgument(18,(*v19_IsCritical)); } else { e->setArgument(18); } ; if (v20_StatusTime) { e->setArgument(19,(*v20_StatusTime)); } else { e->setArgument(19); } ; if (v21_StartFloat) { e->setArgument(20,(*v21_StartFloat)); } else { e->setArgument(20); } ; if (v22_FinishFloat) { e->setArgument(21,(*v22_FinishFloat)); } else { e->setArgument(21); } ; if (v23_Completion) { e->setArgument(22,(*v23_Completion)); } else { e->setArgument(22); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSectionProperties IfcSectionTypeEnum::IfcSectionTypeEnum IfcSectionProperties::SectionType() { return IfcSectionTypeEnum::FromString(*entity->getArgument(0)); } void IfcSectionProperties::setSectionType(IfcSectionTypeEnum::IfcSectionTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v,IfcSectionTypeEnum::ToString(v)); } @@ -10192,7 +10192,7 @@ bool IfcSectionProperties::is(Type::Enum v) const { return v == Type::IfcSection Type::Enum IfcSectionProperties::type() const { return Type::IfcSectionProperties; } Type::Enum IfcSectionProperties::Class() { return Type::IfcSectionProperties; } IfcSectionProperties::IfcSectionProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcSectionProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSectionProperties::IfcSectionProperties(IfcSectionTypeEnum::IfcSectionTypeEnum v1_SectionType, IfcProfileDef* v2_StartProfile, IfcProfileDef* v3_EndProfile) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SectionType); e->setArgument(1,v2_StartProfile); e->setArgument(2,v3_EndProfile); entity = e; } +IfcSectionProperties::IfcSectionProperties(IfcSectionTypeEnum::IfcSectionTypeEnum v1_SectionType, IfcProfileDef* v2_StartProfile, IfcProfileDef* v3_EndProfile) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SectionType,IfcSectionTypeEnum::ToString(v1_SectionType)); e->setArgument(1,(v2_StartProfile)); e->setArgument(2,(v3_EndProfile)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSectionReinforcementProperties IfcLengthMeasure IfcSectionReinforcementProperties::LongitudinalStartPosition() { return *entity->getArgument(0); } void IfcSectionReinforcementProperties::setLongitudinalStartPosition(IfcLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -10211,7 +10211,7 @@ bool IfcSectionReinforcementProperties::is(Type::Enum v) const { return v == Typ Type::Enum IfcSectionReinforcementProperties::type() const { return Type::IfcSectionReinforcementProperties; } Type::Enum IfcSectionReinforcementProperties::Class() { return Type::IfcSectionReinforcementProperties; } IfcSectionReinforcementProperties::IfcSectionReinforcementProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcSectionReinforcementProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSectionReinforcementProperties::IfcSectionReinforcementProperties(IfcLengthMeasure v1_LongitudinalStartPosition, IfcLengthMeasure v2_LongitudinalEndPosition, IfcLengthMeasure v3_TransversePosition, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v4_ReinforcementRole, IfcSectionProperties* v5_SectionDefinition, SHARED_PTR< IfcTemplatedEntityList > v6_CrossSectionReinforcementDefinitions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LongitudinalStartPosition); e->setArgument(1,v2_LongitudinalEndPosition); e->setArgument(2,v3_TransversePosition); e->setArgument(3,v4_ReinforcementRole); e->setArgument(4,v5_SectionDefinition); e->setArgument(5,v6_CrossSectionReinforcementDefinitions->generalize()); entity = e; } +IfcSectionReinforcementProperties::IfcSectionReinforcementProperties(IfcLengthMeasure v1_LongitudinalStartPosition, IfcLengthMeasure v2_LongitudinalEndPosition, optional v3_TransversePosition, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v4_ReinforcementRole, IfcSectionProperties* v5_SectionDefinition, SHARED_PTR< IfcTemplatedEntityList > v6_CrossSectionReinforcementDefinitions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_LongitudinalStartPosition)); e->setArgument(1,(v2_LongitudinalEndPosition)); if (v3_TransversePosition) { e->setArgument(2,(*v3_TransversePosition)); } else { e->setArgument(2); } ; e->setArgument(3,v4_ReinforcementRole,IfcReinforcingBarRoleEnum::ToString(v4_ReinforcementRole)); e->setArgument(4,(v5_SectionDefinition)); e->setArgument(5,(v6_CrossSectionReinforcementDefinitions)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSectionedSpine IfcCompositeCurve* IfcSectionedSpine::SpineCurve() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSectionedSpine::setSpineCurve(IfcCompositeCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -10223,7 +10223,7 @@ bool IfcSectionedSpine::is(Type::Enum v) const { return v == Type::IfcSectionedS Type::Enum IfcSectionedSpine::type() const { return Type::IfcSectionedSpine; } Type::Enum IfcSectionedSpine::Class() { return Type::IfcSectionedSpine; } IfcSectionedSpine::IfcSectionedSpine(IfcAbstractEntityPtr e) { if (!is(Type::IfcSectionedSpine)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSectionedSpine::IfcSectionedSpine(IfcCompositeCurve* v1_SpineCurve, SHARED_PTR< IfcTemplatedEntityList > v2_CrossSections, SHARED_PTR< IfcTemplatedEntityList > v3_CrossSectionPositions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SpineCurve); e->setArgument(1,v2_CrossSections->generalize()); e->setArgument(2,v3_CrossSectionPositions->generalize()); entity = e; } +IfcSectionedSpine::IfcSectionedSpine(IfcCompositeCurve* v1_SpineCurve, SHARED_PTR< IfcTemplatedEntityList > v2_CrossSections, SHARED_PTR< IfcTemplatedEntityList > v3_CrossSectionPositions) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SpineCurve)); e->setArgument(1,(v2_CrossSections)->generalize()); e->setArgument(2,(v3_CrossSectionPositions)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSensorType IfcSensorTypeEnum::IfcSensorTypeEnum IfcSensorType::PredefinedType() { return IfcSensorTypeEnum::FromString(*entity->getArgument(9)); } void IfcSensorType::setPredefinedType(IfcSensorTypeEnum::IfcSensorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSensorTypeEnum::ToString(v)); } @@ -10231,7 +10231,7 @@ bool IfcSensorType::is(Type::Enum v) const { return v == Type::IfcSensorType || Type::Enum IfcSensorType::type() const { return Type::IfcSensorType; } Type::Enum IfcSensorType::Class() { return Type::IfcSensorType; } IfcSensorType::IfcSensorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSensorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSensorType::IfcSensorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSensorTypeEnum::IfcSensorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSensorType::IfcSensorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSensorTypeEnum::IfcSensorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSensorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcServiceLife IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum IfcServiceLife::ServiceLifeType() { return IfcServiceLifeTypeEnum::FromString(*entity->getArgument(5)); } void IfcServiceLife::setServiceLifeType(IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v,IfcServiceLifeTypeEnum::ToString(v)); } @@ -10241,7 +10241,7 @@ bool IfcServiceLife::is(Type::Enum v) const { return v == Type::IfcServiceLife | Type::Enum IfcServiceLife::type() const { return Type::IfcServiceLife; } Type::Enum IfcServiceLife::Class() { return Type::IfcServiceLife; } IfcServiceLife::IfcServiceLife(IfcAbstractEntityPtr e) { if (!is(Type::IfcServiceLife)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcServiceLife::IfcServiceLife(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum v6_ServiceLifeType, IfcTimeMeasure v7_ServiceLifeDuration) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ServiceLifeType); e->setArgument(6,v7_ServiceLifeDuration); entity = e; } +IfcServiceLife::IfcServiceLife(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum v6_ServiceLifeType, IfcTimeMeasure v7_ServiceLifeDuration) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,v6_ServiceLifeType,IfcServiceLifeTypeEnum::ToString(v6_ServiceLifeType)); e->setArgument(6,(v7_ServiceLifeDuration)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcServiceLifeFactor IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum IfcServiceLifeFactor::PredefinedType() { return IfcServiceLifeFactorTypeEnum::FromString(*entity->getArgument(4)); } void IfcServiceLifeFactor::setPredefinedType(IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v,IfcServiceLifeFactorTypeEnum::ToString(v)); } @@ -10257,7 +10257,7 @@ bool IfcServiceLifeFactor::is(Type::Enum v) const { return v == Type::IfcService Type::Enum IfcServiceLifeFactor::type() const { return Type::IfcServiceLifeFactor; } Type::Enum IfcServiceLifeFactor::Class() { return Type::IfcServiceLifeFactor; } IfcServiceLifeFactor::IfcServiceLifeFactor(IfcAbstractEntityPtr e) { if (!is(Type::IfcServiceLifeFactor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcServiceLifeFactor::IfcServiceLifeFactor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum v5_PredefinedType, IfcMeasureValue v6_UpperValue, IfcMeasureValue v7_MostUsedValue, IfcMeasureValue v8_LowerValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_PredefinedType); e->setArgument(5,v6_UpperValue); e->setArgument(6,v7_MostUsedValue); e->setArgument(7,v8_LowerValue); entity = e; } +IfcServiceLifeFactor::IfcServiceLifeFactor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum v5_PredefinedType, optional v6_UpperValue, IfcMeasureValue v7_MostUsedValue, optional v8_LowerValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,v5_PredefinedType,IfcServiceLifeFactorTypeEnum::ToString(v5_PredefinedType)); if (v6_UpperValue) { e->setArgument(5,(*v6_UpperValue)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_MostUsedValue)); if (v8_LowerValue) { e->setArgument(7,(*v8_LowerValue)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcShapeAspect SHARED_PTR< IfcTemplatedEntityList > IfcShapeAspect::ShapeRepresentations() { RETURN_AS_LIST(IfcShapeModel,0) } void IfcShapeAspect::setShapeRepresentations(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -10275,20 +10275,20 @@ bool IfcShapeAspect::is(Type::Enum v) const { return v == Type::IfcShapeAspect; Type::Enum IfcShapeAspect::type() const { return Type::IfcShapeAspect; } Type::Enum IfcShapeAspect::Class() { return Type::IfcShapeAspect; } IfcShapeAspect::IfcShapeAspect(IfcAbstractEntityPtr e) { if (!is(Type::IfcShapeAspect)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcShapeAspect::IfcShapeAspect(SHARED_PTR< IfcTemplatedEntityList > v1_ShapeRepresentations, IfcLabel v2_Name, IfcText v3_Description, bool v4_ProductDefinitional, IfcProductDefinitionShape* v5_PartOfProductDefinitionShape) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ShapeRepresentations->generalize()); e->setArgument(1,v2_Name); e->setArgument(2,v3_Description); e->setArgument(3,v4_ProductDefinitional); e->setArgument(4,v5_PartOfProductDefinitionShape); entity = e; } +IfcShapeAspect::IfcShapeAspect(SHARED_PTR< IfcTemplatedEntityList > v1_ShapeRepresentations, optional v2_Name, optional v3_Description, bool v4_ProductDefinitional, IfcProductDefinitionShape* v5_PartOfProductDefinitionShape) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ShapeRepresentations)->generalize()); if (v2_Name) { e->setArgument(1,(*v2_Name)); } else { e->setArgument(1); } ; if (v3_Description) { e->setArgument(2,(*v3_Description)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_ProductDefinitional)); e->setArgument(4,(v5_PartOfProductDefinitionShape)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcShapeModel IfcShapeAspect::list IfcShapeModel::OfShapeAspect() { RETURN_INVERSE(IfcShapeAspect) } bool IfcShapeModel::is(Type::Enum v) const { return v == Type::IfcShapeModel || IfcRepresentation::is(v); } Type::Enum IfcShapeModel::type() const { return Type::IfcShapeModel; } Type::Enum IfcShapeModel::Class() { return Type::IfcShapeModel; } IfcShapeModel::IfcShapeModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcShapeModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcShapeModel::IfcShapeModel(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcShapeModel::IfcShapeModel(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcShapeRepresentation bool IfcShapeRepresentation::is(Type::Enum v) const { return v == Type::IfcShapeRepresentation || IfcShapeModel::is(v); } Type::Enum IfcShapeRepresentation::type() const { return Type::IfcShapeRepresentation; } Type::Enum IfcShapeRepresentation::Class() { return Type::IfcShapeRepresentation; } IfcShapeRepresentation::IfcShapeRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcShapeRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcShapeRepresentation::IfcShapeRepresentation(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcShapeRepresentation::IfcShapeRepresentation(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcShellBasedSurfaceModel SHARED_PTR< IfcTemplatedEntityList > IfcShellBasedSurfaceModel::SbsmBoundary() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcShellBasedSurfaceModel::setSbsmBoundary(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -10296,13 +10296,13 @@ bool IfcShellBasedSurfaceModel::is(Type::Enum v) const { return v == Type::IfcSh Type::Enum IfcShellBasedSurfaceModel::type() const { return Type::IfcShellBasedSurfaceModel; } Type::Enum IfcShellBasedSurfaceModel::Class() { return Type::IfcShellBasedSurfaceModel; } IfcShellBasedSurfaceModel::IfcShellBasedSurfaceModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcShellBasedSurfaceModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcShellBasedSurfaceModel::IfcShellBasedSurfaceModel(IfcEntities v1_SbsmBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SbsmBoundary); entity = e; } +IfcShellBasedSurfaceModel::IfcShellBasedSurfaceModel(IfcEntities v1_SbsmBoundary) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SbsmBoundary)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSimpleProperty bool IfcSimpleProperty::is(Type::Enum v) const { return v == Type::IfcSimpleProperty || IfcProperty::is(v); } Type::Enum IfcSimpleProperty::type() const { return Type::IfcSimpleProperty; } Type::Enum IfcSimpleProperty::Class() { return Type::IfcSimpleProperty; } IfcSimpleProperty::IfcSimpleProperty(IfcAbstractEntityPtr e) { if (!is(Type::IfcSimpleProperty)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSimpleProperty::IfcSimpleProperty(IfcIdentifier v1_Name, IfcText v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); entity = e; } +IfcSimpleProperty::IfcSimpleProperty(IfcIdentifier v1_Name, optional v2_Description) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSite bool IfcSite::hasRefLatitude() { return !entity->getArgument(9)->isNull(); } IfcCompoundPlaneAngleMeasure IfcSite::RefLatitude() { return *entity->getArgument(9); } @@ -10323,7 +10323,7 @@ bool IfcSite::is(Type::Enum v) const { return v == Type::IfcSite || IfcSpatialSt Type::Enum IfcSite::type() const { return Type::IfcSite; } Type::Enum IfcSite::Class() { return Type::IfcSite; } IfcSite::IfcSite(IfcAbstractEntityPtr e) { if (!is(Type::IfcSite)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSite::IfcSite(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcCompoundPlaneAngleMeasure v10_RefLatitude, IfcCompoundPlaneAngleMeasure v11_RefLongitude, IfcLengthMeasure v12_RefElevation, IfcLabel v13_LandTitleNumber, IfcPostalAddress* v14_SiteAddress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_LongName); e->setArgument(8,v9_CompositionType); e->setArgument(9,v10_RefLatitude); e->setArgument(10,v11_RefLongitude); e->setArgument(11,v12_RefElevation); e->setArgument(12,v13_LandTitleNumber); e->setArgument(13,v14_SiteAddress); entity = e; } +IfcSite::IfcSite(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_RefLatitude, optional v11_RefLongitude, optional v12_RefElevation, optional v13_LandTitleNumber, IfcPostalAddress* v14_SiteAddress) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_LongName) { e->setArgument(7,(*v8_LongName)); } else { e->setArgument(7); } ; e->setArgument(8,v9_CompositionType,IfcElementCompositionEnum::ToString(v9_CompositionType)); if (v10_RefLatitude) { e->setArgument(9,(*v10_RefLatitude)); } else { e->setArgument(9); } ; if (v11_RefLongitude) { e->setArgument(10,(*v11_RefLongitude)); } else { e->setArgument(10); } ; if (v12_RefElevation) { e->setArgument(11,(*v12_RefElevation)); } else { e->setArgument(11); } ; if (v13_LandTitleNumber) { e->setArgument(12,(*v13_LandTitleNumber)); } else { e->setArgument(12); } ; e->setArgument(13,(v14_SiteAddress)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSlab bool IfcSlab::hasPredefinedType() { return !entity->getArgument(8)->isNull(); } IfcSlabTypeEnum::IfcSlabTypeEnum IfcSlab::PredefinedType() { return IfcSlabTypeEnum::FromString(*entity->getArgument(8)); } @@ -10332,7 +10332,7 @@ bool IfcSlab::is(Type::Enum v) const { return v == Type::IfcSlab || IfcBuildingE Type::Enum IfcSlab::type() const { return Type::IfcSlab; } Type::Enum IfcSlab::Class() { return Type::IfcSlab; } IfcSlab::IfcSlab(IfcAbstractEntityPtr e) { if (!is(Type::IfcSlab)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSlab::IfcSlab(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcSlabTypeEnum::IfcSlabTypeEnum v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_PredefinedType); entity = e; } +IfcSlab::IfcSlab(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_PredefinedType) { e->setArgument(8,*v9_PredefinedType,IfcSlabTypeEnum::ToString(*v9_PredefinedType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSlabType IfcSlabTypeEnum::IfcSlabTypeEnum IfcSlabType::PredefinedType() { return IfcSlabTypeEnum::FromString(*entity->getArgument(9)); } void IfcSlabType::setPredefinedType(IfcSlabTypeEnum::IfcSlabTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSlabTypeEnum::ToString(v)); } @@ -10340,7 +10340,7 @@ bool IfcSlabType::is(Type::Enum v) const { return v == Type::IfcSlabType || IfcB Type::Enum IfcSlabType::type() const { return Type::IfcSlabType; } Type::Enum IfcSlabType::Class() { return Type::IfcSlabType; } IfcSlabType::IfcSlabType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSlabType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSlabType::IfcSlabType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSlabTypeEnum::IfcSlabTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSlabType::IfcSlabType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSlabTypeEnum::IfcSlabTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSlabTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSlippageConnectionCondition bool IfcSlippageConnectionCondition::hasSlippageX() { return !entity->getArgument(1)->isNull(); } IfcLengthMeasure IfcSlippageConnectionCondition::SlippageX() { return *entity->getArgument(1); } @@ -10355,7 +10355,7 @@ bool IfcSlippageConnectionCondition::is(Type::Enum v) const { return v == Type:: Type::Enum IfcSlippageConnectionCondition::type() const { return Type::IfcSlippageConnectionCondition; } Type::Enum IfcSlippageConnectionCondition::Class() { return Type::IfcSlippageConnectionCondition; } IfcSlippageConnectionCondition::IfcSlippageConnectionCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcSlippageConnectionCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSlippageConnectionCondition::IfcSlippageConnectionCondition(IfcLabel v1_Name, IfcLengthMeasure v2_SlippageX, IfcLengthMeasure v3_SlippageY, IfcLengthMeasure v4_SlippageZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_SlippageX); e->setArgument(2,v3_SlippageY); e->setArgument(3,v4_SlippageZ); entity = e; } +IfcSlippageConnectionCondition::IfcSlippageConnectionCondition(optional v1_Name, optional v2_SlippageX, optional v3_SlippageY, optional v4_SlippageZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_SlippageX) { e->setArgument(1,(*v2_SlippageX)); } else { e->setArgument(1); } ; if (v3_SlippageY) { e->setArgument(2,(*v3_SlippageY)); } else { e->setArgument(2); } ; if (v4_SlippageZ) { e->setArgument(3,(*v4_SlippageZ)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSolidModel bool IfcSolidModel::is(Type::Enum v) const { return v == Type::IfcSolidModel || IfcGeometricRepresentationItem::is(v); } Type::Enum IfcSolidModel::type() const { return Type::IfcSolidModel; } @@ -10373,7 +10373,7 @@ bool IfcSoundProperties::is(Type::Enum v) const { return v == Type::IfcSoundProp Type::Enum IfcSoundProperties::type() const { return Type::IfcSoundProperties; } Type::Enum IfcSoundProperties::Class() { return Type::IfcSoundProperties; } IfcSoundProperties::IfcSoundProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcSoundProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSoundProperties::IfcSoundProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcBoolean v5_IsAttenuating, IfcSoundScaleEnum::IfcSoundScaleEnum v6_SoundScale, SHARED_PTR< IfcTemplatedEntityList > v7_SoundValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_IsAttenuating); e->setArgument(5,v6_SoundScale); e->setArgument(6,v7_SoundValues->generalize()); entity = e; } +IfcSoundProperties::IfcSoundProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcBoolean v5_IsAttenuating, optional v6_SoundScale, SHARED_PTR< IfcTemplatedEntityList > v7_SoundValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_IsAttenuating)); if (v6_SoundScale) { e->setArgument(5,*v6_SoundScale,IfcSoundScaleEnum::ToString(*v6_SoundScale)); } else { e->setArgument(5); } ; e->setArgument(6,(v7_SoundValues)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSoundValue bool IfcSoundValue::hasSoundLevelTimeSeries() { return !entity->getArgument(4)->isNull(); } IfcTimeSeries* IfcSoundValue::SoundLevelTimeSeries() { return reinterpret_pointer_cast(*entity->getArgument(4)); } @@ -10387,7 +10387,7 @@ bool IfcSoundValue::is(Type::Enum v) const { return v == Type::IfcSoundValue || Type::Enum IfcSoundValue::type() const { return Type::IfcSoundValue; } Type::Enum IfcSoundValue::Class() { return Type::IfcSoundValue; } IfcSoundValue::IfcSoundValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcSoundValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSoundValue::IfcSoundValue(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcTimeSeries* v5_SoundLevelTimeSeries, IfcFrequencyMeasure v6_Frequency, IfcDerivedMeasureValue v7_SoundLevelSingleValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_SoundLevelTimeSeries); e->setArgument(5,v6_Frequency); e->setArgument(6,v7_SoundLevelSingleValue); entity = e; } +IfcSoundValue::IfcSoundValue(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcTimeSeries* v5_SoundLevelTimeSeries, IfcFrequencyMeasure v6_Frequency, optional v7_SoundLevelSingleValue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,(v5_SoundLevelTimeSeries)); e->setArgument(5,(v6_Frequency)); if (v7_SoundLevelSingleValue) { e->setArgument(6,(*v7_SoundLevelSingleValue)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpace IfcInternalOrExternalEnum::IfcInternalOrExternalEnum IfcSpace::InteriorOrExteriorSpace() { return IfcInternalOrExternalEnum::FromString(*entity->getArgument(9)); } void IfcSpace::setInteriorOrExteriorSpace(IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcInternalOrExternalEnum::ToString(v)); } @@ -10400,7 +10400,7 @@ bool IfcSpace::is(Type::Enum v) const { return v == Type::IfcSpace || IfcSpatial Type::Enum IfcSpace::type() const { return Type::IfcSpace; } Type::Enum IfcSpace::Class() { return Type::IfcSpace; } IfcSpace::IfcSpace(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpace)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpace::IfcSpace(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v10_InteriorOrExteriorSpace, IfcLengthMeasure v11_ElevationWithFlooring) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_LongName); e->setArgument(8,v9_CompositionType); e->setArgument(9,v10_InteriorOrExteriorSpace); e->setArgument(10,v11_ElevationWithFlooring); entity = e; } +IfcSpace::IfcSpace(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v10_InteriorOrExteriorSpace, optional v11_ElevationWithFlooring) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_LongName) { e->setArgument(7,(*v8_LongName)); } else { e->setArgument(7); } ; e->setArgument(8,v9_CompositionType,IfcElementCompositionEnum::ToString(v9_CompositionType)); e->setArgument(9,v10_InteriorOrExteriorSpace,IfcInternalOrExternalEnum::ToString(v10_InteriorOrExteriorSpace)); if (v11_ElevationWithFlooring) { e->setArgument(10,(*v11_ElevationWithFlooring)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpaceHeaterType IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum IfcSpaceHeaterType::PredefinedType() { return IfcSpaceHeaterTypeEnum::FromString(*entity->getArgument(9)); } void IfcSpaceHeaterType::setPredefinedType(IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSpaceHeaterTypeEnum::ToString(v)); } @@ -10408,7 +10408,7 @@ bool IfcSpaceHeaterType::is(Type::Enum v) const { return v == Type::IfcSpaceHeat Type::Enum IfcSpaceHeaterType::type() const { return Type::IfcSpaceHeaterType; } Type::Enum IfcSpaceHeaterType::Class() { return Type::IfcSpaceHeaterType; } IfcSpaceHeaterType::IfcSpaceHeaterType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpaceHeaterType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpaceHeaterType::IfcSpaceHeaterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSpaceHeaterType::IfcSpaceHeaterType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSpaceHeaterTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpaceProgram IfcIdentifier IfcSpaceProgram::SpaceProgramIdentifier() { return *entity->getArgument(5); } void IfcSpaceProgram::setSpaceProgramIdentifier(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -10429,7 +10429,7 @@ bool IfcSpaceProgram::is(Type::Enum v) const { return v == Type::IfcSpaceProgram Type::Enum IfcSpaceProgram::type() const { return Type::IfcSpaceProgram; } Type::Enum IfcSpaceProgram::Class() { return Type::IfcSpaceProgram; } IfcSpaceProgram::IfcSpaceProgram(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpaceProgram)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpaceProgram::IfcSpaceProgram(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_SpaceProgramIdentifier, IfcAreaMeasure v7_MaxRequiredArea, IfcAreaMeasure v8_MinRequiredArea, IfcSpatialStructureElement* v9_RequestedLocation, IfcAreaMeasure v10_StandardRequiredArea) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_SpaceProgramIdentifier); e->setArgument(6,v7_MaxRequiredArea); e->setArgument(7,v8_MinRequiredArea); e->setArgument(8,v9_RequestedLocation); e->setArgument(9,v10_StandardRequiredArea); entity = e; } +IfcSpaceProgram::IfcSpaceProgram(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_SpaceProgramIdentifier, optional v7_MaxRequiredArea, optional v8_MinRequiredArea, IfcSpatialStructureElement* v9_RequestedLocation, IfcAreaMeasure v10_StandardRequiredArea) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_SpaceProgramIdentifier)); if (v7_MaxRequiredArea) { e->setArgument(6,(*v7_MaxRequiredArea)); } else { e->setArgument(6); } ; if (v8_MinRequiredArea) { e->setArgument(7,(*v8_MinRequiredArea)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_RequestedLocation)); e->setArgument(9,(v10_StandardRequiredArea)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpaceThermalLoadProperties bool IfcSpaceThermalLoadProperties::hasApplicableValueRatio() { return !entity->getArgument(4)->isNull(); } IfcPositiveRatioMeasure IfcSpaceThermalLoadProperties::ApplicableValueRatio() { return *entity->getArgument(4); } @@ -10461,7 +10461,7 @@ bool IfcSpaceThermalLoadProperties::is(Type::Enum v) const { return v == Type::I Type::Enum IfcSpaceThermalLoadProperties::type() const { return Type::IfcSpaceThermalLoadProperties; } Type::Enum IfcSpaceThermalLoadProperties::Class() { return Type::IfcSpaceThermalLoadProperties; } IfcSpaceThermalLoadProperties::IfcSpaceThermalLoadProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpaceThermalLoadProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpaceThermalLoadProperties::IfcSpaceThermalLoadProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveRatioMeasure v5_ApplicableValueRatio, IfcThermalLoadSourceEnum::IfcThermalLoadSourceEnum v6_ThermalLoadSource, IfcPropertySourceEnum::IfcPropertySourceEnum v7_PropertySource, IfcText v8_SourceDescription, IfcPowerMeasure v9_MaximumValue, IfcPowerMeasure v10_MinimumValue, IfcTimeSeries* v11_ThermalLoadTimeSeriesValues, IfcLabel v12_UserDefinedThermalLoadSource, IfcLabel v13_UserDefinedPropertySource, IfcThermalLoadTypeEnum::IfcThermalLoadTypeEnum v14_ThermalLoadType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableValueRatio); e->setArgument(5,v6_ThermalLoadSource); e->setArgument(6,v7_PropertySource); e->setArgument(7,v8_SourceDescription); e->setArgument(8,v9_MaximumValue); e->setArgument(9,v10_MinimumValue); e->setArgument(10,v11_ThermalLoadTimeSeriesValues); e->setArgument(11,v12_UserDefinedThermalLoadSource); e->setArgument(12,v13_UserDefinedPropertySource); e->setArgument(13,v14_ThermalLoadType); entity = e; } +IfcSpaceThermalLoadProperties::IfcSpaceThermalLoadProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableValueRatio, IfcThermalLoadSourceEnum::IfcThermalLoadSourceEnum v6_ThermalLoadSource, IfcPropertySourceEnum::IfcPropertySourceEnum v7_PropertySource, optional v8_SourceDescription, IfcPowerMeasure v9_MaximumValue, optional v10_MinimumValue, IfcTimeSeries* v11_ThermalLoadTimeSeriesValues, optional v12_UserDefinedThermalLoadSource, optional v13_UserDefinedPropertySource, IfcThermalLoadTypeEnum::IfcThermalLoadTypeEnum v14_ThermalLoadType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableValueRatio) { e->setArgument(4,(*v5_ApplicableValueRatio)); } else { e->setArgument(4); } ; e->setArgument(5,v6_ThermalLoadSource,IfcThermalLoadSourceEnum::ToString(v6_ThermalLoadSource)); e->setArgument(6,v7_PropertySource,IfcPropertySourceEnum::ToString(v7_PropertySource)); if (v8_SourceDescription) { e->setArgument(7,(*v8_SourceDescription)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_MaximumValue)); if (v10_MinimumValue) { e->setArgument(9,(*v10_MinimumValue)); } else { e->setArgument(9); } ; e->setArgument(10,(v11_ThermalLoadTimeSeriesValues)); if (v12_UserDefinedThermalLoadSource) { e->setArgument(11,(*v12_UserDefinedThermalLoadSource)); } else { e->setArgument(11); } ; if (v13_UserDefinedPropertySource) { e->setArgument(12,(*v13_UserDefinedPropertySource)); } else { e->setArgument(12); } ; e->setArgument(13,v14_ThermalLoadType,IfcThermalLoadTypeEnum::ToString(v14_ThermalLoadType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpaceType IfcSpaceTypeEnum::IfcSpaceTypeEnum IfcSpaceType::PredefinedType() { return IfcSpaceTypeEnum::FromString(*entity->getArgument(9)); } void IfcSpaceType::setPredefinedType(IfcSpaceTypeEnum::IfcSpaceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSpaceTypeEnum::ToString(v)); } @@ -10469,7 +10469,7 @@ bool IfcSpaceType::is(Type::Enum v) const { return v == Type::IfcSpaceType || If Type::Enum IfcSpaceType::type() const { return Type::IfcSpaceType; } Type::Enum IfcSpaceType::Class() { return Type::IfcSpaceType; } IfcSpaceType::IfcSpaceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpaceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpaceType::IfcSpaceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSpaceTypeEnum::IfcSpaceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSpaceType::IfcSpaceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSpaceTypeEnum::IfcSpaceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSpaceTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpatialStructureElement bool IfcSpatialStructureElement::hasLongName() { return !entity->getArgument(7)->isNull(); } IfcLabel IfcSpatialStructureElement::LongName() { return *entity->getArgument(7); } @@ -10483,13 +10483,13 @@ bool IfcSpatialStructureElement::is(Type::Enum v) const { return v == Type::IfcS Type::Enum IfcSpatialStructureElement::type() const { return Type::IfcSpatialStructureElement; } Type::Enum IfcSpatialStructureElement::Class() { return Type::IfcSpatialStructureElement; } IfcSpatialStructureElement::IfcSpatialStructureElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpatialStructureElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpatialStructureElement::IfcSpatialStructureElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_LongName); e->setArgument(8,v9_CompositionType); entity = e; } +IfcSpatialStructureElement::IfcSpatialStructureElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_LongName) { e->setArgument(7,(*v8_LongName)); } else { e->setArgument(7); } ; e->setArgument(8,v9_CompositionType,IfcElementCompositionEnum::ToString(v9_CompositionType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSpatialStructureElementType bool IfcSpatialStructureElementType::is(Type::Enum v) const { return v == Type::IfcSpatialStructureElementType || IfcElementType::is(v); } Type::Enum IfcSpatialStructureElementType::type() const { return Type::IfcSpatialStructureElementType; } Type::Enum IfcSpatialStructureElementType::Class() { return Type::IfcSpatialStructureElementType; } IfcSpatialStructureElementType::IfcSpatialStructureElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSpatialStructureElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSpatialStructureElementType::IfcSpatialStructureElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcSpatialStructureElementType::IfcSpatialStructureElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSphere IfcPositiveLengthMeasure IfcSphere::Radius() { return *entity->getArgument(1); } void IfcSphere::setRadius(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -10497,7 +10497,7 @@ bool IfcSphere::is(Type::Enum v) const { return v == Type::IfcSphere || IfcCsgPr Type::Enum IfcSphere::type() const { return Type::IfcSphere; } Type::Enum IfcSphere::Class() { return Type::IfcSphere; } IfcSphere::IfcSphere(IfcAbstractEntityPtr e) { if (!is(Type::IfcSphere)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSphere::IfcSphere(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Position); e->setArgument(1,v2_Radius); entity = e; } +IfcSphere::IfcSphere(IfcAxis2Placement3D* v1_Position, IfcPositiveLengthMeasure v2_Radius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Position)); e->setArgument(1,(v2_Radius)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStackTerminalType IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum IfcStackTerminalType::PredefinedType() { return IfcStackTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcStackTerminalType::setPredefinedType(IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcStackTerminalTypeEnum::ToString(v)); } @@ -10505,7 +10505,7 @@ bool IfcStackTerminalType::is(Type::Enum v) const { return v == Type::IfcStackTe Type::Enum IfcStackTerminalType::type() const { return Type::IfcStackTerminalType; } Type::Enum IfcStackTerminalType::Class() { return Type::IfcStackTerminalType; } IfcStackTerminalType::IfcStackTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcStackTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStackTerminalType::IfcStackTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcStackTerminalType::IfcStackTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcStackTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStair IfcStairTypeEnum::IfcStairTypeEnum IfcStair::ShapeType() { return IfcStairTypeEnum::FromString(*entity->getArgument(8)); } void IfcStair::setShapeType(IfcStairTypeEnum::IfcStairTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcStairTypeEnum::ToString(v)); } @@ -10513,7 +10513,7 @@ bool IfcStair::is(Type::Enum v) const { return v == Type::IfcStair || IfcBuildin Type::Enum IfcStair::type() const { return Type::IfcStair; } Type::Enum IfcStair::Class() { return Type::IfcStair; } IfcStair::IfcStair(IfcAbstractEntityPtr e) { if (!is(Type::IfcStair)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStair::IfcStair(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcStairTypeEnum::IfcStairTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ShapeType); entity = e; } +IfcStair::IfcStair(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcStairTypeEnum::IfcStairTypeEnum v9_ShapeType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_ShapeType,IfcStairTypeEnum::ToString(v9_ShapeType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStairFlight bool IfcStairFlight::hasNumberOfRiser() { return !entity->getArgument(8)->isNull(); } int IfcStairFlight::NumberOfRiser() { return *entity->getArgument(8); } @@ -10531,7 +10531,7 @@ bool IfcStairFlight::is(Type::Enum v) const { return v == Type::IfcStairFlight | Type::Enum IfcStairFlight::type() const { return Type::IfcStairFlight; } Type::Enum IfcStairFlight::Class() { return Type::IfcStairFlight; } IfcStairFlight::IfcStairFlight(IfcAbstractEntityPtr e) { if (!is(Type::IfcStairFlight)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStairFlight::IfcStairFlight(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, int v9_NumberOfRiser, int v10_NumberOfTreads, IfcPositiveLengthMeasure v11_RiserHeight, IfcPositiveLengthMeasure v12_TreadLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_NumberOfRiser); e->setArgument(9,v10_NumberOfTreads); e->setArgument(10,v11_RiserHeight); e->setArgument(11,v12_TreadLength); entity = e; } +IfcStairFlight::IfcStairFlight(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_NumberOfRiser, optional v10_NumberOfTreads, optional v11_RiserHeight, optional v12_TreadLength) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_NumberOfRiser) { e->setArgument(8,(*v9_NumberOfRiser)); } else { e->setArgument(8); } ; if (v10_NumberOfTreads) { e->setArgument(9,(*v10_NumberOfTreads)); } else { e->setArgument(9); } ; if (v11_RiserHeight) { e->setArgument(10,(*v11_RiserHeight)); } else { e->setArgument(10); } ; if (v12_TreadLength) { e->setArgument(11,(*v12_TreadLength)); } else { e->setArgument(11); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStairFlightType IfcStairFlightTypeEnum::IfcStairFlightTypeEnum IfcStairFlightType::PredefinedType() { return IfcStairFlightTypeEnum::FromString(*entity->getArgument(9)); } void IfcStairFlightType::setPredefinedType(IfcStairFlightTypeEnum::IfcStairFlightTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcStairFlightTypeEnum::ToString(v)); } @@ -10539,7 +10539,7 @@ bool IfcStairFlightType::is(Type::Enum v) const { return v == Type::IfcStairFlig Type::Enum IfcStairFlightType::type() const { return Type::IfcStairFlightType; } Type::Enum IfcStairFlightType::Class() { return Type::IfcStairFlightType; } IfcStairFlightType::IfcStairFlightType(IfcAbstractEntityPtr e) { if (!is(Type::IfcStairFlightType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStairFlightType::IfcStairFlightType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcStairFlightTypeEnum::IfcStairFlightTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcStairFlightType::IfcStairFlightType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcStairFlightTypeEnum::IfcStairFlightTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcStairFlightTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralAction bool IfcStructuralAction::DestabilizingLoad() { return *entity->getArgument(9); } void IfcStructuralAction::setDestabilizingLoad(bool v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v); } @@ -10550,7 +10550,7 @@ bool IfcStructuralAction::is(Type::Enum v) const { return v == Type::IfcStructur Type::Enum IfcStructuralAction::type() const { return Type::IfcStructuralAction; } Type::Enum IfcStructuralAction::Class() { return Type::IfcStructuralAction; } IfcStructuralAction::IfcStructuralAction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralAction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralAction::IfcStructuralAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); entity = e; } +IfcStructuralAction::IfcStructuralAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralActivity IfcStructuralLoad* IfcStructuralActivity::AppliedLoad() { return reinterpret_pointer_cast(*entity->getArgument(7)); } void IfcStructuralActivity::setAppliedLoad(IfcStructuralLoad* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v); } @@ -10561,7 +10561,7 @@ bool IfcStructuralActivity::is(Type::Enum v) const { return v == Type::IfcStruct Type::Enum IfcStructuralActivity::type() const { return Type::IfcStructuralActivity; } Type::Enum IfcStructuralActivity::Class() { return Type::IfcStructuralActivity; } IfcStructuralActivity::IfcStructuralActivity(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralActivity)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralActivity::IfcStructuralActivity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); entity = e; } +IfcStructuralActivity::IfcStructuralActivity(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralAnalysisModel IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum IfcStructuralAnalysisModel::PredefinedType() { return IfcAnalysisModelTypeEnum::FromString(*entity->getArgument(5)); } void IfcStructuralAnalysisModel::setPredefinedType(IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v,IfcAnalysisModelTypeEnum::ToString(v)); } @@ -10578,7 +10578,7 @@ bool IfcStructuralAnalysisModel::is(Type::Enum v) const { return v == Type::IfcS Type::Enum IfcStructuralAnalysisModel::type() const { return Type::IfcStructuralAnalysisModel; } Type::Enum IfcStructuralAnalysisModel::Class() { return Type::IfcStructuralAnalysisModel; } IfcStructuralAnalysisModel::IfcStructuralAnalysisModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralAnalysisModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralAnalysisModel::IfcStructuralAnalysisModel(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum v6_PredefinedType, IfcAxis2Placement3D* v7_OrientationOf2DPlane, SHARED_PTR< IfcTemplatedEntityList > v8_LoadedBy, SHARED_PTR< IfcTemplatedEntityList > v9_HasResults) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_PredefinedType); e->setArgument(6,v7_OrientationOf2DPlane); e->setArgument(7,v8_LoadedBy->generalize()); e->setArgument(8,v9_HasResults->generalize()); entity = e; } +IfcStructuralAnalysisModel::IfcStructuralAnalysisModel(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum v6_PredefinedType, IfcAxis2Placement3D* v7_OrientationOf2DPlane, optional >> v8_LoadedBy, optional >> v9_HasResults) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,v6_PredefinedType,IfcAnalysisModelTypeEnum::ToString(v6_PredefinedType)); e->setArgument(6,(v7_OrientationOf2DPlane)); if (v8_LoadedBy) { e->setArgument(7,(*v8_LoadedBy)->generalize()); } else { e->setArgument(7); } ; if (v9_HasResults) { e->setArgument(8,(*v9_HasResults)->generalize()); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralConnection bool IfcStructuralConnection::hasAppliedCondition() { return !entity->getArgument(7)->isNull(); } IfcBoundaryCondition* IfcStructuralConnection::AppliedCondition() { return reinterpret_pointer_cast(*entity->getArgument(7)); } @@ -10588,7 +10588,7 @@ bool IfcStructuralConnection::is(Type::Enum v) const { return v == Type::IfcStru Type::Enum IfcStructuralConnection::type() const { return Type::IfcStructuralConnection; } Type::Enum IfcStructuralConnection::Class() { return Type::IfcStructuralConnection; } IfcStructuralConnection::IfcStructuralConnection(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralConnection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralConnection::IfcStructuralConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedCondition); entity = e; } +IfcStructuralConnection::IfcStructuralConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedCondition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralConnectionCondition bool IfcStructuralConnectionCondition::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcStructuralConnectionCondition::Name() { return *entity->getArgument(0); } @@ -10597,13 +10597,13 @@ bool IfcStructuralConnectionCondition::is(Type::Enum v) const { return v == Type Type::Enum IfcStructuralConnectionCondition::type() const { return Type::IfcStructuralConnectionCondition; } Type::Enum IfcStructuralConnectionCondition::Class() { return Type::IfcStructuralConnectionCondition; } IfcStructuralConnectionCondition::IfcStructuralConnectionCondition(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralConnectionCondition)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralConnectionCondition::IfcStructuralConnectionCondition(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcStructuralConnectionCondition::IfcStructuralConnectionCondition(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralCurveConnection bool IfcStructuralCurveConnection::is(Type::Enum v) const { return v == Type::IfcStructuralCurveConnection || IfcStructuralConnection::is(v); } Type::Enum IfcStructuralCurveConnection::type() const { return Type::IfcStructuralCurveConnection; } Type::Enum IfcStructuralCurveConnection::Class() { return Type::IfcStructuralCurveConnection; } IfcStructuralCurveConnection::IfcStructuralCurveConnection(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralCurveConnection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralCurveConnection::IfcStructuralCurveConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedCondition); entity = e; } +IfcStructuralCurveConnection::IfcStructuralCurveConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedCondition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralCurveMember IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum IfcStructuralCurveMember::PredefinedType() { return IfcStructuralCurveTypeEnum::FromString(*entity->getArgument(7)); } void IfcStructuralCurveMember::setPredefinedType(IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v,IfcStructuralCurveTypeEnum::ToString(v)); } @@ -10611,20 +10611,20 @@ bool IfcStructuralCurveMember::is(Type::Enum v) const { return v == Type::IfcStr Type::Enum IfcStructuralCurveMember::type() const { return Type::IfcStructuralCurveMember; } Type::Enum IfcStructuralCurveMember::Class() { return Type::IfcStructuralCurveMember; } IfcStructuralCurveMember::IfcStructuralCurveMember(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralCurveMember)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralCurveMember::IfcStructuralCurveMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_PredefinedType); entity = e; } +IfcStructuralCurveMember::IfcStructuralCurveMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,v8_PredefinedType,IfcStructuralCurveTypeEnum::ToString(v8_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralCurveMemberVarying bool IfcStructuralCurveMemberVarying::is(Type::Enum v) const { return v == Type::IfcStructuralCurveMemberVarying || IfcStructuralCurveMember::is(v); } Type::Enum IfcStructuralCurveMemberVarying::type() const { return Type::IfcStructuralCurveMemberVarying; } Type::Enum IfcStructuralCurveMemberVarying::Class() { return Type::IfcStructuralCurveMemberVarying; } IfcStructuralCurveMemberVarying::IfcStructuralCurveMemberVarying(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralCurveMemberVarying)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralCurveMemberVarying::IfcStructuralCurveMemberVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_PredefinedType); entity = e; } +IfcStructuralCurveMemberVarying::IfcStructuralCurveMemberVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,v8_PredefinedType,IfcStructuralCurveTypeEnum::ToString(v8_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralItem IfcRelConnectsStructuralActivity::list IfcStructuralItem::AssignedStructuralActivity() { RETURN_INVERSE(IfcRelConnectsStructuralActivity) } bool IfcStructuralItem::is(Type::Enum v) const { return v == Type::IfcStructuralItem || IfcProduct::is(v); } Type::Enum IfcStructuralItem::type() const { return Type::IfcStructuralItem; } Type::Enum IfcStructuralItem::Class() { return Type::IfcStructuralItem; } IfcStructuralItem::IfcStructuralItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralItem::IfcStructuralItem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); entity = e; } +IfcStructuralItem::IfcStructuralItem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLinearAction IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum IfcStructuralLinearAction::ProjectedOrTrue() { return IfcProjectedOrTrueLengthEnum::FromString(*entity->getArgument(11)); } void IfcStructuralLinearAction::setProjectedOrTrue(IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(11,v,IfcProjectedOrTrueLengthEnum::ToString(v)); } @@ -10632,7 +10632,7 @@ bool IfcStructuralLinearAction::is(Type::Enum v) const { return v == Type::IfcSt Type::Enum IfcStructuralLinearAction::type() const { return Type::IfcStructuralLinearAction; } Type::Enum IfcStructuralLinearAction::Class() { return Type::IfcStructuralLinearAction; } IfcStructuralLinearAction::IfcStructuralLinearAction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLinearAction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLinearAction::IfcStructuralLinearAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); e->setArgument(11,v12_ProjectedOrTrue); entity = e; } +IfcStructuralLinearAction::IfcStructuralLinearAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); e->setArgument(11,v12_ProjectedOrTrue,IfcProjectedOrTrueLengthEnum::ToString(v12_ProjectedOrTrue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLinearActionVarying IfcShapeAspect* IfcStructuralLinearActionVarying::VaryingAppliedLoadLocation() { return reinterpret_pointer_cast(*entity->getArgument(12)); } void IfcStructuralLinearActionVarying::setVaryingAppliedLoadLocation(IfcShapeAspect* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(12,v); } @@ -10642,7 +10642,7 @@ bool IfcStructuralLinearActionVarying::is(Type::Enum v) const { return v == Type Type::Enum IfcStructuralLinearActionVarying::type() const { return Type::IfcStructuralLinearActionVarying; } Type::Enum IfcStructuralLinearActionVarying::Class() { return Type::IfcStructuralLinearActionVarying; } IfcStructuralLinearActionVarying::IfcStructuralLinearActionVarying(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLinearActionVarying)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLinearActionVarying::IfcStructuralLinearActionVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); e->setArgument(11,v12_ProjectedOrTrue); e->setArgument(12,v13_VaryingAppliedLoadLocation); e->setArgument(13,v14_SubsequentAppliedLoads->generalize()); entity = e; } +IfcStructuralLinearActionVarying::IfcStructuralLinearActionVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); e->setArgument(11,v12_ProjectedOrTrue,IfcProjectedOrTrueLengthEnum::ToString(v12_ProjectedOrTrue)); e->setArgument(12,(v13_VaryingAppliedLoadLocation)); e->setArgument(13,(v14_SubsequentAppliedLoads)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoad bool IfcStructuralLoad::hasName() { return !entity->getArgument(0)->isNull(); } IfcLabel IfcStructuralLoad::Name() { return *entity->getArgument(0); } @@ -10651,7 +10651,7 @@ bool IfcStructuralLoad::is(Type::Enum v) const { return v == Type::IfcStructural Type::Enum IfcStructuralLoad::type() const { return Type::IfcStructuralLoad; } Type::Enum IfcStructuralLoad::Class() { return Type::IfcStructuralLoad; } IfcStructuralLoad::IfcStructuralLoad(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoad)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoad::IfcStructuralLoad(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcStructuralLoad::IfcStructuralLoad(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadGroup IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum IfcStructuralLoadGroup::PredefinedType() { return IfcLoadGroupTypeEnum::FromString(*entity->getArgument(5)); } void IfcStructuralLoadGroup::setPredefinedType(IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v,IfcLoadGroupTypeEnum::ToString(v)); } @@ -10671,7 +10671,7 @@ bool IfcStructuralLoadGroup::is(Type::Enum v) const { return v == Type::IfcStruc Type::Enum IfcStructuralLoadGroup::type() const { return Type::IfcStructuralLoadGroup; } Type::Enum IfcStructuralLoadGroup::Class() { return Type::IfcStructuralLoadGroup; } IfcStructuralLoadGroup::IfcStructuralLoadGroup(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadGroup)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadGroup::IfcStructuralLoadGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum v6_PredefinedType, IfcActionTypeEnum::IfcActionTypeEnum v7_ActionType, IfcActionSourceTypeEnum::IfcActionSourceTypeEnum v8_ActionSource, IfcRatioMeasure v9_Coefficient, IfcLabel v10_Purpose) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_PredefinedType); e->setArgument(6,v7_ActionType); e->setArgument(7,v8_ActionSource); e->setArgument(8,v9_Coefficient); e->setArgument(9,v10_Purpose); entity = e; } +IfcStructuralLoadGroup::IfcStructuralLoadGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum v6_PredefinedType, IfcActionTypeEnum::IfcActionTypeEnum v7_ActionType, IfcActionSourceTypeEnum::IfcActionSourceTypeEnum v8_ActionSource, optional v9_Coefficient, optional v10_Purpose) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,v6_PredefinedType,IfcLoadGroupTypeEnum::ToString(v6_PredefinedType)); e->setArgument(6,v7_ActionType,IfcActionTypeEnum::ToString(v7_ActionType)); e->setArgument(7,v8_ActionSource,IfcActionSourceTypeEnum::ToString(v8_ActionSource)); if (v9_Coefficient) { e->setArgument(8,(*v9_Coefficient)); } else { e->setArgument(8); } ; if (v10_Purpose) { e->setArgument(9,(*v10_Purpose)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadLinearForce bool IfcStructuralLoadLinearForce::hasLinearForceX() { return !entity->getArgument(1)->isNull(); } IfcLinearForceMeasure IfcStructuralLoadLinearForce::LinearForceX() { return *entity->getArgument(1); } @@ -10695,7 +10695,7 @@ bool IfcStructuralLoadLinearForce::is(Type::Enum v) const { return v == Type::If Type::Enum IfcStructuralLoadLinearForce::type() const { return Type::IfcStructuralLoadLinearForce; } Type::Enum IfcStructuralLoadLinearForce::Class() { return Type::IfcStructuralLoadLinearForce; } IfcStructuralLoadLinearForce::IfcStructuralLoadLinearForce(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadLinearForce)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadLinearForce::IfcStructuralLoadLinearForce(IfcLabel v1_Name, IfcLinearForceMeasure v2_LinearForceX, IfcLinearForceMeasure v3_LinearForceY, IfcLinearForceMeasure v4_LinearForceZ, IfcLinearMomentMeasure v5_LinearMomentX, IfcLinearMomentMeasure v6_LinearMomentY, IfcLinearMomentMeasure v7_LinearMomentZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_LinearForceX); e->setArgument(2,v3_LinearForceY); e->setArgument(3,v4_LinearForceZ); e->setArgument(4,v5_LinearMomentX); e->setArgument(5,v6_LinearMomentY); e->setArgument(6,v7_LinearMomentZ); entity = e; } +IfcStructuralLoadLinearForce::IfcStructuralLoadLinearForce(optional v1_Name, optional v2_LinearForceX, optional v3_LinearForceY, optional v4_LinearForceZ, optional v5_LinearMomentX, optional v6_LinearMomentY, optional v7_LinearMomentZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_LinearForceX) { e->setArgument(1,(*v2_LinearForceX)); } else { e->setArgument(1); } ; if (v3_LinearForceY) { e->setArgument(2,(*v3_LinearForceY)); } else { e->setArgument(2); } ; if (v4_LinearForceZ) { e->setArgument(3,(*v4_LinearForceZ)); } else { e->setArgument(3); } ; if (v5_LinearMomentX) { e->setArgument(4,(*v5_LinearMomentX)); } else { e->setArgument(4); } ; if (v6_LinearMomentY) { e->setArgument(5,(*v6_LinearMomentY)); } else { e->setArgument(5); } ; if (v7_LinearMomentZ) { e->setArgument(6,(*v7_LinearMomentZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadPlanarForce bool IfcStructuralLoadPlanarForce::hasPlanarForceX() { return !entity->getArgument(1)->isNull(); } IfcPlanarForceMeasure IfcStructuralLoadPlanarForce::PlanarForceX() { return *entity->getArgument(1); } @@ -10710,7 +10710,7 @@ bool IfcStructuralLoadPlanarForce::is(Type::Enum v) const { return v == Type::If Type::Enum IfcStructuralLoadPlanarForce::type() const { return Type::IfcStructuralLoadPlanarForce; } Type::Enum IfcStructuralLoadPlanarForce::Class() { return Type::IfcStructuralLoadPlanarForce; } IfcStructuralLoadPlanarForce::IfcStructuralLoadPlanarForce(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadPlanarForce)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadPlanarForce::IfcStructuralLoadPlanarForce(IfcLabel v1_Name, IfcPlanarForceMeasure v2_PlanarForceX, IfcPlanarForceMeasure v3_PlanarForceY, IfcPlanarForceMeasure v4_PlanarForceZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_PlanarForceX); e->setArgument(2,v3_PlanarForceY); e->setArgument(3,v4_PlanarForceZ); entity = e; } +IfcStructuralLoadPlanarForce::IfcStructuralLoadPlanarForce(optional v1_Name, optional v2_PlanarForceX, optional v3_PlanarForceY, optional v4_PlanarForceZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_PlanarForceX) { e->setArgument(1,(*v2_PlanarForceX)); } else { e->setArgument(1); } ; if (v3_PlanarForceY) { e->setArgument(2,(*v3_PlanarForceY)); } else { e->setArgument(2); } ; if (v4_PlanarForceZ) { e->setArgument(3,(*v4_PlanarForceZ)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadSingleDisplacement bool IfcStructuralLoadSingleDisplacement::hasDisplacementX() { return !entity->getArgument(1)->isNull(); } IfcLengthMeasure IfcStructuralLoadSingleDisplacement::DisplacementX() { return *entity->getArgument(1); } @@ -10734,7 +10734,7 @@ bool IfcStructuralLoadSingleDisplacement::is(Type::Enum v) const { return v == T Type::Enum IfcStructuralLoadSingleDisplacement::type() const { return Type::IfcStructuralLoadSingleDisplacement; } Type::Enum IfcStructuralLoadSingleDisplacement::Class() { return Type::IfcStructuralLoadSingleDisplacement; } IfcStructuralLoadSingleDisplacement::IfcStructuralLoadSingleDisplacement(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadSingleDisplacement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadSingleDisplacement::IfcStructuralLoadSingleDisplacement(IfcLabel v1_Name, IfcLengthMeasure v2_DisplacementX, IfcLengthMeasure v3_DisplacementY, IfcLengthMeasure v4_DisplacementZ, IfcPlaneAngleMeasure v5_RotationalDisplacementRX, IfcPlaneAngleMeasure v6_RotationalDisplacementRY, IfcPlaneAngleMeasure v7_RotationalDisplacementRZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_DisplacementX); e->setArgument(2,v3_DisplacementY); e->setArgument(3,v4_DisplacementZ); e->setArgument(4,v5_RotationalDisplacementRX); e->setArgument(5,v6_RotationalDisplacementRY); e->setArgument(6,v7_RotationalDisplacementRZ); entity = e; } +IfcStructuralLoadSingleDisplacement::IfcStructuralLoadSingleDisplacement(optional v1_Name, optional v2_DisplacementX, optional v3_DisplacementY, optional v4_DisplacementZ, optional v5_RotationalDisplacementRX, optional v6_RotationalDisplacementRY, optional v7_RotationalDisplacementRZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_DisplacementX) { e->setArgument(1,(*v2_DisplacementX)); } else { e->setArgument(1); } ; if (v3_DisplacementY) { e->setArgument(2,(*v3_DisplacementY)); } else { e->setArgument(2); } ; if (v4_DisplacementZ) { e->setArgument(3,(*v4_DisplacementZ)); } else { e->setArgument(3); } ; if (v5_RotationalDisplacementRX) { e->setArgument(4,(*v5_RotationalDisplacementRX)); } else { e->setArgument(4); } ; if (v6_RotationalDisplacementRY) { e->setArgument(5,(*v6_RotationalDisplacementRY)); } else { e->setArgument(5); } ; if (v7_RotationalDisplacementRZ) { e->setArgument(6,(*v7_RotationalDisplacementRZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadSingleDisplacementDistortion bool IfcStructuralLoadSingleDisplacementDistortion::hasDistortion() { return !entity->getArgument(7)->isNull(); } IfcCurvatureMeasure IfcStructuralLoadSingleDisplacementDistortion::Distortion() { return *entity->getArgument(7); } @@ -10743,7 +10743,7 @@ bool IfcStructuralLoadSingleDisplacementDistortion::is(Type::Enum v) const { ret Type::Enum IfcStructuralLoadSingleDisplacementDistortion::type() const { return Type::IfcStructuralLoadSingleDisplacementDistortion; } Type::Enum IfcStructuralLoadSingleDisplacementDistortion::Class() { return Type::IfcStructuralLoadSingleDisplacementDistortion; } IfcStructuralLoadSingleDisplacementDistortion::IfcStructuralLoadSingleDisplacementDistortion(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadSingleDisplacementDistortion)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadSingleDisplacementDistortion::IfcStructuralLoadSingleDisplacementDistortion(IfcLabel v1_Name, IfcLengthMeasure v2_DisplacementX, IfcLengthMeasure v3_DisplacementY, IfcLengthMeasure v4_DisplacementZ, IfcPlaneAngleMeasure v5_RotationalDisplacementRX, IfcPlaneAngleMeasure v6_RotationalDisplacementRY, IfcPlaneAngleMeasure v7_RotationalDisplacementRZ, IfcCurvatureMeasure v8_Distortion) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_DisplacementX); e->setArgument(2,v3_DisplacementY); e->setArgument(3,v4_DisplacementZ); e->setArgument(4,v5_RotationalDisplacementRX); e->setArgument(5,v6_RotationalDisplacementRY); e->setArgument(6,v7_RotationalDisplacementRZ); e->setArgument(7,v8_Distortion); entity = e; } +IfcStructuralLoadSingleDisplacementDistortion::IfcStructuralLoadSingleDisplacementDistortion(optional v1_Name, optional v2_DisplacementX, optional v3_DisplacementY, optional v4_DisplacementZ, optional v5_RotationalDisplacementRX, optional v6_RotationalDisplacementRY, optional v7_RotationalDisplacementRZ, optional v8_Distortion) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_DisplacementX) { e->setArgument(1,(*v2_DisplacementX)); } else { e->setArgument(1); } ; if (v3_DisplacementY) { e->setArgument(2,(*v3_DisplacementY)); } else { e->setArgument(2); } ; if (v4_DisplacementZ) { e->setArgument(3,(*v4_DisplacementZ)); } else { e->setArgument(3); } ; if (v5_RotationalDisplacementRX) { e->setArgument(4,(*v5_RotationalDisplacementRX)); } else { e->setArgument(4); } ; if (v6_RotationalDisplacementRY) { e->setArgument(5,(*v6_RotationalDisplacementRY)); } else { e->setArgument(5); } ; if (v7_RotationalDisplacementRZ) { e->setArgument(6,(*v7_RotationalDisplacementRZ)); } else { e->setArgument(6); } ; if (v8_Distortion) { e->setArgument(7,(*v8_Distortion)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadSingleForce bool IfcStructuralLoadSingleForce::hasForceX() { return !entity->getArgument(1)->isNull(); } IfcForceMeasure IfcStructuralLoadSingleForce::ForceX() { return *entity->getArgument(1); } @@ -10767,7 +10767,7 @@ bool IfcStructuralLoadSingleForce::is(Type::Enum v) const { return v == Type::If Type::Enum IfcStructuralLoadSingleForce::type() const { return Type::IfcStructuralLoadSingleForce; } Type::Enum IfcStructuralLoadSingleForce::Class() { return Type::IfcStructuralLoadSingleForce; } IfcStructuralLoadSingleForce::IfcStructuralLoadSingleForce(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadSingleForce)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadSingleForce::IfcStructuralLoadSingleForce(IfcLabel v1_Name, IfcForceMeasure v2_ForceX, IfcForceMeasure v3_ForceY, IfcForceMeasure v4_ForceZ, IfcTorqueMeasure v5_MomentX, IfcTorqueMeasure v6_MomentY, IfcTorqueMeasure v7_MomentZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_ForceX); e->setArgument(2,v3_ForceY); e->setArgument(3,v4_ForceZ); e->setArgument(4,v5_MomentX); e->setArgument(5,v6_MomentY); e->setArgument(6,v7_MomentZ); entity = e; } +IfcStructuralLoadSingleForce::IfcStructuralLoadSingleForce(optional v1_Name, optional v2_ForceX, optional v3_ForceY, optional v4_ForceZ, optional v5_MomentX, optional v6_MomentY, optional v7_MomentZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_ForceX) { e->setArgument(1,(*v2_ForceX)); } else { e->setArgument(1); } ; if (v3_ForceY) { e->setArgument(2,(*v3_ForceY)); } else { e->setArgument(2); } ; if (v4_ForceZ) { e->setArgument(3,(*v4_ForceZ)); } else { e->setArgument(3); } ; if (v5_MomentX) { e->setArgument(4,(*v5_MomentX)); } else { e->setArgument(4); } ; if (v6_MomentY) { e->setArgument(5,(*v6_MomentY)); } else { e->setArgument(5); } ; if (v7_MomentZ) { e->setArgument(6,(*v7_MomentZ)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadSingleForceWarping bool IfcStructuralLoadSingleForceWarping::hasWarpingMoment() { return !entity->getArgument(7)->isNull(); } IfcWarpingMomentMeasure IfcStructuralLoadSingleForceWarping::WarpingMoment() { return *entity->getArgument(7); } @@ -10776,13 +10776,13 @@ bool IfcStructuralLoadSingleForceWarping::is(Type::Enum v) const { return v == T Type::Enum IfcStructuralLoadSingleForceWarping::type() const { return Type::IfcStructuralLoadSingleForceWarping; } Type::Enum IfcStructuralLoadSingleForceWarping::Class() { return Type::IfcStructuralLoadSingleForceWarping; } IfcStructuralLoadSingleForceWarping::IfcStructuralLoadSingleForceWarping(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadSingleForceWarping)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadSingleForceWarping::IfcStructuralLoadSingleForceWarping(IfcLabel v1_Name, IfcForceMeasure v2_ForceX, IfcForceMeasure v3_ForceY, IfcForceMeasure v4_ForceZ, IfcTorqueMeasure v5_MomentX, IfcTorqueMeasure v6_MomentY, IfcTorqueMeasure v7_MomentZ, IfcWarpingMomentMeasure v8_WarpingMoment) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_ForceX); e->setArgument(2,v3_ForceY); e->setArgument(3,v4_ForceZ); e->setArgument(4,v5_MomentX); e->setArgument(5,v6_MomentY); e->setArgument(6,v7_MomentZ); e->setArgument(7,v8_WarpingMoment); entity = e; } +IfcStructuralLoadSingleForceWarping::IfcStructuralLoadSingleForceWarping(optional v1_Name, optional v2_ForceX, optional v3_ForceY, optional v4_ForceZ, optional v5_MomentX, optional v6_MomentY, optional v7_MomentZ, optional v8_WarpingMoment) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_ForceX) { e->setArgument(1,(*v2_ForceX)); } else { e->setArgument(1); } ; if (v3_ForceY) { e->setArgument(2,(*v3_ForceY)); } else { e->setArgument(2); } ; if (v4_ForceZ) { e->setArgument(3,(*v4_ForceZ)); } else { e->setArgument(3); } ; if (v5_MomentX) { e->setArgument(4,(*v5_MomentX)); } else { e->setArgument(4); } ; if (v6_MomentY) { e->setArgument(5,(*v6_MomentY)); } else { e->setArgument(5); } ; if (v7_MomentZ) { e->setArgument(6,(*v7_MomentZ)); } else { e->setArgument(6); } ; if (v8_WarpingMoment) { e->setArgument(7,(*v8_WarpingMoment)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadStatic bool IfcStructuralLoadStatic::is(Type::Enum v) const { return v == Type::IfcStructuralLoadStatic || IfcStructuralLoad::is(v); } Type::Enum IfcStructuralLoadStatic::type() const { return Type::IfcStructuralLoadStatic; } Type::Enum IfcStructuralLoadStatic::Class() { return Type::IfcStructuralLoadStatic; } IfcStructuralLoadStatic::IfcStructuralLoadStatic(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadStatic)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadStatic::IfcStructuralLoadStatic(IfcLabel v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); entity = e; } +IfcStructuralLoadStatic::IfcStructuralLoadStatic(optional v1_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralLoadTemperature bool IfcStructuralLoadTemperature::hasDeltaT_Constant() { return !entity->getArgument(1)->isNull(); } IfcThermodynamicTemperatureMeasure IfcStructuralLoadTemperature::DeltaT_Constant() { return *entity->getArgument(1); } @@ -10797,7 +10797,7 @@ bool IfcStructuralLoadTemperature::is(Type::Enum v) const { return v == Type::If Type::Enum IfcStructuralLoadTemperature::type() const { return Type::IfcStructuralLoadTemperature; } Type::Enum IfcStructuralLoadTemperature::Class() { return Type::IfcStructuralLoadTemperature; } IfcStructuralLoadTemperature::IfcStructuralLoadTemperature(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralLoadTemperature)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralLoadTemperature::IfcStructuralLoadTemperature(IfcLabel v1_Name, IfcThermodynamicTemperatureMeasure v2_DeltaT_Constant, IfcThermodynamicTemperatureMeasure v3_DeltaT_Y, IfcThermodynamicTemperatureMeasure v4_DeltaT_Z) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_DeltaT_Constant); e->setArgument(2,v3_DeltaT_Y); e->setArgument(3,v4_DeltaT_Z); entity = e; } +IfcStructuralLoadTemperature::IfcStructuralLoadTemperature(optional v1_Name, optional v2_DeltaT_Constant, optional v3_DeltaT_Y, optional v4_DeltaT_Z) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_DeltaT_Constant) { e->setArgument(1,(*v2_DeltaT_Constant)); } else { e->setArgument(1); } ; if (v3_DeltaT_Y) { e->setArgument(2,(*v3_DeltaT_Y)); } else { e->setArgument(2); } ; if (v4_DeltaT_Z) { e->setArgument(3,(*v4_DeltaT_Z)); } else { e->setArgument(3); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralMember IfcRelConnectsStructuralElement::list IfcStructuralMember::ReferencesElement() { RETURN_INVERSE(IfcRelConnectsStructuralElement) } IfcRelConnectsStructuralMember::list IfcStructuralMember::ConnectedBy() { RETURN_INVERSE(IfcRelConnectsStructuralMember) } @@ -10805,7 +10805,7 @@ bool IfcStructuralMember::is(Type::Enum v) const { return v == Type::IfcStructur Type::Enum IfcStructuralMember::type() const { return Type::IfcStructuralMember; } Type::Enum IfcStructuralMember::Class() { return Type::IfcStructuralMember; } IfcStructuralMember::IfcStructuralMember(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralMember)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralMember::IfcStructuralMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); entity = e; } +IfcStructuralMember::IfcStructuralMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralPlanarAction IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum IfcStructuralPlanarAction::ProjectedOrTrue() { return IfcProjectedOrTrueLengthEnum::FromString(*entity->getArgument(11)); } void IfcStructuralPlanarAction::setProjectedOrTrue(IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(11,v,IfcProjectedOrTrueLengthEnum::ToString(v)); } @@ -10813,7 +10813,7 @@ bool IfcStructuralPlanarAction::is(Type::Enum v) const { return v == Type::IfcSt Type::Enum IfcStructuralPlanarAction::type() const { return Type::IfcStructuralPlanarAction; } Type::Enum IfcStructuralPlanarAction::Class() { return Type::IfcStructuralPlanarAction; } IfcStructuralPlanarAction::IfcStructuralPlanarAction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralPlanarAction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralPlanarAction::IfcStructuralPlanarAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); e->setArgument(11,v12_ProjectedOrTrue); entity = e; } +IfcStructuralPlanarAction::IfcStructuralPlanarAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); e->setArgument(11,v12_ProjectedOrTrue,IfcProjectedOrTrueLengthEnum::ToString(v12_ProjectedOrTrue)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralPlanarActionVarying IfcShapeAspect* IfcStructuralPlanarActionVarying::VaryingAppliedLoadLocation() { return reinterpret_pointer_cast(*entity->getArgument(12)); } void IfcStructuralPlanarActionVarying::setVaryingAppliedLoadLocation(IfcShapeAspect* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(12,v); } @@ -10823,25 +10823,25 @@ bool IfcStructuralPlanarActionVarying::is(Type::Enum v) const { return v == Type Type::Enum IfcStructuralPlanarActionVarying::type() const { return Type::IfcStructuralPlanarActionVarying; } Type::Enum IfcStructuralPlanarActionVarying::Class() { return Type::IfcStructuralPlanarActionVarying; } IfcStructuralPlanarActionVarying::IfcStructuralPlanarActionVarying(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralPlanarActionVarying)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralPlanarActionVarying::IfcStructuralPlanarActionVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); e->setArgument(11,v12_ProjectedOrTrue); e->setArgument(12,v13_VaryingAppliedLoadLocation); e->setArgument(13,v14_SubsequentAppliedLoads->generalize()); entity = e; } +IfcStructuralPlanarActionVarying::IfcStructuralPlanarActionVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); e->setArgument(11,v12_ProjectedOrTrue,IfcProjectedOrTrueLengthEnum::ToString(v12_ProjectedOrTrue)); e->setArgument(12,(v13_VaryingAppliedLoadLocation)); e->setArgument(13,(v14_SubsequentAppliedLoads)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralPointAction bool IfcStructuralPointAction::is(Type::Enum v) const { return v == Type::IfcStructuralPointAction || IfcStructuralAction::is(v); } Type::Enum IfcStructuralPointAction::type() const { return Type::IfcStructuralPointAction; } Type::Enum IfcStructuralPointAction::Class() { return Type::IfcStructuralPointAction; } IfcStructuralPointAction::IfcStructuralPointAction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralPointAction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralPointAction::IfcStructuralPointAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); e->setArgument(9,v10_DestabilizingLoad); e->setArgument(10,v11_CausedBy); entity = e; } +IfcStructuralPointAction::IfcStructuralPointAction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); e->setArgument(9,(v10_DestabilizingLoad)); e->setArgument(10,(v11_CausedBy)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralPointConnection bool IfcStructuralPointConnection::is(Type::Enum v) const { return v == Type::IfcStructuralPointConnection || IfcStructuralConnection::is(v); } Type::Enum IfcStructuralPointConnection::type() const { return Type::IfcStructuralPointConnection; } Type::Enum IfcStructuralPointConnection::Class() { return Type::IfcStructuralPointConnection; } IfcStructuralPointConnection::IfcStructuralPointConnection(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralPointConnection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralPointConnection::IfcStructuralPointConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedCondition); entity = e; } +IfcStructuralPointConnection::IfcStructuralPointConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedCondition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralPointReaction bool IfcStructuralPointReaction::is(Type::Enum v) const { return v == Type::IfcStructuralPointReaction || IfcStructuralReaction::is(v); } Type::Enum IfcStructuralPointReaction::type() const { return Type::IfcStructuralPointReaction; } Type::Enum IfcStructuralPointReaction::Class() { return Type::IfcStructuralPointReaction; } IfcStructuralPointReaction::IfcStructuralPointReaction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralPointReaction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralPointReaction::IfcStructuralPointReaction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); entity = e; } +IfcStructuralPointReaction::IfcStructuralPointReaction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralProfileProperties bool IfcStructuralProfileProperties::hasTorsionalConstantX() { return !entity->getArgument(7)->isNull(); } IfcMomentOfInertiaMeasure IfcStructuralProfileProperties::TorsionalConstantX() { return *entity->getArgument(7); } @@ -10895,14 +10895,14 @@ bool IfcStructuralProfileProperties::is(Type::Enum v) const { return v == Type:: Type::Enum IfcStructuralProfileProperties::type() const { return Type::IfcStructuralProfileProperties; } Type::Enum IfcStructuralProfileProperties::Class() { return Type::IfcStructuralProfileProperties; } IfcStructuralProfileProperties::IfcStructuralProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralProfileProperties::IfcStructuralProfileProperties(IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea, IfcMomentOfInertiaMeasure v8_TorsionalConstantX, IfcMomentOfInertiaMeasure v9_MomentOfInertiaYZ, IfcMomentOfInertiaMeasure v10_MomentOfInertiaY, IfcMomentOfInertiaMeasure v11_MomentOfInertiaZ, IfcWarpingConstantMeasure v12_WarpingConstant, IfcLengthMeasure v13_ShearCentreZ, IfcLengthMeasure v14_ShearCentreY, IfcAreaMeasure v15_ShearDeformationAreaZ, IfcAreaMeasure v16_ShearDeformationAreaY, IfcSectionModulusMeasure v17_MaximumSectionModulusY, IfcSectionModulusMeasure v18_MinimumSectionModulusY, IfcSectionModulusMeasure v19_MaximumSectionModulusZ, IfcSectionModulusMeasure v20_MinimumSectionModulusZ, IfcSectionModulusMeasure v21_TorsionalSectionModulus, IfcLengthMeasure v22_CentreOfGravityInX, IfcLengthMeasure v23_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileName); e->setArgument(1,v2_ProfileDefinition); e->setArgument(2,v3_PhysicalWeight); e->setArgument(3,v4_Perimeter); e->setArgument(4,v5_MinimumPlateThickness); e->setArgument(5,v6_MaximumPlateThickness); e->setArgument(6,v7_CrossSectionArea); e->setArgument(7,v8_TorsionalConstantX); e->setArgument(8,v9_MomentOfInertiaYZ); e->setArgument(9,v10_MomentOfInertiaY); e->setArgument(10,v11_MomentOfInertiaZ); e->setArgument(11,v12_WarpingConstant); e->setArgument(12,v13_ShearCentreZ); e->setArgument(13,v14_ShearCentreY); e->setArgument(14,v15_ShearDeformationAreaZ); e->setArgument(15,v16_ShearDeformationAreaY); e->setArgument(16,v17_MaximumSectionModulusY); e->setArgument(17,v18_MinimumSectionModulusY); e->setArgument(18,v19_MaximumSectionModulusZ); e->setArgument(19,v20_MinimumSectionModulusZ); e->setArgument(20,v21_TorsionalSectionModulus); e->setArgument(21,v22_CentreOfGravityInX); e->setArgument(22,v23_CentreOfGravityInY); entity = e; } +IfcStructuralProfileProperties::IfcStructuralProfileProperties(optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea, optional v8_TorsionalConstantX, optional v9_MomentOfInertiaYZ, optional v10_MomentOfInertiaY, optional v11_MomentOfInertiaZ, optional v12_WarpingConstant, optional v13_ShearCentreZ, optional v14_ShearCentreY, optional v15_ShearDeformationAreaZ, optional v16_ShearDeformationAreaY, optional v17_MaximumSectionModulusY, optional v18_MinimumSectionModulusY, optional v19_MaximumSectionModulusZ, optional v20_MinimumSectionModulusZ, optional v21_TorsionalSectionModulus, optional v22_CentreOfGravityInX, optional v23_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ProfileName) { e->setArgument(0,(*v1_ProfileName)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ProfileDefinition)); if (v3_PhysicalWeight) { e->setArgument(2,(*v3_PhysicalWeight)); } else { e->setArgument(2); } ; if (v4_Perimeter) { e->setArgument(3,(*v4_Perimeter)); } else { e->setArgument(3); } ; if (v5_MinimumPlateThickness) { e->setArgument(4,(*v5_MinimumPlateThickness)); } else { e->setArgument(4); } ; if (v6_MaximumPlateThickness) { e->setArgument(5,(*v6_MaximumPlateThickness)); } else { e->setArgument(5); } ; if (v7_CrossSectionArea) { e->setArgument(6,(*v7_CrossSectionArea)); } else { e->setArgument(6); } ; if (v8_TorsionalConstantX) { e->setArgument(7,(*v8_TorsionalConstantX)); } else { e->setArgument(7); } ; if (v9_MomentOfInertiaYZ) { e->setArgument(8,(*v9_MomentOfInertiaYZ)); } else { e->setArgument(8); } ; if (v10_MomentOfInertiaY) { e->setArgument(9,(*v10_MomentOfInertiaY)); } else { e->setArgument(9); } ; if (v11_MomentOfInertiaZ) { e->setArgument(10,(*v11_MomentOfInertiaZ)); } else { e->setArgument(10); } ; if (v12_WarpingConstant) { e->setArgument(11,(*v12_WarpingConstant)); } else { e->setArgument(11); } ; if (v13_ShearCentreZ) { e->setArgument(12,(*v13_ShearCentreZ)); } else { e->setArgument(12); } ; if (v14_ShearCentreY) { e->setArgument(13,(*v14_ShearCentreY)); } else { e->setArgument(13); } ; if (v15_ShearDeformationAreaZ) { e->setArgument(14,(*v15_ShearDeformationAreaZ)); } else { e->setArgument(14); } ; if (v16_ShearDeformationAreaY) { e->setArgument(15,(*v16_ShearDeformationAreaY)); } else { e->setArgument(15); } ; if (v17_MaximumSectionModulusY) { e->setArgument(16,(*v17_MaximumSectionModulusY)); } else { e->setArgument(16); } ; if (v18_MinimumSectionModulusY) { e->setArgument(17,(*v18_MinimumSectionModulusY)); } else { e->setArgument(17); } ; if (v19_MaximumSectionModulusZ) { e->setArgument(18,(*v19_MaximumSectionModulusZ)); } else { e->setArgument(18); } ; if (v20_MinimumSectionModulusZ) { e->setArgument(19,(*v20_MinimumSectionModulusZ)); } else { e->setArgument(19); } ; if (v21_TorsionalSectionModulus) { e->setArgument(20,(*v21_TorsionalSectionModulus)); } else { e->setArgument(20); } ; if (v22_CentreOfGravityInX) { e->setArgument(21,(*v22_CentreOfGravityInX)); } else { e->setArgument(21); } ; if (v23_CentreOfGravityInY) { e->setArgument(22,(*v23_CentreOfGravityInY)); } else { e->setArgument(22); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralReaction IfcStructuralAction::list IfcStructuralReaction::Causes() { RETURN_INVERSE(IfcStructuralAction) } bool IfcStructuralReaction::is(Type::Enum v) const { return v == Type::IfcStructuralReaction || IfcStructuralActivity::is(v); } Type::Enum IfcStructuralReaction::type() const { return Type::IfcStructuralReaction; } Type::Enum IfcStructuralReaction::Class() { return Type::IfcStructuralReaction; } IfcStructuralReaction::IfcStructuralReaction(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralReaction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralReaction::IfcStructuralReaction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedLoad); e->setArgument(8,v9_GlobalOrLocal); entity = e; } +IfcStructuralReaction::IfcStructuralReaction(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedLoad)); e->setArgument(8,v9_GlobalOrLocal,IfcGlobalOrLocalEnum::ToString(v9_GlobalOrLocal)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralResultGroup IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum IfcStructuralResultGroup::TheoryType() { return IfcAnalysisTheoryTypeEnum::FromString(*entity->getArgument(5)); } void IfcStructuralResultGroup::setTheoryType(IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v,IfcAnalysisTheoryTypeEnum::ToString(v)); } @@ -10916,7 +10916,7 @@ bool IfcStructuralResultGroup::is(Type::Enum v) const { return v == Type::IfcStr Type::Enum IfcStructuralResultGroup::type() const { return Type::IfcStructuralResultGroup; } Type::Enum IfcStructuralResultGroup::Class() { return Type::IfcStructuralResultGroup; } IfcStructuralResultGroup::IfcStructuralResultGroup(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralResultGroup)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralResultGroup::IfcStructuralResultGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum v6_TheoryType, IfcStructuralLoadGroup* v7_ResultForLoadGroup, bool v8_IsLinear) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TheoryType); e->setArgument(6,v7_ResultForLoadGroup); e->setArgument(7,v8_IsLinear); entity = e; } +IfcStructuralResultGroup::IfcStructuralResultGroup(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum v6_TheoryType, IfcStructuralLoadGroup* v7_ResultForLoadGroup, bool v8_IsLinear) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,v6_TheoryType,IfcAnalysisTheoryTypeEnum::ToString(v6_TheoryType)); e->setArgument(6,(v7_ResultForLoadGroup)); e->setArgument(7,(v8_IsLinear)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralSteelProfileProperties bool IfcStructuralSteelProfileProperties::hasShearAreaZ() { return !entity->getArgument(23)->isNull(); } IfcAreaMeasure IfcStructuralSteelProfileProperties::ShearAreaZ() { return *entity->getArgument(23); } @@ -10934,13 +10934,13 @@ bool IfcStructuralSteelProfileProperties::is(Type::Enum v) const { return v == T Type::Enum IfcStructuralSteelProfileProperties::type() const { return Type::IfcStructuralSteelProfileProperties; } Type::Enum IfcStructuralSteelProfileProperties::Class() { return Type::IfcStructuralSteelProfileProperties; } IfcStructuralSteelProfileProperties::IfcStructuralSteelProfileProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralSteelProfileProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralSteelProfileProperties::IfcStructuralSteelProfileProperties(IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea, IfcMomentOfInertiaMeasure v8_TorsionalConstantX, IfcMomentOfInertiaMeasure v9_MomentOfInertiaYZ, IfcMomentOfInertiaMeasure v10_MomentOfInertiaY, IfcMomentOfInertiaMeasure v11_MomentOfInertiaZ, IfcWarpingConstantMeasure v12_WarpingConstant, IfcLengthMeasure v13_ShearCentreZ, IfcLengthMeasure v14_ShearCentreY, IfcAreaMeasure v15_ShearDeformationAreaZ, IfcAreaMeasure v16_ShearDeformationAreaY, IfcSectionModulusMeasure v17_MaximumSectionModulusY, IfcSectionModulusMeasure v18_MinimumSectionModulusY, IfcSectionModulusMeasure v19_MaximumSectionModulusZ, IfcSectionModulusMeasure v20_MinimumSectionModulusZ, IfcSectionModulusMeasure v21_TorsionalSectionModulus, IfcLengthMeasure v22_CentreOfGravityInX, IfcLengthMeasure v23_CentreOfGravityInY, IfcAreaMeasure v24_ShearAreaZ, IfcAreaMeasure v25_ShearAreaY, IfcPositiveRatioMeasure v26_PlasticShapeFactorY, IfcPositiveRatioMeasure v27_PlasticShapeFactorZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileName); e->setArgument(1,v2_ProfileDefinition); e->setArgument(2,v3_PhysicalWeight); e->setArgument(3,v4_Perimeter); e->setArgument(4,v5_MinimumPlateThickness); e->setArgument(5,v6_MaximumPlateThickness); e->setArgument(6,v7_CrossSectionArea); e->setArgument(7,v8_TorsionalConstantX); e->setArgument(8,v9_MomentOfInertiaYZ); e->setArgument(9,v10_MomentOfInertiaY); e->setArgument(10,v11_MomentOfInertiaZ); e->setArgument(11,v12_WarpingConstant); e->setArgument(12,v13_ShearCentreZ); e->setArgument(13,v14_ShearCentreY); e->setArgument(14,v15_ShearDeformationAreaZ); e->setArgument(15,v16_ShearDeformationAreaY); e->setArgument(16,v17_MaximumSectionModulusY); e->setArgument(17,v18_MinimumSectionModulusY); e->setArgument(18,v19_MaximumSectionModulusZ); e->setArgument(19,v20_MinimumSectionModulusZ); e->setArgument(20,v21_TorsionalSectionModulus); e->setArgument(21,v22_CentreOfGravityInX); e->setArgument(22,v23_CentreOfGravityInY); e->setArgument(23,v24_ShearAreaZ); e->setArgument(24,v25_ShearAreaY); e->setArgument(25,v26_PlasticShapeFactorY); e->setArgument(26,v27_PlasticShapeFactorZ); entity = e; } +IfcStructuralSteelProfileProperties::IfcStructuralSteelProfileProperties(optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea, optional v8_TorsionalConstantX, optional v9_MomentOfInertiaYZ, optional v10_MomentOfInertiaY, optional v11_MomentOfInertiaZ, optional v12_WarpingConstant, optional v13_ShearCentreZ, optional v14_ShearCentreY, optional v15_ShearDeformationAreaZ, optional v16_ShearDeformationAreaY, optional v17_MaximumSectionModulusY, optional v18_MinimumSectionModulusY, optional v19_MaximumSectionModulusZ, optional v20_MinimumSectionModulusZ, optional v21_TorsionalSectionModulus, optional v22_CentreOfGravityInX, optional v23_CentreOfGravityInY, optional v24_ShearAreaZ, optional v25_ShearAreaY, optional v26_PlasticShapeFactorY, optional v27_PlasticShapeFactorZ) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_ProfileName) { e->setArgument(0,(*v1_ProfileName)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_ProfileDefinition)); if (v3_PhysicalWeight) { e->setArgument(2,(*v3_PhysicalWeight)); } else { e->setArgument(2); } ; if (v4_Perimeter) { e->setArgument(3,(*v4_Perimeter)); } else { e->setArgument(3); } ; if (v5_MinimumPlateThickness) { e->setArgument(4,(*v5_MinimumPlateThickness)); } else { e->setArgument(4); } ; if (v6_MaximumPlateThickness) { e->setArgument(5,(*v6_MaximumPlateThickness)); } else { e->setArgument(5); } ; if (v7_CrossSectionArea) { e->setArgument(6,(*v7_CrossSectionArea)); } else { e->setArgument(6); } ; if (v8_TorsionalConstantX) { e->setArgument(7,(*v8_TorsionalConstantX)); } else { e->setArgument(7); } ; if (v9_MomentOfInertiaYZ) { e->setArgument(8,(*v9_MomentOfInertiaYZ)); } else { e->setArgument(8); } ; if (v10_MomentOfInertiaY) { e->setArgument(9,(*v10_MomentOfInertiaY)); } else { e->setArgument(9); } ; if (v11_MomentOfInertiaZ) { e->setArgument(10,(*v11_MomentOfInertiaZ)); } else { e->setArgument(10); } ; if (v12_WarpingConstant) { e->setArgument(11,(*v12_WarpingConstant)); } else { e->setArgument(11); } ; if (v13_ShearCentreZ) { e->setArgument(12,(*v13_ShearCentreZ)); } else { e->setArgument(12); } ; if (v14_ShearCentreY) { e->setArgument(13,(*v14_ShearCentreY)); } else { e->setArgument(13); } ; if (v15_ShearDeformationAreaZ) { e->setArgument(14,(*v15_ShearDeformationAreaZ)); } else { e->setArgument(14); } ; if (v16_ShearDeformationAreaY) { e->setArgument(15,(*v16_ShearDeformationAreaY)); } else { e->setArgument(15); } ; if (v17_MaximumSectionModulusY) { e->setArgument(16,(*v17_MaximumSectionModulusY)); } else { e->setArgument(16); } ; if (v18_MinimumSectionModulusY) { e->setArgument(17,(*v18_MinimumSectionModulusY)); } else { e->setArgument(17); } ; if (v19_MaximumSectionModulusZ) { e->setArgument(18,(*v19_MaximumSectionModulusZ)); } else { e->setArgument(18); } ; if (v20_MinimumSectionModulusZ) { e->setArgument(19,(*v20_MinimumSectionModulusZ)); } else { e->setArgument(19); } ; if (v21_TorsionalSectionModulus) { e->setArgument(20,(*v21_TorsionalSectionModulus)); } else { e->setArgument(20); } ; if (v22_CentreOfGravityInX) { e->setArgument(21,(*v22_CentreOfGravityInX)); } else { e->setArgument(21); } ; if (v23_CentreOfGravityInY) { e->setArgument(22,(*v23_CentreOfGravityInY)); } else { e->setArgument(22); } ; if (v24_ShearAreaZ) { e->setArgument(23,(*v24_ShearAreaZ)); } else { e->setArgument(23); } ; if (v25_ShearAreaY) { e->setArgument(24,(*v25_ShearAreaY)); } else { e->setArgument(24); } ; if (v26_PlasticShapeFactorY) { e->setArgument(25,(*v26_PlasticShapeFactorY)); } else { e->setArgument(25); } ; if (v27_PlasticShapeFactorZ) { e->setArgument(26,(*v27_PlasticShapeFactorZ)); } else { e->setArgument(26); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralSurfaceConnection bool IfcStructuralSurfaceConnection::is(Type::Enum v) const { return v == Type::IfcStructuralSurfaceConnection || IfcStructuralConnection::is(v); } Type::Enum IfcStructuralSurfaceConnection::type() const { return Type::IfcStructuralSurfaceConnection; } Type::Enum IfcStructuralSurfaceConnection::Class() { return Type::IfcStructuralSurfaceConnection; } IfcStructuralSurfaceConnection::IfcStructuralSurfaceConnection(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralSurfaceConnection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralSurfaceConnection::IfcStructuralSurfaceConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_AppliedCondition); entity = e; } +IfcStructuralSurfaceConnection::IfcStructuralSurfaceConnection(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,(v8_AppliedCondition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralSurfaceMember IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum IfcStructuralSurfaceMember::PredefinedType() { return IfcStructuralSurfaceTypeEnum::FromString(*entity->getArgument(7)); } void IfcStructuralSurfaceMember::setPredefinedType(IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(7,v,IfcStructuralSurfaceTypeEnum::ToString(v)); } @@ -10951,7 +10951,7 @@ bool IfcStructuralSurfaceMember::is(Type::Enum v) const { return v == Type::IfcS Type::Enum IfcStructuralSurfaceMember::type() const { return Type::IfcStructuralSurfaceMember; } Type::Enum IfcStructuralSurfaceMember::Class() { return Type::IfcStructuralSurfaceMember; } IfcStructuralSurfaceMember::IfcStructuralSurfaceMember(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralSurfaceMember)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralSurfaceMember::IfcStructuralSurfaceMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, IfcPositiveLengthMeasure v9_Thickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_PredefinedType); e->setArgument(8,v9_Thickness); entity = e; } +IfcStructuralSurfaceMember::IfcStructuralSurfaceMember(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, optional v9_Thickness) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,v8_PredefinedType,IfcStructuralSurfaceTypeEnum::ToString(v8_PredefinedType)); if (v9_Thickness) { e->setArgument(8,(*v9_Thickness)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuralSurfaceMemberVarying std::vector /*[2:?]*/ IfcStructuralSurfaceMemberVarying::SubsequentThickness() { return *entity->getArgument(9); } void IfcStructuralSurfaceMemberVarying::setSubsequentThickness(std::vector /*[2:?]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v); } @@ -10961,19 +10961,19 @@ bool IfcStructuralSurfaceMemberVarying::is(Type::Enum v) const { return v == Typ Type::Enum IfcStructuralSurfaceMemberVarying::type() const { return Type::IfcStructuralSurfaceMemberVarying; } Type::Enum IfcStructuralSurfaceMemberVarying::Class() { return Type::IfcStructuralSurfaceMemberVarying; } IfcStructuralSurfaceMemberVarying::IfcStructuralSurfaceMemberVarying(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuralSurfaceMemberVarying)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuralSurfaceMemberVarying::IfcStructuralSurfaceMemberVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, IfcPositiveLengthMeasure v9_Thickness, std::vector /*[2:?]*/ v10_SubsequentThickness, IfcShapeAspect* v11_VaryingThicknessLocation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_PredefinedType); e->setArgument(8,v9_Thickness); e->setArgument(9,v10_SubsequentThickness); e->setArgument(10,v11_VaryingThicknessLocation); entity = e; } +IfcStructuralSurfaceMemberVarying::IfcStructuralSurfaceMemberVarying(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, optional v9_Thickness, std::vector /*[2:?]*/ v10_SubsequentThickness, IfcShapeAspect* v11_VaryingThicknessLocation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); e->setArgument(7,v8_PredefinedType,IfcStructuralSurfaceTypeEnum::ToString(v8_PredefinedType)); if (v9_Thickness) { e->setArgument(8,(*v9_Thickness)); } else { e->setArgument(8); } ; e->setArgument(9,(v10_SubsequentThickness)); e->setArgument(10,(v11_VaryingThicknessLocation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStructuredDimensionCallout bool IfcStructuredDimensionCallout::is(Type::Enum v) const { return v == Type::IfcStructuredDimensionCallout || IfcDraughtingCallout::is(v); } Type::Enum IfcStructuredDimensionCallout::type() const { return Type::IfcStructuredDimensionCallout; } Type::Enum IfcStructuredDimensionCallout::Class() { return Type::IfcStructuredDimensionCallout; } IfcStructuredDimensionCallout::IfcStructuredDimensionCallout(IfcAbstractEntityPtr e) { if (!is(Type::IfcStructuredDimensionCallout)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStructuredDimensionCallout::IfcStructuredDimensionCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Contents); entity = e; } +IfcStructuredDimensionCallout::IfcStructuredDimensionCallout(IfcEntities v1_Contents) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Contents)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStyleModel bool IfcStyleModel::is(Type::Enum v) const { return v == Type::IfcStyleModel || IfcRepresentation::is(v); } Type::Enum IfcStyleModel::type() const { return Type::IfcStyleModel; } Type::Enum IfcStyleModel::Class() { return Type::IfcStyleModel; } IfcStyleModel::IfcStyleModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcStyleModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStyleModel::IfcStyleModel(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcStyleModel::IfcStyleModel(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStyledItem bool IfcStyledItem::hasItem() { return !entity->getArgument(0)->isNull(); } IfcRepresentationItem* IfcStyledItem::Item() { return reinterpret_pointer_cast(*entity->getArgument(0)); } @@ -10987,13 +10987,13 @@ bool IfcStyledItem::is(Type::Enum v) const { return v == Type::IfcStyledItem || Type::Enum IfcStyledItem::type() const { return Type::IfcStyledItem; } Type::Enum IfcStyledItem::Class() { return Type::IfcStyledItem; } IfcStyledItem::IfcStyledItem(IfcAbstractEntityPtr e) { if (!is(Type::IfcStyledItem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStyledItem::IfcStyledItem(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); entity = e; } +IfcStyledItem::IfcStyledItem(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcStyledRepresentation bool IfcStyledRepresentation::is(Type::Enum v) const { return v == Type::IfcStyledRepresentation || IfcStyleModel::is(v); } Type::Enum IfcStyledRepresentation::type() const { return Type::IfcStyledRepresentation; } Type::Enum IfcStyledRepresentation::Class() { return Type::IfcStyledRepresentation; } IfcStyledRepresentation::IfcStyledRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcStyledRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcStyledRepresentation::IfcStyledRepresentation(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcStyledRepresentation::IfcStyledRepresentation(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSubContractResource bool IfcSubContractResource::hasSubContractor() { return !entity->getArgument(9)->isNull(); } IfcActorSelect IfcSubContractResource::SubContractor() { return *entity->getArgument(9); } @@ -11005,7 +11005,7 @@ bool IfcSubContractResource::is(Type::Enum v) const { return v == Type::IfcSubCo Type::Enum IfcSubContractResource::type() const { return Type::IfcSubContractResource; } Type::Enum IfcSubContractResource::Class() { return Type::IfcSubContractResource; } IfcSubContractResource::IfcSubContractResource(IfcAbstractEntityPtr e) { if (!is(Type::IfcSubContractResource)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSubContractResource::IfcSubContractResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcActorSelect v10_SubContractor, IfcText v11_JobDescription) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ResourceIdentifier); e->setArgument(6,v7_ResourceGroup); e->setArgument(7,v8_ResourceConsumption); e->setArgument(8,v9_BaseQuantity); e->setArgument(9,v10_SubContractor); e->setArgument(10,v11_JobDescription); entity = e; } +IfcSubContractResource::IfcSubContractResource(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_SubContractor, optional v11_JobDescription) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ResourceIdentifier) { e->setArgument(5,(*v6_ResourceIdentifier)); } else { e->setArgument(5); } ; if (v7_ResourceGroup) { e->setArgument(6,(*v7_ResourceGroup)); } else { e->setArgument(6); } ; if (v8_ResourceConsumption) { e->setArgument(7,*v8_ResourceConsumption,IfcResourceConsumptionEnum::ToString(*v8_ResourceConsumption)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_BaseQuantity)); if (v10_SubContractor) { e->setArgument(9,(*v10_SubContractor)); } else { e->setArgument(9); } ; if (v11_JobDescription) { e->setArgument(10,(*v11_JobDescription)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSubedge IfcEdge* IfcSubedge::ParentEdge() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcSubedge::setParentEdge(IfcEdge* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -11013,7 +11013,7 @@ bool IfcSubedge::is(Type::Enum v) const { return v == Type::IfcSubedge || IfcEdg Type::Enum IfcSubedge::type() const { return Type::IfcSubedge; } Type::Enum IfcSubedge::Class() { return Type::IfcSubedge; } IfcSubedge::IfcSubedge(IfcAbstractEntityPtr e) { if (!is(Type::IfcSubedge)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSubedge::IfcSubedge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcEdge* v3_ParentEdge) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_EdgeStart); e->setArgument(1,v2_EdgeEnd); e->setArgument(2,v3_ParentEdge); entity = e; } +IfcSubedge::IfcSubedge(IfcVertex* v1_EdgeStart, IfcVertex* v2_EdgeEnd, IfcEdge* v3_ParentEdge) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_EdgeStart)); e->setArgument(1,(v2_EdgeEnd)); e->setArgument(2,(v3_ParentEdge)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurface bool IfcSurface::is(Type::Enum v) const { return v == Type::IfcSurface || IfcGeometricRepresentationItem::is(v); } Type::Enum IfcSurface::type() const { return Type::IfcSurface; } @@ -11032,7 +11032,7 @@ bool IfcSurfaceCurveSweptAreaSolid::is(Type::Enum v) const { return v == Type::I Type::Enum IfcSurfaceCurveSweptAreaSolid::type() const { return Type::IfcSurfaceCurveSweptAreaSolid; } Type::Enum IfcSurfaceCurveSweptAreaSolid::Class() { return Type::IfcSurfaceCurveSweptAreaSolid; } IfcSurfaceCurveSweptAreaSolid::IfcSurfaceCurveSweptAreaSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceCurveSweptAreaSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceCurveSweptAreaSolid::IfcSurfaceCurveSweptAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcCurve* v3_Directrix, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam, IfcSurface* v6_ReferenceSurface) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptArea); e->setArgument(1,v2_Position); e->setArgument(2,v3_Directrix); e->setArgument(3,v4_StartParam); e->setArgument(4,v5_EndParam); e->setArgument(5,v6_ReferenceSurface); entity = e; } +IfcSurfaceCurveSweptAreaSolid::IfcSurfaceCurveSweptAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position, IfcCurve* v3_Directrix, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam, IfcSurface* v6_ReferenceSurface) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptArea)); e->setArgument(1,(v2_Position)); e->setArgument(2,(v3_Directrix)); e->setArgument(3,(v4_StartParam)); e->setArgument(4,(v5_EndParam)); e->setArgument(5,(v6_ReferenceSurface)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceOfLinearExtrusion IfcDirection* IfcSurfaceOfLinearExtrusion::ExtrudedDirection() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcSurfaceOfLinearExtrusion::setExtrudedDirection(IfcDirection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -11042,7 +11042,7 @@ bool IfcSurfaceOfLinearExtrusion::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcSurfaceOfLinearExtrusion::type() const { return Type::IfcSurfaceOfLinearExtrusion; } Type::Enum IfcSurfaceOfLinearExtrusion::Class() { return Type::IfcSurfaceOfLinearExtrusion; } IfcSurfaceOfLinearExtrusion::IfcSurfaceOfLinearExtrusion(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceOfLinearExtrusion)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceOfLinearExtrusion::IfcSurfaceOfLinearExtrusion(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position, IfcDirection* v3_ExtrudedDirection, IfcLengthMeasure v4_Depth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptCurve); e->setArgument(1,v2_Position); e->setArgument(2,v3_ExtrudedDirection); e->setArgument(3,v4_Depth); entity = e; } +IfcSurfaceOfLinearExtrusion::IfcSurfaceOfLinearExtrusion(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position, IfcDirection* v3_ExtrudedDirection, IfcLengthMeasure v4_Depth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptCurve)); e->setArgument(1,(v2_Position)); e->setArgument(2,(v3_ExtrudedDirection)); e->setArgument(3,(v4_Depth)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceOfRevolution IfcAxis1Placement* IfcSurfaceOfRevolution::AxisPosition() { return reinterpret_pointer_cast(*entity->getArgument(2)); } void IfcSurfaceOfRevolution::setAxisPosition(IfcAxis1Placement* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(2,v); } @@ -11050,7 +11050,7 @@ bool IfcSurfaceOfRevolution::is(Type::Enum v) const { return v == Type::IfcSurfa Type::Enum IfcSurfaceOfRevolution::type() const { return Type::IfcSurfaceOfRevolution; } Type::Enum IfcSurfaceOfRevolution::Class() { return Type::IfcSurfaceOfRevolution; } IfcSurfaceOfRevolution::IfcSurfaceOfRevolution(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceOfRevolution)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceOfRevolution::IfcSurfaceOfRevolution(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position, IfcAxis1Placement* v3_AxisPosition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptCurve); e->setArgument(1,v2_Position); e->setArgument(2,v3_AxisPosition); entity = e; } +IfcSurfaceOfRevolution::IfcSurfaceOfRevolution(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position, IfcAxis1Placement* v3_AxisPosition) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptCurve)); e->setArgument(1,(v2_Position)); e->setArgument(2,(v3_AxisPosition)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyle IfcSurfaceSide::IfcSurfaceSide IfcSurfaceStyle::Side() { return IfcSurfaceSide::FromString(*entity->getArgument(1)); } void IfcSurfaceStyle::setSide(IfcSurfaceSide::IfcSurfaceSide v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v,IfcSurfaceSide::ToString(v)); } @@ -11060,7 +11060,7 @@ bool IfcSurfaceStyle::is(Type::Enum v) const { return v == Type::IfcSurfaceStyle Type::Enum IfcSurfaceStyle::type() const { return Type::IfcSurfaceStyle; } Type::Enum IfcSurfaceStyle::Class() { return Type::IfcSurfaceStyle; } IfcSurfaceStyle::IfcSurfaceStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyle::IfcSurfaceStyle(IfcLabel v1_Name, IfcSurfaceSide::IfcSurfaceSide v2_Side, IfcEntities v3_Styles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Side); e->setArgument(2,v3_Styles); entity = e; } +IfcSurfaceStyle::IfcSurfaceStyle(optional v1_Name, IfcSurfaceSide::IfcSurfaceSide v2_Side, IfcEntities v3_Styles) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,v2_Side,IfcSurfaceSide::ToString(v2_Side)); e->setArgument(2,(v3_Styles)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyleLighting IfcColourRgb* IfcSurfaceStyleLighting::DiffuseTransmissionColour() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSurfaceStyleLighting::setDiffuseTransmissionColour(IfcColourRgb* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11074,7 +11074,7 @@ bool IfcSurfaceStyleLighting::is(Type::Enum v) const { return v == Type::IfcSurf Type::Enum IfcSurfaceStyleLighting::type() const { return Type::IfcSurfaceStyleLighting; } Type::Enum IfcSurfaceStyleLighting::Class() { return Type::IfcSurfaceStyleLighting; } IfcSurfaceStyleLighting::IfcSurfaceStyleLighting(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyleLighting)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyleLighting::IfcSurfaceStyleLighting(IfcColourRgb* v1_DiffuseTransmissionColour, IfcColourRgb* v2_DiffuseReflectionColour, IfcColourRgb* v3_TransmissionColour, IfcColourRgb* v4_ReflectanceColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_DiffuseTransmissionColour); e->setArgument(1,v2_DiffuseReflectionColour); e->setArgument(2,v3_TransmissionColour); e->setArgument(3,v4_ReflectanceColour); entity = e; } +IfcSurfaceStyleLighting::IfcSurfaceStyleLighting(IfcColourRgb* v1_DiffuseTransmissionColour, IfcColourRgb* v2_DiffuseReflectionColour, IfcColourRgb* v3_TransmissionColour, IfcColourRgb* v4_ReflectanceColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_DiffuseTransmissionColour)); e->setArgument(1,(v2_DiffuseReflectionColour)); e->setArgument(2,(v3_TransmissionColour)); e->setArgument(3,(v4_ReflectanceColour)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyleRefraction bool IfcSurfaceStyleRefraction::hasRefractionIndex() { return !entity->getArgument(0)->isNull(); } IfcReal IfcSurfaceStyleRefraction::RefractionIndex() { return *entity->getArgument(0); } @@ -11086,7 +11086,7 @@ bool IfcSurfaceStyleRefraction::is(Type::Enum v) const { return v == Type::IfcSu Type::Enum IfcSurfaceStyleRefraction::type() const { return Type::IfcSurfaceStyleRefraction; } Type::Enum IfcSurfaceStyleRefraction::Class() { return Type::IfcSurfaceStyleRefraction; } IfcSurfaceStyleRefraction::IfcSurfaceStyleRefraction(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyleRefraction)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyleRefraction::IfcSurfaceStyleRefraction(IfcReal v1_RefractionIndex, IfcReal v2_DispersionFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RefractionIndex); e->setArgument(1,v2_DispersionFactor); entity = e; } +IfcSurfaceStyleRefraction::IfcSurfaceStyleRefraction(optional v1_RefractionIndex, optional v2_DispersionFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_RefractionIndex) { e->setArgument(0,(*v1_RefractionIndex)); } else { e->setArgument(0); } ; if (v2_DispersionFactor) { e->setArgument(1,(*v2_DispersionFactor)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyleRendering bool IfcSurfaceStyleRendering::hasTransparency() { return !entity->getArgument(1)->isNull(); } IfcNormalisedRatioMeasure IfcSurfaceStyleRendering::Transparency() { return *entity->getArgument(1); } @@ -11115,7 +11115,7 @@ bool IfcSurfaceStyleRendering::is(Type::Enum v) const { return v == Type::IfcSur Type::Enum IfcSurfaceStyleRendering::type() const { return Type::IfcSurfaceStyleRendering; } Type::Enum IfcSurfaceStyleRendering::Class() { return Type::IfcSurfaceStyleRendering; } IfcSurfaceStyleRendering::IfcSurfaceStyleRendering(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyleRendering)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyleRendering::IfcSurfaceStyleRendering(IfcColourRgb* v1_SurfaceColour, IfcNormalisedRatioMeasure v2_Transparency, IfcColourOrFactor v3_DiffuseColour, IfcColourOrFactor v4_TransmissionColour, IfcColourOrFactor v5_DiffuseTransmissionColour, IfcColourOrFactor v6_ReflectionColour, IfcColourOrFactor v7_SpecularColour, IfcSpecularHighlightSelect v8_SpecularHighlight, IfcReflectanceMethodEnum::IfcReflectanceMethodEnum v9_ReflectanceMethod) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SurfaceColour); e->setArgument(1,v2_Transparency); e->setArgument(2,v3_DiffuseColour); e->setArgument(3,v4_TransmissionColour); e->setArgument(4,v5_DiffuseTransmissionColour); e->setArgument(5,v6_ReflectionColour); e->setArgument(6,v7_SpecularColour); e->setArgument(7,v8_SpecularHighlight); e->setArgument(8,v9_ReflectanceMethod); entity = e; } +IfcSurfaceStyleRendering::IfcSurfaceStyleRendering(IfcColourRgb* v1_SurfaceColour, optional v2_Transparency, optional v3_DiffuseColour, optional v4_TransmissionColour, optional v5_DiffuseTransmissionColour, optional v6_ReflectionColour, optional v7_SpecularColour, optional v8_SpecularHighlight, IfcReflectanceMethodEnum::IfcReflectanceMethodEnum v9_ReflectanceMethod) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SurfaceColour)); if (v2_Transparency) { e->setArgument(1,(*v2_Transparency)); } else { e->setArgument(1); } ; if (v3_DiffuseColour) { e->setArgument(2,(*v3_DiffuseColour)); } else { e->setArgument(2); } ; if (v4_TransmissionColour) { e->setArgument(3,(*v4_TransmissionColour)); } else { e->setArgument(3); } ; if (v5_DiffuseTransmissionColour) { e->setArgument(4,(*v5_DiffuseTransmissionColour)); } else { e->setArgument(4); } ; if (v6_ReflectionColour) { e->setArgument(5,(*v6_ReflectionColour)); } else { e->setArgument(5); } ; if (v7_SpecularColour) { e->setArgument(6,(*v7_SpecularColour)); } else { e->setArgument(6); } ; if (v8_SpecularHighlight) { e->setArgument(7,(*v8_SpecularHighlight)); } else { e->setArgument(7); } ; e->setArgument(8,v9_ReflectanceMethod,IfcReflectanceMethodEnum::ToString(v9_ReflectanceMethod)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyleShading IfcColourRgb* IfcSurfaceStyleShading::SurfaceColour() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSurfaceStyleShading::setSurfaceColour(IfcColourRgb* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11123,7 +11123,7 @@ bool IfcSurfaceStyleShading::is(Type::Enum v) const { return v == Type::IfcSurfa Type::Enum IfcSurfaceStyleShading::type() const { return Type::IfcSurfaceStyleShading; } Type::Enum IfcSurfaceStyleShading::Class() { return Type::IfcSurfaceStyleShading; } IfcSurfaceStyleShading::IfcSurfaceStyleShading(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyleShading)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyleShading::IfcSurfaceStyleShading(IfcColourRgb* v1_SurfaceColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SurfaceColour); entity = e; } +IfcSurfaceStyleShading::IfcSurfaceStyleShading(IfcColourRgb* v1_SurfaceColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SurfaceColour)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceStyleWithTextures SHARED_PTR< IfcTemplatedEntityList > IfcSurfaceStyleWithTextures::Textures() { RETURN_AS_LIST(IfcSurfaceTexture,0) } void IfcSurfaceStyleWithTextures::setTextures(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11131,7 +11131,7 @@ bool IfcSurfaceStyleWithTextures::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcSurfaceStyleWithTextures::type() const { return Type::IfcSurfaceStyleWithTextures; } Type::Enum IfcSurfaceStyleWithTextures::Class() { return Type::IfcSurfaceStyleWithTextures; } IfcSurfaceStyleWithTextures::IfcSurfaceStyleWithTextures(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceStyleWithTextures)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceStyleWithTextures::IfcSurfaceStyleWithTextures(SHARED_PTR< IfcTemplatedEntityList > v1_Textures) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Textures->generalize()); entity = e; } +IfcSurfaceStyleWithTextures::IfcSurfaceStyleWithTextures(SHARED_PTR< IfcTemplatedEntityList > v1_Textures) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Textures)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSurfaceTexture bool IfcSurfaceTexture::RepeatS() { return *entity->getArgument(0); } void IfcSurfaceTexture::setRepeatS(bool v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11146,7 +11146,7 @@ bool IfcSurfaceTexture::is(Type::Enum v) const { return v == Type::IfcSurfaceTex Type::Enum IfcSurfaceTexture::type() const { return Type::IfcSurfaceTexture; } Type::Enum IfcSurfaceTexture::Class() { return Type::IfcSurfaceTexture; } IfcSurfaceTexture::IfcSurfaceTexture(IfcAbstractEntityPtr e) { if (!is(Type::IfcSurfaceTexture)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSurfaceTexture::IfcSurfaceTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatS); e->setArgument(1,v2_RepeatT); e->setArgument(2,v3_TextureType); e->setArgument(3,v4_TextureTransform); entity = e; } +IfcSurfaceTexture::IfcSurfaceTexture(bool v1_RepeatS, bool v2_RepeatT, IfcSurfaceTextureEnum::IfcSurfaceTextureEnum v3_TextureType, IfcCartesianTransformationOperator2D* v4_TextureTransform) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatS)); e->setArgument(1,(v2_RepeatT)); e->setArgument(2,v3_TextureType,IfcSurfaceTextureEnum::ToString(v3_TextureType)); e->setArgument(3,(v4_TextureTransform)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSweptAreaSolid IfcProfileDef* IfcSweptAreaSolid::SweptArea() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSweptAreaSolid::setSweptArea(IfcProfileDef* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11156,7 +11156,7 @@ bool IfcSweptAreaSolid::is(Type::Enum v) const { return v == Type::IfcSweptAreaS Type::Enum IfcSweptAreaSolid::type() const { return Type::IfcSweptAreaSolid; } Type::Enum IfcSweptAreaSolid::Class() { return Type::IfcSweptAreaSolid; } IfcSweptAreaSolid::IfcSweptAreaSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcSweptAreaSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSweptAreaSolid::IfcSweptAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptArea); e->setArgument(1,v2_Position); entity = e; } +IfcSweptAreaSolid::IfcSweptAreaSolid(IfcProfileDef* v1_SweptArea, IfcAxis2Placement3D* v2_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptArea)); e->setArgument(1,(v2_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSweptDiskSolid IfcCurve* IfcSweptDiskSolid::Directrix() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSweptDiskSolid::setDirectrix(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11173,7 +11173,7 @@ bool IfcSweptDiskSolid::is(Type::Enum v) const { return v == Type::IfcSweptDiskS Type::Enum IfcSweptDiskSolid::type() const { return Type::IfcSweptDiskSolid; } Type::Enum IfcSweptDiskSolid::Class() { return Type::IfcSweptDiskSolid; } IfcSweptDiskSolid::IfcSweptDiskSolid(IfcAbstractEntityPtr e) { if (!is(Type::IfcSweptDiskSolid)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSweptDiskSolid::IfcSweptDiskSolid(IfcCurve* v1_Directrix, IfcPositiveLengthMeasure v2_Radius, IfcPositiveLengthMeasure v3_InnerRadius, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Directrix); e->setArgument(1,v2_Radius); e->setArgument(2,v3_InnerRadius); e->setArgument(3,v4_StartParam); e->setArgument(4,v5_EndParam); entity = e; } +IfcSweptDiskSolid::IfcSweptDiskSolid(IfcCurve* v1_Directrix, IfcPositiveLengthMeasure v2_Radius, optional v3_InnerRadius, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Directrix)); e->setArgument(1,(v2_Radius)); if (v3_InnerRadius) { e->setArgument(2,(*v3_InnerRadius)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_StartParam)); e->setArgument(4,(v5_EndParam)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSweptSurface IfcProfileDef* IfcSweptSurface::SweptCurve() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcSweptSurface::setSweptCurve(IfcProfileDef* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11183,7 +11183,7 @@ bool IfcSweptSurface::is(Type::Enum v) const { return v == Type::IfcSweptSurface Type::Enum IfcSweptSurface::type() const { return Type::IfcSweptSurface; } Type::Enum IfcSweptSurface::Class() { return Type::IfcSweptSurface; } IfcSweptSurface::IfcSweptSurface(IfcAbstractEntityPtr e) { if (!is(Type::IfcSweptSurface)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSweptSurface::IfcSweptSurface(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_SweptCurve); e->setArgument(1,v2_Position); entity = e; } +IfcSweptSurface::IfcSweptSurface(IfcProfileDef* v1_SweptCurve, IfcAxis2Placement3D* v2_Position) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_SweptCurve)); e->setArgument(1,(v2_Position)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSwitchingDeviceType IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum IfcSwitchingDeviceType::PredefinedType() { return IfcSwitchingDeviceTypeEnum::FromString(*entity->getArgument(9)); } void IfcSwitchingDeviceType::setPredefinedType(IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcSwitchingDeviceTypeEnum::ToString(v)); } @@ -11191,7 +11191,7 @@ bool IfcSwitchingDeviceType::is(Type::Enum v) const { return v == Type::IfcSwitc Type::Enum IfcSwitchingDeviceType::type() const { return Type::IfcSwitchingDeviceType; } Type::Enum IfcSwitchingDeviceType::Class() { return Type::IfcSwitchingDeviceType; } IfcSwitchingDeviceType::IfcSwitchingDeviceType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSwitchingDeviceType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSwitchingDeviceType::IfcSwitchingDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcSwitchingDeviceType::IfcSwitchingDeviceType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcSwitchingDeviceTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSymbolStyle IfcSymbolStyleSelect IfcSymbolStyle::StyleOfSymbol() { return *entity->getArgument(1); } void IfcSymbolStyle::setStyleOfSymbol(IfcSymbolStyleSelect v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -11199,20 +11199,20 @@ bool IfcSymbolStyle::is(Type::Enum v) const { return v == Type::IfcSymbolStyle | Type::Enum IfcSymbolStyle::type() const { return Type::IfcSymbolStyle; } Type::Enum IfcSymbolStyle::Class() { return Type::IfcSymbolStyle; } IfcSymbolStyle::IfcSymbolStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcSymbolStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSymbolStyle::IfcSymbolStyle(IfcLabel v1_Name, IfcSymbolStyleSelect v2_StyleOfSymbol) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_StyleOfSymbol); entity = e; } +IfcSymbolStyle::IfcSymbolStyle(optional v1_Name, IfcSymbolStyleSelect v2_StyleOfSymbol) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; e->setArgument(1,(v2_StyleOfSymbol)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSystem IfcRelServicesBuildings::list IfcSystem::ServicesBuildings() { RETURN_INVERSE(IfcRelServicesBuildings) } bool IfcSystem::is(Type::Enum v) const { return v == Type::IfcSystem || IfcGroup::is(v); } Type::Enum IfcSystem::type() const { return Type::IfcSystem; } Type::Enum IfcSystem::Class() { return Type::IfcSystem; } IfcSystem::IfcSystem(IfcAbstractEntityPtr e) { if (!is(Type::IfcSystem)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSystem::IfcSystem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } +IfcSystem::IfcSystem(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcSystemFurnitureElementType bool IfcSystemFurnitureElementType::is(Type::Enum v) const { return v == Type::IfcSystemFurnitureElementType || IfcFurnishingElementType::is(v); } Type::Enum IfcSystemFurnitureElementType::type() const { return Type::IfcSystemFurnitureElementType; } Type::Enum IfcSystemFurnitureElementType::Class() { return Type::IfcSystemFurnitureElementType; } IfcSystemFurnitureElementType::IfcSystemFurnitureElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcSystemFurnitureElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcSystemFurnitureElementType::IfcSystemFurnitureElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); entity = e; } +IfcSystemFurnitureElementType::IfcSystemFurnitureElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTShapeProfileDef IfcPositiveLengthMeasure IfcTShapeProfileDef::Depth() { return *entity->getArgument(3); } void IfcTShapeProfileDef::setDepth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -11244,7 +11244,7 @@ bool IfcTShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcTShapePr Type::Enum IfcTShapeProfileDef::type() const { return Type::IfcTShapeProfileDef; } Type::Enum IfcTShapeProfileDef::Class() { return Type::IfcTShapeProfileDef; } IfcTShapeProfileDef::IfcTShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcTShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTShapeProfileDef::IfcTShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_FlangeEdgeRadius, IfcPositiveLengthMeasure v10_WebEdgeRadius, IfcPlaneAngleMeasure v11_WebSlope, IfcPlaneAngleMeasure v12_FlangeSlope, IfcPositiveLengthMeasure v13_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Depth); e->setArgument(4,v5_FlangeWidth); e->setArgument(5,v6_WebThickness); e->setArgument(6,v7_FlangeThickness); e->setArgument(7,v8_FilletRadius); e->setArgument(8,v9_FlangeEdgeRadius); e->setArgument(9,v10_WebEdgeRadius); e->setArgument(10,v11_WebSlope); e->setArgument(11,v12_FlangeSlope); e->setArgument(12,v13_CentreOfGravityInY); entity = e; } +IfcTShapeProfileDef::IfcTShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_FlangeEdgeRadius, optional v10_WebEdgeRadius, optional v11_WebSlope, optional v12_FlangeSlope, optional v13_CentreOfGravityInY) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Depth)); e->setArgument(4,(v5_FlangeWidth)); e->setArgument(5,(v6_WebThickness)); e->setArgument(6,(v7_FlangeThickness)); if (v8_FilletRadius) { e->setArgument(7,(*v8_FilletRadius)); } else { e->setArgument(7); } ; if (v9_FlangeEdgeRadius) { e->setArgument(8,(*v9_FlangeEdgeRadius)); } else { e->setArgument(8); } ; if (v10_WebEdgeRadius) { e->setArgument(9,(*v10_WebEdgeRadius)); } else { e->setArgument(9); } ; if (v11_WebSlope) { e->setArgument(10,(*v11_WebSlope)); } else { e->setArgument(10); } ; if (v12_FlangeSlope) { e->setArgument(11,(*v12_FlangeSlope)); } else { e->setArgument(11); } ; if (v13_CentreOfGravityInY) { e->setArgument(12,(*v13_CentreOfGravityInY)); } else { e->setArgument(12); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTable std::string IfcTable::Name() { return *entity->getArgument(0); } void IfcTable::setName(std::string v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11254,7 +11254,7 @@ bool IfcTable::is(Type::Enum v) const { return v == Type::IfcTable; } Type::Enum IfcTable::type() const { return Type::IfcTable; } Type::Enum IfcTable::Class() { return Type::IfcTable; } IfcTable::IfcTable(IfcAbstractEntityPtr e) { if (!is(Type::IfcTable)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTable::IfcTable(std::string v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_Rows) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Rows->generalize()); entity = e; } +IfcTable::IfcTable(std::string v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_Rows) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); e->setArgument(1,(v2_Rows)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTableRow SHARED_PTR< IfcTemplatedEntityList > IfcTableRow::RowCells() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcTableRow::setRowCells(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11265,7 +11265,7 @@ bool IfcTableRow::is(Type::Enum v) const { return v == Type::IfcTableRow; } Type::Enum IfcTableRow::type() const { return Type::IfcTableRow; } Type::Enum IfcTableRow::Class() { return Type::IfcTableRow; } IfcTableRow::IfcTableRow(IfcAbstractEntityPtr e) { if (!is(Type::IfcTableRow)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTableRow::IfcTableRow(IfcEntities v1_RowCells, bool v2_IsHeading) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RowCells); e->setArgument(1,v2_IsHeading); entity = e; } +IfcTableRow::IfcTableRow(IfcEntities v1_RowCells, bool v2_IsHeading) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RowCells)); e->setArgument(1,(v2_IsHeading)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTankType IfcTankTypeEnum::IfcTankTypeEnum IfcTankType::PredefinedType() { return IfcTankTypeEnum::FromString(*entity->getArgument(9)); } void IfcTankType::setPredefinedType(IfcTankTypeEnum::IfcTankTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcTankTypeEnum::ToString(v)); } @@ -11273,7 +11273,7 @@ bool IfcTankType::is(Type::Enum v) const { return v == Type::IfcTankType || IfcF Type::Enum IfcTankType::type() const { return Type::IfcTankType; } Type::Enum IfcTankType::Class() { return Type::IfcTankType; } IfcTankType::IfcTankType(IfcAbstractEntityPtr e) { if (!is(Type::IfcTankType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTankType::IfcTankType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTankTypeEnum::IfcTankTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcTankType::IfcTankType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTankTypeEnum::IfcTankTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcTankTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTask IfcIdentifier IfcTask::TaskId() { return *entity->getArgument(5); } void IfcTask::setTaskId(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -11292,7 +11292,7 @@ bool IfcTask::is(Type::Enum v) const { return v == Type::IfcTask || IfcProcess:: Type::Enum IfcTask::type() const { return Type::IfcTask; } Type::Enum IfcTask::Class() { return Type::IfcTask; } IfcTask::IfcTask(IfcAbstractEntityPtr e) { if (!is(Type::IfcTask)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTask::IfcTask(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_TaskId); e->setArgument(6,v7_Status); e->setArgument(7,v8_WorkMethod); e->setArgument(8,v9_IsMilestone); e->setArgument(9,v10_Priority); entity = e; } +IfcTask::IfcTask(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_TaskId)); if (v7_Status) { e->setArgument(6,(*v7_Status)); } else { e->setArgument(6); } ; if (v8_WorkMethod) { e->setArgument(7,(*v8_WorkMethod)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_IsMilestone)); if (v10_Priority) { e->setArgument(9,(*v10_Priority)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTelecomAddress bool IfcTelecomAddress::hasTelephoneNumbers() { return !entity->getArgument(3)->isNull(); } std::vector /*[1:?]*/ IfcTelecomAddress::TelephoneNumbers() { return *entity->getArgument(3); } @@ -11313,7 +11313,7 @@ bool IfcTelecomAddress::is(Type::Enum v) const { return v == Type::IfcTelecomAdd Type::Enum IfcTelecomAddress::type() const { return Type::IfcTelecomAddress; } Type::Enum IfcTelecomAddress::Class() { return Type::IfcTelecomAddress; } IfcTelecomAddress::IfcTelecomAddress(IfcAbstractEntityPtr e) { if (!is(Type::IfcTelecomAddress)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTelecomAddress::IfcTelecomAddress(IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose, std::vector /*[1:?]*/ v4_TelephoneNumbers, std::vector /*[1:?]*/ v5_FacsimileNumbers, IfcLabel v6_PagerNumber, std::vector /*[1:?]*/ v7_ElectronicMailAddresses, IfcLabel v8_WWWHomePageURL) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Purpose); e->setArgument(1,v2_Description); e->setArgument(2,v3_UserDefinedPurpose); e->setArgument(3,v4_TelephoneNumbers); e->setArgument(4,v5_FacsimileNumbers); e->setArgument(5,v6_PagerNumber); e->setArgument(6,v7_ElectronicMailAddresses); e->setArgument(7,v8_WWWHomePageURL); entity = e; } +IfcTelecomAddress::IfcTelecomAddress(optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose, optional /*[1:?]*/> v4_TelephoneNumbers, optional /*[1:?]*/> v5_FacsimileNumbers, optional v6_PagerNumber, optional /*[1:?]*/> v7_ElectronicMailAddresses, optional v8_WWWHomePageURL) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Purpose) { e->setArgument(0,*v1_Purpose,IfcAddressTypeEnum::ToString(*v1_Purpose)); } else { e->setArgument(0); } ; if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; if (v3_UserDefinedPurpose) { e->setArgument(2,(*v3_UserDefinedPurpose)); } else { e->setArgument(2); } ; if (v4_TelephoneNumbers) { e->setArgument(3,(*v4_TelephoneNumbers)); } else { e->setArgument(3); } ; if (v5_FacsimileNumbers) { e->setArgument(4,(*v5_FacsimileNumbers)); } else { e->setArgument(4); } ; if (v6_PagerNumber) { e->setArgument(5,(*v6_PagerNumber)); } else { e->setArgument(5); } ; if (v7_ElectronicMailAddresses) { e->setArgument(6,(*v7_ElectronicMailAddresses)); } else { e->setArgument(6); } ; if (v8_WWWHomePageURL) { e->setArgument(7,(*v8_WWWHomePageURL)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTendon IfcTendonTypeEnum::IfcTendonTypeEnum IfcTendon::PredefinedType() { return IfcTendonTypeEnum::FromString(*entity->getArgument(9)); } void IfcTendon::setPredefinedType(IfcTendonTypeEnum::IfcTendonTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcTendonTypeEnum::ToString(v)); } @@ -11340,13 +11340,13 @@ bool IfcTendon::is(Type::Enum v) const { return v == Type::IfcTendon || IfcReinf Type::Enum IfcTendon::type() const { return Type::IfcTendon; } Type::Enum IfcTendon::Class() { return Type::IfcTendon; } IfcTendon::IfcTendon(IfcAbstractEntityPtr e) { if (!is(Type::IfcTendon)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTendon::IfcTendon(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcTendonTypeEnum::IfcTendonTypeEnum v10_PredefinedType, IfcPositiveLengthMeasure v11_NominalDiameter, IfcAreaMeasure v12_CrossSectionArea, IfcForceMeasure v13_TensionForce, IfcPressureMeasure v14_PreStress, IfcNormalisedRatioMeasure v15_FrictionCoefficient, IfcPositiveLengthMeasure v16_AnchorageSlip, IfcPositiveLengthMeasure v17_MinCurvatureRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_SteelGrade); e->setArgument(9,v10_PredefinedType); e->setArgument(10,v11_NominalDiameter); e->setArgument(11,v12_CrossSectionArea); e->setArgument(12,v13_TensionForce); e->setArgument(13,v14_PreStress); e->setArgument(14,v15_FrictionCoefficient); e->setArgument(15,v16_AnchorageSlip); e->setArgument(16,v17_MinCurvatureRadius); entity = e; } +IfcTendon::IfcTendon(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, IfcTendonTypeEnum::IfcTendonTypeEnum v10_PredefinedType, IfcPositiveLengthMeasure v11_NominalDiameter, IfcAreaMeasure v12_CrossSectionArea, optional v13_TensionForce, optional v14_PreStress, optional v15_FrictionCoefficient, optional v16_AnchorageSlip, optional v17_MinCurvatureRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_SteelGrade) { e->setArgument(8,(*v9_SteelGrade)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcTendonTypeEnum::ToString(v10_PredefinedType)); e->setArgument(10,(v11_NominalDiameter)); e->setArgument(11,(v12_CrossSectionArea)); if (v13_TensionForce) { e->setArgument(12,(*v13_TensionForce)); } else { e->setArgument(12); } ; if (v14_PreStress) { e->setArgument(13,(*v14_PreStress)); } else { e->setArgument(13); } ; if (v15_FrictionCoefficient) { e->setArgument(14,(*v15_FrictionCoefficient)); } else { e->setArgument(14); } ; if (v16_AnchorageSlip) { e->setArgument(15,(*v16_AnchorageSlip)); } else { e->setArgument(15); } ; if (v17_MinCurvatureRadius) { e->setArgument(16,(*v17_MinCurvatureRadius)); } else { e->setArgument(16); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTendonAnchor bool IfcTendonAnchor::is(Type::Enum v) const { return v == Type::IfcTendonAnchor || IfcReinforcingElement::is(v); } Type::Enum IfcTendonAnchor::type() const { return Type::IfcTendonAnchor; } Type::Enum IfcTendonAnchor::Class() { return Type::IfcTendonAnchor; } IfcTendonAnchor::IfcTendonAnchor(IfcAbstractEntityPtr e) { if (!is(Type::IfcTendonAnchor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTendonAnchor::IfcTendonAnchor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_SteelGrade); entity = e; } +IfcTendonAnchor::IfcTendonAnchor(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_SteelGrade) { e->setArgument(8,(*v9_SteelGrade)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTerminatorSymbol IfcAnnotationCurveOccurrence* IfcTerminatorSymbol::AnnotatedCurve() { return reinterpret_pointer_cast(*entity->getArgument(3)); } void IfcTerminatorSymbol::setAnnotatedCurve(IfcAnnotationCurveOccurrence* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -11354,7 +11354,7 @@ bool IfcTerminatorSymbol::is(Type::Enum v) const { return v == Type::IfcTerminat Type::Enum IfcTerminatorSymbol::type() const { return Type::IfcTerminatorSymbol; } Type::Enum IfcTerminatorSymbol::Class() { return Type::IfcTerminatorSymbol; } IfcTerminatorSymbol::IfcTerminatorSymbol(IfcAbstractEntityPtr e) { if (!is(Type::IfcTerminatorSymbol)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTerminatorSymbol::IfcTerminatorSymbol(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Item); e->setArgument(1,v2_Styles->generalize()); e->setArgument(2,v3_Name); e->setArgument(3,v4_AnnotatedCurve); entity = e; } +IfcTerminatorSymbol::IfcTerminatorSymbol(IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Item)); e->setArgument(1,(v2_Styles)->generalize()); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_AnnotatedCurve)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextLiteral IfcPresentableText IfcTextLiteral::Literal() { return *entity->getArgument(0); } void IfcTextLiteral::setLiteral(IfcPresentableText v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11366,7 +11366,7 @@ bool IfcTextLiteral::is(Type::Enum v) const { return v == Type::IfcTextLiteral | Type::Enum IfcTextLiteral::type() const { return Type::IfcTextLiteral; } Type::Enum IfcTextLiteral::Class() { return Type::IfcTextLiteral; } IfcTextLiteral::IfcTextLiteral(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextLiteral)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextLiteral::IfcTextLiteral(IfcPresentableText v1_Literal, IfcAxis2Placement v2_Placement, IfcTextPath::IfcTextPath v3_Path) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Literal); e->setArgument(1,v2_Placement); e->setArgument(2,v3_Path); entity = e; } +IfcTextLiteral::IfcTextLiteral(IfcPresentableText v1_Literal, IfcAxis2Placement v2_Placement, IfcTextPath::IfcTextPath v3_Path) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Literal)); e->setArgument(1,(v2_Placement)); e->setArgument(2,v3_Path,IfcTextPath::ToString(v3_Path)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextLiteralWithExtent IfcPlanarExtent* IfcTextLiteralWithExtent::Extent() { return reinterpret_pointer_cast(*entity->getArgument(3)); } void IfcTextLiteralWithExtent::setExtent(IfcPlanarExtent* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -11376,7 +11376,7 @@ bool IfcTextLiteralWithExtent::is(Type::Enum v) const { return v == Type::IfcTex Type::Enum IfcTextLiteralWithExtent::type() const { return Type::IfcTextLiteralWithExtent; } Type::Enum IfcTextLiteralWithExtent::Class() { return Type::IfcTextLiteralWithExtent; } IfcTextLiteralWithExtent::IfcTextLiteralWithExtent(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextLiteralWithExtent)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextLiteralWithExtent::IfcTextLiteralWithExtent(IfcPresentableText v1_Literal, IfcAxis2Placement v2_Placement, IfcTextPath::IfcTextPath v3_Path, IfcPlanarExtent* v4_Extent, IfcBoxAlignment v5_BoxAlignment) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Literal); e->setArgument(1,v2_Placement); e->setArgument(2,v3_Path); e->setArgument(3,v4_Extent); e->setArgument(4,v5_BoxAlignment); entity = e; } +IfcTextLiteralWithExtent::IfcTextLiteralWithExtent(IfcPresentableText v1_Literal, IfcAxis2Placement v2_Placement, IfcTextPath::IfcTextPath v3_Path, IfcPlanarExtent* v4_Extent, IfcBoxAlignment v5_BoxAlignment) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Literal)); e->setArgument(1,(v2_Placement)); e->setArgument(2,v3_Path,IfcTextPath::ToString(v3_Path)); e->setArgument(3,(v4_Extent)); e->setArgument(4,(v5_BoxAlignment)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextStyle bool IfcTextStyle::hasTextCharacterAppearance() { return !entity->getArgument(1)->isNull(); } IfcCharacterStyleSelect IfcTextStyle::TextCharacterAppearance() { return *entity->getArgument(1); } @@ -11390,7 +11390,7 @@ bool IfcTextStyle::is(Type::Enum v) const { return v == Type::IfcTextStyle || If Type::Enum IfcTextStyle::type() const { return Type::IfcTextStyle; } Type::Enum IfcTextStyle::Class() { return Type::IfcTextStyle; } IfcTextStyle::IfcTextStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextStyle::IfcTextStyle(IfcLabel v1_Name, IfcCharacterStyleSelect v2_TextCharacterAppearance, IfcTextStyleSelect v3_TextStyle, IfcTextFontSelect v4_TextFontStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_TextCharacterAppearance); e->setArgument(2,v3_TextStyle); e->setArgument(3,v4_TextFontStyle); entity = e; } +IfcTextStyle::IfcTextStyle(optional v1_Name, optional v2_TextCharacterAppearance, optional v3_TextStyle, IfcTextFontSelect v4_TextFontStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_Name) { e->setArgument(0,(*v1_Name)); } else { e->setArgument(0); } ; if (v2_TextCharacterAppearance) { e->setArgument(1,(*v2_TextCharacterAppearance)); } else { e->setArgument(1); } ; if (v3_TextStyle) { e->setArgument(2,(*v3_TextStyle)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_TextFontStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextStyleFontModel bool IfcTextStyleFontModel::hasFontFamily() { return !entity->getArgument(1)->isNull(); } std::vector /*[1:?]*/ IfcTextStyleFontModel::FontFamily() { return *entity->getArgument(1); } @@ -11410,7 +11410,7 @@ bool IfcTextStyleFontModel::is(Type::Enum v) const { return v == Type::IfcTextSt Type::Enum IfcTextStyleFontModel::type() const { return Type::IfcTextStyleFontModel; } Type::Enum IfcTextStyleFontModel::Class() { return Type::IfcTextStyleFontModel; } IfcTextStyleFontModel::IfcTextStyleFontModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextStyleFontModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextStyleFontModel::IfcTextStyleFontModel(IfcLabel v1_Name, std::vector /*[1:?]*/ v2_FontFamily, IfcFontStyle v3_FontStyle, IfcFontVariant v4_FontVariant, IfcFontWeight v5_FontWeight, IfcSizeSelect v6_FontSize) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_FontFamily); e->setArgument(2,v3_FontStyle); e->setArgument(3,v4_FontVariant); e->setArgument(4,v5_FontWeight); e->setArgument(5,v6_FontSize); entity = e; } +IfcTextStyleFontModel::IfcTextStyleFontModel(IfcLabel v1_Name, optional /*[1:?]*/> v2_FontFamily, optional v3_FontStyle, optional v4_FontVariant, optional v5_FontWeight, IfcSizeSelect v6_FontSize) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_FontFamily) { e->setArgument(1,(*v2_FontFamily)); } else { e->setArgument(1); } ; if (v3_FontStyle) { e->setArgument(2,(*v3_FontStyle)); } else { e->setArgument(2); } ; if (v4_FontVariant) { e->setArgument(3,(*v4_FontVariant)); } else { e->setArgument(3); } ; if (v5_FontWeight) { e->setArgument(4,(*v5_FontWeight)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_FontSize)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextStyleForDefinedFont IfcColour IfcTextStyleForDefinedFont::Colour() { return *entity->getArgument(0); } void IfcTextStyleForDefinedFont::setColour(IfcColour v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11421,7 +11421,7 @@ bool IfcTextStyleForDefinedFont::is(Type::Enum v) const { return v == Type::IfcT Type::Enum IfcTextStyleForDefinedFont::type() const { return Type::IfcTextStyleForDefinedFont; } Type::Enum IfcTextStyleForDefinedFont::Class() { return Type::IfcTextStyleForDefinedFont; } IfcTextStyleForDefinedFont::IfcTextStyleForDefinedFont(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextStyleForDefinedFont)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextStyleForDefinedFont::IfcTextStyleForDefinedFont(IfcColour v1_Colour, IfcColour v2_BackgroundColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Colour); e->setArgument(1,v2_BackgroundColour); entity = e; } +IfcTextStyleForDefinedFont::IfcTextStyleForDefinedFont(IfcColour v1_Colour, optional v2_BackgroundColour) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Colour)); if (v2_BackgroundColour) { e->setArgument(1,(*v2_BackgroundColour)); } else { e->setArgument(1); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextStyleTextModel bool IfcTextStyleTextModel::hasTextIndent() { return !entity->getArgument(0)->isNull(); } IfcSizeSelect IfcTextStyleTextModel::TextIndent() { return *entity->getArgument(0); } @@ -11448,7 +11448,7 @@ bool IfcTextStyleTextModel::is(Type::Enum v) const { return v == Type::IfcTextSt Type::Enum IfcTextStyleTextModel::type() const { return Type::IfcTextStyleTextModel; } Type::Enum IfcTextStyleTextModel::Class() { return Type::IfcTextStyleTextModel; } IfcTextStyleTextModel::IfcTextStyleTextModel(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextStyleTextModel)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextStyleTextModel::IfcTextStyleTextModel(IfcSizeSelect v1_TextIndent, IfcTextAlignment v2_TextAlign, IfcTextDecoration v3_TextDecoration, IfcSizeSelect v4_LetterSpacing, IfcSizeSelect v5_WordSpacing, IfcTextTransformation v6_TextTransform, IfcSizeSelect v7_LineHeight) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TextIndent); e->setArgument(1,v2_TextAlign); e->setArgument(2,v3_TextDecoration); e->setArgument(3,v4_LetterSpacing); e->setArgument(4,v5_WordSpacing); e->setArgument(5,v6_TextTransform); e->setArgument(6,v7_LineHeight); entity = e; } +IfcTextStyleTextModel::IfcTextStyleTextModel(optional v1_TextIndent, optional v2_TextAlign, optional v3_TextDecoration, optional v4_LetterSpacing, optional v5_WordSpacing, optional v6_TextTransform, optional v7_LineHeight) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_TextIndent) { e->setArgument(0,(*v1_TextIndent)); } else { e->setArgument(0); } ; if (v2_TextAlign) { e->setArgument(1,(*v2_TextAlign)); } else { e->setArgument(1); } ; if (v3_TextDecoration) { e->setArgument(2,(*v3_TextDecoration)); } else { e->setArgument(2); } ; if (v4_LetterSpacing) { e->setArgument(3,(*v4_LetterSpacing)); } else { e->setArgument(3); } ; if (v5_WordSpacing) { e->setArgument(4,(*v5_WordSpacing)); } else { e->setArgument(4); } ; if (v6_TextTransform) { e->setArgument(5,(*v6_TextTransform)); } else { e->setArgument(5); } ; if (v7_LineHeight) { e->setArgument(6,(*v7_LineHeight)); } else { e->setArgument(6); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextStyleWithBoxCharacteristics bool IfcTextStyleWithBoxCharacteristics::hasBoxHeight() { return !entity->getArgument(0)->isNull(); } IfcPositiveLengthMeasure IfcTextStyleWithBoxCharacteristics::BoxHeight() { return *entity->getArgument(0); } @@ -11469,7 +11469,7 @@ bool IfcTextStyleWithBoxCharacteristics::is(Type::Enum v) const { return v == Ty Type::Enum IfcTextStyleWithBoxCharacteristics::type() const { return Type::IfcTextStyleWithBoxCharacteristics; } Type::Enum IfcTextStyleWithBoxCharacteristics::Class() { return Type::IfcTextStyleWithBoxCharacteristics; } IfcTextStyleWithBoxCharacteristics::IfcTextStyleWithBoxCharacteristics(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextStyleWithBoxCharacteristics)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextStyleWithBoxCharacteristics::IfcTextStyleWithBoxCharacteristics(IfcPositiveLengthMeasure v1_BoxHeight, IfcPositiveLengthMeasure v2_BoxWidth, IfcPlaneAngleMeasure v3_BoxSlantAngle, IfcPlaneAngleMeasure v4_BoxRotateAngle, IfcSizeSelect v5_CharacterSpacing) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BoxHeight); e->setArgument(1,v2_BoxWidth); e->setArgument(2,v3_BoxSlantAngle); e->setArgument(3,v4_BoxRotateAngle); e->setArgument(4,v5_CharacterSpacing); entity = e; } +IfcTextStyleWithBoxCharacteristics::IfcTextStyleWithBoxCharacteristics(optional v1_BoxHeight, optional v2_BoxWidth, optional v3_BoxSlantAngle, optional v4_BoxRotateAngle, optional v5_CharacterSpacing) { IfcWritableEntity* e = new IfcWritableEntity(Class()); if (v1_BoxHeight) { e->setArgument(0,(*v1_BoxHeight)); } else { e->setArgument(0); } ; if (v2_BoxWidth) { e->setArgument(1,(*v2_BoxWidth)); } else { e->setArgument(1); } ; if (v3_BoxSlantAngle) { e->setArgument(2,(*v3_BoxSlantAngle)); } else { e->setArgument(2); } ; if (v4_BoxRotateAngle) { e->setArgument(3,(*v4_BoxRotateAngle)); } else { e->setArgument(3); } ; if (v5_CharacterSpacing) { e->setArgument(4,(*v5_CharacterSpacing)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextureCoordinate IfcAnnotationSurface::list IfcTextureCoordinate::AnnotatedSurface() { RETURN_INVERSE(IfcAnnotationSurface) } bool IfcTextureCoordinate::is(Type::Enum v) const { return v == Type::IfcTextureCoordinate; } @@ -11485,7 +11485,7 @@ bool IfcTextureCoordinateGenerator::is(Type::Enum v) const { return v == Type::I Type::Enum IfcTextureCoordinateGenerator::type() const { return Type::IfcTextureCoordinateGenerator; } Type::Enum IfcTextureCoordinateGenerator::Class() { return Type::IfcTextureCoordinateGenerator; } IfcTextureCoordinateGenerator::IfcTextureCoordinateGenerator(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextureCoordinateGenerator)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextureCoordinateGenerator::IfcTextureCoordinateGenerator(IfcLabel v1_Mode, IfcEntities v2_Parameter) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Mode); e->setArgument(1,v2_Parameter); entity = e; } +IfcTextureCoordinateGenerator::IfcTextureCoordinateGenerator(IfcLabel v1_Mode, IfcEntities v2_Parameter) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Mode)); e->setArgument(1,(v2_Parameter)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextureMap SHARED_PTR< IfcTemplatedEntityList > IfcTextureMap::TextureMaps() { RETURN_AS_LIST(IfcVertexBasedTextureMap,0) } void IfcTextureMap::setTextureMaps(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11493,7 +11493,7 @@ bool IfcTextureMap::is(Type::Enum v) const { return v == Type::IfcTextureMap || Type::Enum IfcTextureMap::type() const { return Type::IfcTextureMap; } Type::Enum IfcTextureMap::Class() { return Type::IfcTextureMap; } IfcTextureMap::IfcTextureMap(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextureMap)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextureMap::IfcTextureMap(SHARED_PTR< IfcTemplatedEntityList > v1_TextureMaps) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TextureMaps->generalize()); entity = e; } +IfcTextureMap::IfcTextureMap(SHARED_PTR< IfcTemplatedEntityList > v1_TextureMaps) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TextureMaps)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTextureVertex std::vector /*[2:2]*/ IfcTextureVertex::Coordinates() { return *entity->getArgument(0); } void IfcTextureVertex::setCoordinates(std::vector /*[2:2]*/ v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11501,7 +11501,7 @@ bool IfcTextureVertex::is(Type::Enum v) const { return v == Type::IfcTextureVert Type::Enum IfcTextureVertex::type() const { return Type::IfcTextureVertex; } Type::Enum IfcTextureVertex::Class() { return Type::IfcTextureVertex; } IfcTextureVertex::IfcTextureVertex(IfcAbstractEntityPtr e) { if (!is(Type::IfcTextureVertex)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTextureVertex::IfcTextureVertex(std::vector /*[2:2]*/ v1_Coordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Coordinates); entity = e; } +IfcTextureVertex::IfcTextureVertex(std::vector /*[2:2]*/ v1_Coordinates) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Coordinates)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcThermalMaterialProperties bool IfcThermalMaterialProperties::hasSpecificHeatCapacity() { return !entity->getArgument(1)->isNull(); } IfcSpecificHeatCapacityMeasure IfcThermalMaterialProperties::SpecificHeatCapacity() { return *entity->getArgument(1); } @@ -11519,7 +11519,7 @@ bool IfcThermalMaterialProperties::is(Type::Enum v) const { return v == Type::If Type::Enum IfcThermalMaterialProperties::type() const { return Type::IfcThermalMaterialProperties; } Type::Enum IfcThermalMaterialProperties::Class() { return Type::IfcThermalMaterialProperties; } IfcThermalMaterialProperties::IfcThermalMaterialProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcThermalMaterialProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcThermalMaterialProperties::IfcThermalMaterialProperties(IfcMaterial* v1_Material, IfcSpecificHeatCapacityMeasure v2_SpecificHeatCapacity, IfcThermodynamicTemperatureMeasure v3_BoilingPoint, IfcThermodynamicTemperatureMeasure v4_FreezingPoint, IfcThermalConductivityMeasure v5_ThermalConductivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_SpecificHeatCapacity); e->setArgument(2,v3_BoilingPoint); e->setArgument(3,v4_FreezingPoint); e->setArgument(4,v5_ThermalConductivity); entity = e; } +IfcThermalMaterialProperties::IfcThermalMaterialProperties(IfcMaterial* v1_Material, optional v2_SpecificHeatCapacity, optional v3_BoilingPoint, optional v4_FreezingPoint, optional v5_ThermalConductivity) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_SpecificHeatCapacity) { e->setArgument(1,(*v2_SpecificHeatCapacity)); } else { e->setArgument(1); } ; if (v3_BoilingPoint) { e->setArgument(2,(*v3_BoilingPoint)); } else { e->setArgument(2); } ; if (v4_FreezingPoint) { e->setArgument(3,(*v4_FreezingPoint)); } else { e->setArgument(3); } ; if (v5_ThermalConductivity) { e->setArgument(4,(*v5_ThermalConductivity)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTimeSeries IfcLabel IfcTimeSeries::Name() { return *entity->getArgument(0); } void IfcTimeSeries::setName(IfcLabel v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11545,7 +11545,7 @@ bool IfcTimeSeries::is(Type::Enum v) const { return v == Type::IfcTimeSeries; } Type::Enum IfcTimeSeries::type() const { return Type::IfcTimeSeries; } Type::Enum IfcTimeSeries::Class() { return Type::IfcTimeSeries; } IfcTimeSeries::IfcTimeSeries(IfcAbstractEntityPtr e) { if (!is(Type::IfcTimeSeries)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTimeSeries::IfcTimeSeries(IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Name); e->setArgument(1,v2_Description); e->setArgument(2,v3_StartTime); e->setArgument(3,v4_EndTime); e->setArgument(4,v5_TimeSeriesDataType); e->setArgument(5,v6_DataOrigin); e->setArgument(6,v7_UserDefinedDataOrigin); e->setArgument(7,v8_Unit); entity = e; } +IfcTimeSeries::IfcTimeSeries(IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Name)); if (v2_Description) { e->setArgument(1,(*v2_Description)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_StartTime)); e->setArgument(3,(v4_EndTime)); e->setArgument(4,v5_TimeSeriesDataType,IfcTimeSeriesDataTypeEnum::ToString(v5_TimeSeriesDataType)); e->setArgument(5,v6_DataOrigin,IfcDataOriginEnum::ToString(v6_DataOrigin)); if (v7_UserDefinedDataOrigin) { e->setArgument(6,(*v7_UserDefinedDataOrigin)); } else { e->setArgument(6); } ; if (v8_Unit) { e->setArgument(7,(*v8_Unit)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTimeSeriesReferenceRelationship IfcTimeSeries* IfcTimeSeriesReferenceRelationship::ReferencedTimeSeries() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcTimeSeriesReferenceRelationship::setReferencedTimeSeries(IfcTimeSeries* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11555,7 +11555,7 @@ bool IfcTimeSeriesReferenceRelationship::is(Type::Enum v) const { return v == Ty Type::Enum IfcTimeSeriesReferenceRelationship::type() const { return Type::IfcTimeSeriesReferenceRelationship; } Type::Enum IfcTimeSeriesReferenceRelationship::Class() { return Type::IfcTimeSeriesReferenceRelationship; } IfcTimeSeriesReferenceRelationship::IfcTimeSeriesReferenceRelationship(IfcAbstractEntityPtr e) { if (!is(Type::IfcTimeSeriesReferenceRelationship)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTimeSeriesReferenceRelationship::IfcTimeSeriesReferenceRelationship(IfcTimeSeries* v1_ReferencedTimeSeries, IfcEntities v2_TimeSeriesReferences) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ReferencedTimeSeries); e->setArgument(1,v2_TimeSeriesReferences); entity = e; } +IfcTimeSeriesReferenceRelationship::IfcTimeSeriesReferenceRelationship(IfcTimeSeries* v1_ReferencedTimeSeries, IfcEntities v2_TimeSeriesReferences) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ReferencedTimeSeries)); e->setArgument(1,(v2_TimeSeriesReferences)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTimeSeriesSchedule bool IfcTimeSeriesSchedule::hasApplicableDates() { return !entity->getArgument(5)->isNull(); } SHARED_PTR< IfcTemplatedEntityList > IfcTimeSeriesSchedule::ApplicableDates() { RETURN_AS_LIST(IfcAbstractSelect,5) } @@ -11568,7 +11568,7 @@ bool IfcTimeSeriesSchedule::is(Type::Enum v) const { return v == Type::IfcTimeSe Type::Enum IfcTimeSeriesSchedule::type() const { return Type::IfcTimeSeriesSchedule; } Type::Enum IfcTimeSeriesSchedule::Class() { return Type::IfcTimeSeriesSchedule; } IfcTimeSeriesSchedule::IfcTimeSeriesSchedule(IfcAbstractEntityPtr e) { if (!is(Type::IfcTimeSeriesSchedule)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTimeSeriesSchedule::IfcTimeSeriesSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcEntities v6_ApplicableDates, IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleTypeEnum v7_TimeSeriesScheduleType, IfcTimeSeries* v8_TimeSeries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ApplicableDates); e->setArgument(6,v7_TimeSeriesScheduleType); e->setArgument(7,v8_TimeSeries); entity = e; } +IfcTimeSeriesSchedule::IfcTimeSeriesSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ApplicableDates, IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleTypeEnum v7_TimeSeriesScheduleType, IfcTimeSeries* v8_TimeSeries) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; if (v6_ApplicableDates) { e->setArgument(5,(*v6_ApplicableDates)); } else { e->setArgument(5); } ; e->setArgument(6,v7_TimeSeriesScheduleType,IfcTimeSeriesScheduleTypeEnum::ToString(v7_TimeSeriesScheduleType)); e->setArgument(7,(v8_TimeSeries)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTimeSeriesValue SHARED_PTR< IfcTemplatedEntityList > IfcTimeSeriesValue::ListValues() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcTimeSeriesValue::setListValues(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11576,7 +11576,7 @@ bool IfcTimeSeriesValue::is(Type::Enum v) const { return v == Type::IfcTimeSerie Type::Enum IfcTimeSeriesValue::type() const { return Type::IfcTimeSeriesValue; } Type::Enum IfcTimeSeriesValue::Class() { return Type::IfcTimeSeriesValue; } IfcTimeSeriesValue::IfcTimeSeriesValue(IfcAbstractEntityPtr e) { if (!is(Type::IfcTimeSeriesValue)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTimeSeriesValue::IfcTimeSeriesValue(IfcEntities v1_ListValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ListValues); entity = e; } +IfcTimeSeriesValue::IfcTimeSeriesValue(IfcEntities v1_ListValues) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ListValues)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTopologicalRepresentationItem bool IfcTopologicalRepresentationItem::is(Type::Enum v) const { return v == Type::IfcTopologicalRepresentationItem || IfcRepresentationItem::is(v); } Type::Enum IfcTopologicalRepresentationItem::type() const { return Type::IfcTopologicalRepresentationItem; } @@ -11587,7 +11587,7 @@ bool IfcTopologyRepresentation::is(Type::Enum v) const { return v == Type::IfcTo Type::Enum IfcTopologyRepresentation::type() const { return Type::IfcTopologyRepresentation; } Type::Enum IfcTopologyRepresentation::Class() { return Type::IfcTopologyRepresentation; } IfcTopologyRepresentation::IfcTopologyRepresentation(IfcAbstractEntityPtr e) { if (!is(Type::IfcTopologyRepresentation)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTopologyRepresentation::IfcTopologyRepresentation(IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ContextOfItems); e->setArgument(1,v2_RepresentationIdentifier); e->setArgument(2,v3_RepresentationType); e->setArgument(3,v4_Items->generalize()); entity = e; } +IfcTopologyRepresentation::IfcTopologyRepresentation(IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_ContextOfItems)); if (v2_RepresentationIdentifier) { e->setArgument(1,(*v2_RepresentationIdentifier)); } else { e->setArgument(1); } ; if (v3_RepresentationType) { e->setArgument(2,(*v3_RepresentationType)); } else { e->setArgument(2); } ; e->setArgument(3,(v4_Items)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTransformerType IfcTransformerTypeEnum::IfcTransformerTypeEnum IfcTransformerType::PredefinedType() { return IfcTransformerTypeEnum::FromString(*entity->getArgument(9)); } void IfcTransformerType::setPredefinedType(IfcTransformerTypeEnum::IfcTransformerTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcTransformerTypeEnum::ToString(v)); } @@ -11595,7 +11595,7 @@ bool IfcTransformerType::is(Type::Enum v) const { return v == Type::IfcTransform Type::Enum IfcTransformerType::type() const { return Type::IfcTransformerType; } Type::Enum IfcTransformerType::Class() { return Type::IfcTransformerType; } IfcTransformerType::IfcTransformerType(IfcAbstractEntityPtr e) { if (!is(Type::IfcTransformerType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTransformerType::IfcTransformerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTransformerTypeEnum::IfcTransformerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcTransformerType::IfcTransformerType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTransformerTypeEnum::IfcTransformerTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcTransformerTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTransportElement bool IfcTransportElement::hasOperationType() { return !entity->getArgument(8)->isNull(); } IfcTransportElementTypeEnum::IfcTransportElementTypeEnum IfcTransportElement::OperationType() { return IfcTransportElementTypeEnum::FromString(*entity->getArgument(8)); } @@ -11610,7 +11610,7 @@ bool IfcTransportElement::is(Type::Enum v) const { return v == Type::IfcTranspor Type::Enum IfcTransportElement::type() const { return Type::IfcTransportElement; } Type::Enum IfcTransportElement::Class() { return Type::IfcTransportElement; } IfcTransportElement::IfcTransportElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcTransportElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTransportElement::IfcTransportElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v9_OperationType, IfcMassMeasure v10_CapacityByWeight, IfcCountMeasure v11_CapacityByNumber) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_OperationType); e->setArgument(9,v10_CapacityByWeight); e->setArgument(10,v11_CapacityByNumber); entity = e; } +IfcTransportElement::IfcTransportElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OperationType, optional v10_CapacityByWeight, optional v11_CapacityByNumber) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_OperationType) { e->setArgument(8,*v9_OperationType,IfcTransportElementTypeEnum::ToString(*v9_OperationType)); } else { e->setArgument(8); } ; if (v10_CapacityByWeight) { e->setArgument(9,(*v10_CapacityByWeight)); } else { e->setArgument(9); } ; if (v11_CapacityByNumber) { e->setArgument(10,(*v11_CapacityByNumber)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTransportElementType IfcTransportElementTypeEnum::IfcTransportElementTypeEnum IfcTransportElementType::PredefinedType() { return IfcTransportElementTypeEnum::FromString(*entity->getArgument(9)); } void IfcTransportElementType::setPredefinedType(IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcTransportElementTypeEnum::ToString(v)); } @@ -11618,7 +11618,7 @@ bool IfcTransportElementType::is(Type::Enum v) const { return v == Type::IfcTran Type::Enum IfcTransportElementType::type() const { return Type::IfcTransportElementType; } Type::Enum IfcTransportElementType::Class() { return Type::IfcTransportElementType; } IfcTransportElementType::IfcTransportElementType(IfcAbstractEntityPtr e) { if (!is(Type::IfcTransportElementType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTransportElementType::IfcTransportElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcTransportElementType::IfcTransportElementType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcTransportElementTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTrapeziumProfileDef IfcPositiveLengthMeasure IfcTrapeziumProfileDef::BottomXDim() { return *entity->getArgument(3); } void IfcTrapeziumProfileDef::setBottomXDim(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -11632,7 +11632,7 @@ bool IfcTrapeziumProfileDef::is(Type::Enum v) const { return v == Type::IfcTrape Type::Enum IfcTrapeziumProfileDef::type() const { return Type::IfcTrapeziumProfileDef; } Type::Enum IfcTrapeziumProfileDef::Class() { return Type::IfcTrapeziumProfileDef; } IfcTrapeziumProfileDef::IfcTrapeziumProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcTrapeziumProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTrapeziumProfileDef::IfcTrapeziumProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_BottomXDim, IfcPositiveLengthMeasure v5_TopXDim, IfcPositiveLengthMeasure v6_YDim, IfcLengthMeasure v7_TopXOffset) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_BottomXDim); e->setArgument(4,v5_TopXDim); e->setArgument(5,v6_YDim); e->setArgument(6,v7_TopXOffset); entity = e; } +IfcTrapeziumProfileDef::IfcTrapeziumProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_BottomXDim, IfcPositiveLengthMeasure v5_TopXDim, IfcPositiveLengthMeasure v6_YDim, IfcLengthMeasure v7_TopXOffset) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_BottomXDim)); e->setArgument(4,(v5_TopXDim)); e->setArgument(5,(v6_YDim)); e->setArgument(6,(v7_TopXOffset)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTrimmedCurve IfcCurve* IfcTrimmedCurve::BasisCurve() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcTrimmedCurve::setBasisCurve(IfcCurve* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11648,7 +11648,7 @@ bool IfcTrimmedCurve::is(Type::Enum v) const { return v == Type::IfcTrimmedCurve Type::Enum IfcTrimmedCurve::type() const { return Type::IfcTrimmedCurve; } Type::Enum IfcTrimmedCurve::Class() { return Type::IfcTrimmedCurve; } IfcTrimmedCurve::IfcTrimmedCurve(IfcAbstractEntityPtr e) { if (!is(Type::IfcTrimmedCurve)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTrimmedCurve::IfcTrimmedCurve(IfcCurve* v1_BasisCurve, IfcEntities v2_Trim1, IfcEntities v3_Trim2, bool v4_SenseAgreement, IfcTrimmingPreference::IfcTrimmingPreference v5_MasterRepresentation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_BasisCurve); e->setArgument(1,v2_Trim1); e->setArgument(2,v3_Trim2); e->setArgument(3,v4_SenseAgreement); e->setArgument(4,v5_MasterRepresentation); entity = e; } +IfcTrimmedCurve::IfcTrimmedCurve(IfcCurve* v1_BasisCurve, IfcEntities v2_Trim1, IfcEntities v3_Trim2, bool v4_SenseAgreement, IfcTrimmingPreference::IfcTrimmingPreference v5_MasterRepresentation) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_BasisCurve)); e->setArgument(1,(v2_Trim1)); e->setArgument(2,(v3_Trim2)); e->setArgument(3,(v4_SenseAgreement)); e->setArgument(4,v5_MasterRepresentation,IfcTrimmingPreference::ToString(v5_MasterRepresentation)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTubeBundleType IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum IfcTubeBundleType::PredefinedType() { return IfcTubeBundleTypeEnum::FromString(*entity->getArgument(9)); } void IfcTubeBundleType::setPredefinedType(IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcTubeBundleTypeEnum::ToString(v)); } @@ -11656,7 +11656,7 @@ bool IfcTubeBundleType::is(Type::Enum v) const { return v == Type::IfcTubeBundle Type::Enum IfcTubeBundleType::type() const { return Type::IfcTubeBundleType; } Type::Enum IfcTubeBundleType::Class() { return Type::IfcTubeBundleType; } IfcTubeBundleType::IfcTubeBundleType(IfcAbstractEntityPtr e) { if (!is(Type::IfcTubeBundleType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTubeBundleType::IfcTubeBundleType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcTubeBundleType::IfcTubeBundleType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcTubeBundleTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTwoDirectionRepeatFactor IfcVector* IfcTwoDirectionRepeatFactor::SecondRepeatFactor() { return reinterpret_pointer_cast(*entity->getArgument(1)); } void IfcTwoDirectionRepeatFactor::setSecondRepeatFactor(IfcVector* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(1,v); } @@ -11664,7 +11664,7 @@ bool IfcTwoDirectionRepeatFactor::is(Type::Enum v) const { return v == Type::Ifc Type::Enum IfcTwoDirectionRepeatFactor::type() const { return Type::IfcTwoDirectionRepeatFactor; } Type::Enum IfcTwoDirectionRepeatFactor::Class() { return Type::IfcTwoDirectionRepeatFactor; } IfcTwoDirectionRepeatFactor::IfcTwoDirectionRepeatFactor(IfcAbstractEntityPtr e) { if (!is(Type::IfcTwoDirectionRepeatFactor)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTwoDirectionRepeatFactor::IfcTwoDirectionRepeatFactor(IfcVector* v1_RepeatFactor, IfcVector* v2_SecondRepeatFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_RepeatFactor); e->setArgument(1,v2_SecondRepeatFactor); entity = e; } +IfcTwoDirectionRepeatFactor::IfcTwoDirectionRepeatFactor(IfcVector* v1_RepeatFactor, IfcVector* v2_SecondRepeatFactor) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_RepeatFactor)); e->setArgument(1,(v2_SecondRepeatFactor)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTypeObject bool IfcTypeObject::hasApplicableOccurrence() { return !entity->getArgument(4)->isNull(); } IfcLabel IfcTypeObject::ApplicableOccurrence() { return *entity->getArgument(4); } @@ -11677,7 +11677,7 @@ bool IfcTypeObject::is(Type::Enum v) const { return v == Type::IfcTypeObject || Type::Enum IfcTypeObject::type() const { return Type::IfcTypeObject; } Type::Enum IfcTypeObject::Class() { return Type::IfcTypeObject; } IfcTypeObject::IfcTypeObject(IfcAbstractEntityPtr e) { if (!is(Type::IfcTypeObject)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTypeObject::IfcTypeObject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); entity = e; } +IfcTypeObject::IfcTypeObject(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcTypeProduct bool IfcTypeProduct::hasRepresentationMaps() { return !entity->getArgument(6)->isNull(); } SHARED_PTR< IfcTemplatedEntityList > IfcTypeProduct::RepresentationMaps() { RETURN_AS_LIST(IfcRepresentationMap,6) } @@ -11689,7 +11689,7 @@ bool IfcTypeProduct::is(Type::Enum v) const { return v == Type::IfcTypeProduct | Type::Enum IfcTypeProduct::type() const { return Type::IfcTypeProduct; } Type::Enum IfcTypeProduct::Class() { return Type::IfcTypeProduct; } IfcTypeProduct::IfcTypeProduct(IfcAbstractEntityPtr e) { if (!is(Type::IfcTypeProduct)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcTypeProduct::IfcTypeProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); entity = e; } +IfcTypeProduct::IfcTypeProduct(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcUShapeProfileDef IfcPositiveLengthMeasure IfcUShapeProfileDef::Depth() { return *entity->getArgument(3); } void IfcUShapeProfileDef::setDepth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -11715,7 +11715,7 @@ bool IfcUShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcUShapePr Type::Enum IfcUShapeProfileDef::type() const { return Type::IfcUShapeProfileDef; } Type::Enum IfcUShapeProfileDef::Class() { return Type::IfcUShapeProfileDef; } IfcUShapeProfileDef::IfcUShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcUShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcUShapeProfileDef::IfcUShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_EdgeRadius, IfcPlaneAngleMeasure v10_FlangeSlope, IfcPositiveLengthMeasure v11_CentreOfGravityInX) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Depth); e->setArgument(4,v5_FlangeWidth); e->setArgument(5,v6_WebThickness); e->setArgument(6,v7_FlangeThickness); e->setArgument(7,v8_FilletRadius); e->setArgument(8,v9_EdgeRadius); e->setArgument(9,v10_FlangeSlope); e->setArgument(10,v11_CentreOfGravityInX); entity = e; } +IfcUShapeProfileDef::IfcUShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_EdgeRadius, optional v10_FlangeSlope, optional v11_CentreOfGravityInX) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Depth)); e->setArgument(4,(v5_FlangeWidth)); e->setArgument(5,(v6_WebThickness)); e->setArgument(6,(v7_FlangeThickness)); if (v8_FilletRadius) { e->setArgument(7,(*v8_FilletRadius)); } else { e->setArgument(7); } ; if (v9_EdgeRadius) { e->setArgument(8,(*v9_EdgeRadius)); } else { e->setArgument(8); } ; if (v10_FlangeSlope) { e->setArgument(9,(*v10_FlangeSlope)); } else { e->setArgument(9); } ; if (v11_CentreOfGravityInX) { e->setArgument(10,(*v11_CentreOfGravityInX)); } else { e->setArgument(10); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcUnitAssignment SHARED_PTR< IfcTemplatedEntityList > IfcUnitAssignment::Units() { RETURN_AS_LIST(IfcAbstractSelect,0) } void IfcUnitAssignment::setUnits(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11723,7 +11723,7 @@ bool IfcUnitAssignment::is(Type::Enum v) const { return v == Type::IfcUnitAssign Type::Enum IfcUnitAssignment::type() const { return Type::IfcUnitAssignment; } Type::Enum IfcUnitAssignment::Class() { return Type::IfcUnitAssignment; } IfcUnitAssignment::IfcUnitAssignment(IfcAbstractEntityPtr e) { if (!is(Type::IfcUnitAssignment)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcUnitAssignment::IfcUnitAssignment(IfcEntities v1_Units) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Units); entity = e; } +IfcUnitAssignment::IfcUnitAssignment(IfcEntities v1_Units) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Units)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcUnitaryEquipmentType IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum IfcUnitaryEquipmentType::PredefinedType() { return IfcUnitaryEquipmentTypeEnum::FromString(*entity->getArgument(9)); } void IfcUnitaryEquipmentType::setPredefinedType(IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcUnitaryEquipmentTypeEnum::ToString(v)); } @@ -11731,7 +11731,7 @@ bool IfcUnitaryEquipmentType::is(Type::Enum v) const { return v == Type::IfcUnit Type::Enum IfcUnitaryEquipmentType::type() const { return Type::IfcUnitaryEquipmentType; } Type::Enum IfcUnitaryEquipmentType::Class() { return Type::IfcUnitaryEquipmentType; } IfcUnitaryEquipmentType::IfcUnitaryEquipmentType(IfcAbstractEntityPtr e) { if (!is(Type::IfcUnitaryEquipmentType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcUnitaryEquipmentType::IfcUnitaryEquipmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcUnitaryEquipmentType::IfcUnitaryEquipmentType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcUnitaryEquipmentTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcValveType IfcValveTypeEnum::IfcValveTypeEnum IfcValveType::PredefinedType() { return IfcValveTypeEnum::FromString(*entity->getArgument(9)); } void IfcValveType::setPredefinedType(IfcValveTypeEnum::IfcValveTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcValveTypeEnum::ToString(v)); } @@ -11739,7 +11739,7 @@ bool IfcValveType::is(Type::Enum v) const { return v == Type::IfcValveType || If Type::Enum IfcValveType::type() const { return Type::IfcValveType; } Type::Enum IfcValveType::Class() { return Type::IfcValveType; } IfcValveType::IfcValveType(IfcAbstractEntityPtr e) { if (!is(Type::IfcValveType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcValveType::IfcValveType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcValveTypeEnum::IfcValveTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcValveType::IfcValveType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcValveTypeEnum::IfcValveTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcValveTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVector IfcDirection* IfcVector::Orientation() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcVector::setOrientation(IfcDirection* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11749,7 +11749,7 @@ bool IfcVector::is(Type::Enum v) const { return v == Type::IfcVector || IfcGeome Type::Enum IfcVector::type() const { return Type::IfcVector; } Type::Enum IfcVector::Class() { return Type::IfcVector; } IfcVector::IfcVector(IfcAbstractEntityPtr e) { if (!is(Type::IfcVector)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVector::IfcVector(IfcDirection* v1_Orientation, IfcLengthMeasure v2_Magnitude) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Orientation); e->setArgument(1,v2_Magnitude); entity = e; } +IfcVector::IfcVector(IfcDirection* v1_Orientation, IfcLengthMeasure v2_Magnitude) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Orientation)); e->setArgument(1,(v2_Magnitude)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVertex bool IfcVertex::is(Type::Enum v) const { return v == Type::IfcVertex || IfcTopologicalRepresentationItem::is(v); } Type::Enum IfcVertex::type() const { return Type::IfcVertex; } @@ -11764,7 +11764,7 @@ bool IfcVertexBasedTextureMap::is(Type::Enum v) const { return v == Type::IfcVer Type::Enum IfcVertexBasedTextureMap::type() const { return Type::IfcVertexBasedTextureMap; } Type::Enum IfcVertexBasedTextureMap::Class() { return Type::IfcVertexBasedTextureMap; } IfcVertexBasedTextureMap::IfcVertexBasedTextureMap(IfcAbstractEntityPtr e) { if (!is(Type::IfcVertexBasedTextureMap)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVertexBasedTextureMap::IfcVertexBasedTextureMap(SHARED_PTR< IfcTemplatedEntityList > v1_TextureVertices, SHARED_PTR< IfcTemplatedEntityList > v2_TexturePoints) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_TextureVertices->generalize()); e->setArgument(1,v2_TexturePoints->generalize()); entity = e; } +IfcVertexBasedTextureMap::IfcVertexBasedTextureMap(SHARED_PTR< IfcTemplatedEntityList > v1_TextureVertices, SHARED_PTR< IfcTemplatedEntityList > v2_TexturePoints) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_TextureVertices)->generalize()); e->setArgument(1,(v2_TexturePoints)->generalize()); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVertexLoop IfcVertex* IfcVertexLoop::LoopVertex() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcVertexLoop::setLoopVertex(IfcVertex* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11772,7 +11772,7 @@ bool IfcVertexLoop::is(Type::Enum v) const { return v == Type::IfcVertexLoop || Type::Enum IfcVertexLoop::type() const { return Type::IfcVertexLoop; } Type::Enum IfcVertexLoop::Class() { return Type::IfcVertexLoop; } IfcVertexLoop::IfcVertexLoop(IfcAbstractEntityPtr e) { if (!is(Type::IfcVertexLoop)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVertexLoop::IfcVertexLoop(IfcVertex* v1_LoopVertex) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_LoopVertex); entity = e; } +IfcVertexLoop::IfcVertexLoop(IfcVertex* v1_LoopVertex) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_LoopVertex)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVertexPoint IfcPoint* IfcVertexPoint::VertexGeometry() { return reinterpret_pointer_cast(*entity->getArgument(0)); } void IfcVertexPoint::setVertexGeometry(IfcPoint* v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v); } @@ -11780,7 +11780,7 @@ bool IfcVertexPoint::is(Type::Enum v) const { return v == Type::IfcVertexPoint | Type::Enum IfcVertexPoint::type() const { return Type::IfcVertexPoint; } Type::Enum IfcVertexPoint::Class() { return Type::IfcVertexPoint; } IfcVertexPoint::IfcVertexPoint(IfcAbstractEntityPtr e) { if (!is(Type::IfcVertexPoint)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVertexPoint::IfcVertexPoint(IfcPoint* v1_VertexGeometry) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_VertexGeometry); entity = e; } +IfcVertexPoint::IfcVertexPoint(IfcPoint* v1_VertexGeometry) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_VertexGeometry)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVibrationIsolatorType IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum IfcVibrationIsolatorType::PredefinedType() { return IfcVibrationIsolatorTypeEnum::FromString(*entity->getArgument(9)); } void IfcVibrationIsolatorType::setPredefinedType(IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcVibrationIsolatorTypeEnum::ToString(v)); } @@ -11788,13 +11788,13 @@ bool IfcVibrationIsolatorType::is(Type::Enum v) const { return v == Type::IfcVib Type::Enum IfcVibrationIsolatorType::type() const { return Type::IfcVibrationIsolatorType; } Type::Enum IfcVibrationIsolatorType::Class() { return Type::IfcVibrationIsolatorType; } IfcVibrationIsolatorType::IfcVibrationIsolatorType(IfcAbstractEntityPtr e) { if (!is(Type::IfcVibrationIsolatorType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVibrationIsolatorType::IfcVibrationIsolatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcVibrationIsolatorType::IfcVibrationIsolatorType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcVibrationIsolatorTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVirtualElement bool IfcVirtualElement::is(Type::Enum v) const { return v == Type::IfcVirtualElement || IfcElement::is(v); } Type::Enum IfcVirtualElement::type() const { return Type::IfcVirtualElement; } Type::Enum IfcVirtualElement::Class() { return Type::IfcVirtualElement; } IfcVirtualElement::IfcVirtualElement(IfcAbstractEntityPtr e) { if (!is(Type::IfcVirtualElement)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVirtualElement::IfcVirtualElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcVirtualElement::IfcVirtualElement(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcVirtualGridIntersection SHARED_PTR< IfcTemplatedEntityList > IfcVirtualGridIntersection::IntersectingAxes() { RETURN_AS_LIST(IfcGridAxis,0) } void IfcVirtualGridIntersection::setIntersectingAxes(SHARED_PTR< IfcTemplatedEntityList > v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(0,v->generalize()); } @@ -11804,19 +11804,19 @@ bool IfcVirtualGridIntersection::is(Type::Enum v) const { return v == Type::IfcV Type::Enum IfcVirtualGridIntersection::type() const { return Type::IfcVirtualGridIntersection; } Type::Enum IfcVirtualGridIntersection::Class() { return Type::IfcVirtualGridIntersection; } IfcVirtualGridIntersection::IfcVirtualGridIntersection(IfcAbstractEntityPtr e) { if (!is(Type::IfcVirtualGridIntersection)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcVirtualGridIntersection::IfcVirtualGridIntersection(SHARED_PTR< IfcTemplatedEntityList > v1_IntersectingAxes, std::vector /*[2:3]*/ v2_OffsetDistances) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_IntersectingAxes->generalize()); e->setArgument(1,v2_OffsetDistances); entity = e; } +IfcVirtualGridIntersection::IfcVirtualGridIntersection(SHARED_PTR< IfcTemplatedEntityList > v1_IntersectingAxes, std::vector /*[2:3]*/ v2_OffsetDistances) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_IntersectingAxes)->generalize()); e->setArgument(1,(v2_OffsetDistances)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWall bool IfcWall::is(Type::Enum v) const { return v == Type::IfcWall || IfcBuildingElement::is(v); } Type::Enum IfcWall::type() const { return Type::IfcWall; } Type::Enum IfcWall::Class() { return Type::IfcWall; } IfcWall::IfcWall(IfcAbstractEntityPtr e) { if (!is(Type::IfcWall)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWall::IfcWall(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcWall::IfcWall(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWallStandardCase bool IfcWallStandardCase::is(Type::Enum v) const { return v == Type::IfcWallStandardCase || IfcWall::is(v); } Type::Enum IfcWallStandardCase::type() const { return Type::IfcWallStandardCase; } Type::Enum IfcWallStandardCase::Class() { return Type::IfcWallStandardCase; } IfcWallStandardCase::IfcWallStandardCase(IfcAbstractEntityPtr e) { if (!is(Type::IfcWallStandardCase)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWallStandardCase::IfcWallStandardCase(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); entity = e; } +IfcWallStandardCase::IfcWallStandardCase(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWallType IfcWallTypeEnum::IfcWallTypeEnum IfcWallType::PredefinedType() { return IfcWallTypeEnum::FromString(*entity->getArgument(9)); } void IfcWallType::setPredefinedType(IfcWallTypeEnum::IfcWallTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcWallTypeEnum::ToString(v)); } @@ -11824,7 +11824,7 @@ bool IfcWallType::is(Type::Enum v) const { return v == Type::IfcWallType || IfcB Type::Enum IfcWallType::type() const { return Type::IfcWallType; } Type::Enum IfcWallType::Class() { return Type::IfcWallType; } IfcWallType::IfcWallType(IfcAbstractEntityPtr e) { if (!is(Type::IfcWallType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWallType::IfcWallType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcWallTypeEnum::IfcWallTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcWallType::IfcWallType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcWallTypeEnum::IfcWallTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcWallTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWasteTerminalType IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum IfcWasteTerminalType::PredefinedType() { return IfcWasteTerminalTypeEnum::FromString(*entity->getArgument(9)); } void IfcWasteTerminalType::setPredefinedType(IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(9,v,IfcWasteTerminalTypeEnum::ToString(v)); } @@ -11832,7 +11832,7 @@ bool IfcWasteTerminalType::is(Type::Enum v) const { return v == Type::IfcWasteTe Type::Enum IfcWasteTerminalType::type() const { return Type::IfcWasteTerminalType; } Type::Enum IfcWasteTerminalType::Class() { return Type::IfcWasteTerminalType; } IfcWasteTerminalType::IfcWasteTerminalType(IfcAbstractEntityPtr e) { if (!is(Type::IfcWasteTerminalType)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWasteTerminalType::IfcWasteTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ElementType); e->setArgument(9,v10_PredefinedType); entity = e; } +IfcWasteTerminalType::IfcWasteTerminalType(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum v10_PredefinedType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_ElementType) { e->setArgument(8,(*v9_ElementType)); } else { e->setArgument(8); } ; e->setArgument(9,v10_PredefinedType,IfcWasteTerminalTypeEnum::ToString(v10_PredefinedType)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWaterProperties bool IfcWaterProperties::hasIsPotable() { return !entity->getArgument(1)->isNull(); } bool IfcWaterProperties::IsPotable() { return *entity->getArgument(1); } @@ -11859,7 +11859,7 @@ bool IfcWaterProperties::is(Type::Enum v) const { return v == Type::IfcWaterProp Type::Enum IfcWaterProperties::type() const { return Type::IfcWaterProperties; } Type::Enum IfcWaterProperties::Class() { return Type::IfcWaterProperties; } IfcWaterProperties::IfcWaterProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcWaterProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWaterProperties::IfcWaterProperties(IfcMaterial* v1_Material, bool v2_IsPotable, IfcIonConcentrationMeasure v3_Hardness, IfcIonConcentrationMeasure v4_AlkalinityConcentration, IfcIonConcentrationMeasure v5_AcidityConcentration, IfcNormalisedRatioMeasure v6_ImpuritiesContent, IfcPHMeasure v7_PHLevel, IfcNormalisedRatioMeasure v8_DissolvedSolidsContent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_Material); e->setArgument(1,v2_IsPotable); e->setArgument(2,v3_Hardness); e->setArgument(3,v4_AlkalinityConcentration); e->setArgument(4,v5_AcidityConcentration); e->setArgument(5,v6_ImpuritiesContent); e->setArgument(6,v7_PHLevel); e->setArgument(7,v8_DissolvedSolidsContent); entity = e; } +IfcWaterProperties::IfcWaterProperties(IfcMaterial* v1_Material, optional v2_IsPotable, optional v3_Hardness, optional v4_AlkalinityConcentration, optional v5_AcidityConcentration, optional v6_ImpuritiesContent, optional v7_PHLevel, optional v8_DissolvedSolidsContent) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_Material)); if (v2_IsPotable) { e->setArgument(1,(*v2_IsPotable)); } else { e->setArgument(1); } ; if (v3_Hardness) { e->setArgument(2,(*v3_Hardness)); } else { e->setArgument(2); } ; if (v4_AlkalinityConcentration) { e->setArgument(3,(*v4_AlkalinityConcentration)); } else { e->setArgument(3); } ; if (v5_AcidityConcentration) { e->setArgument(4,(*v5_AcidityConcentration)); } else { e->setArgument(4); } ; if (v6_ImpuritiesContent) { e->setArgument(5,(*v6_ImpuritiesContent)); } else { e->setArgument(5); } ; if (v7_PHLevel) { e->setArgument(6,(*v7_PHLevel)); } else { e->setArgument(6); } ; if (v8_DissolvedSolidsContent) { e->setArgument(7,(*v8_DissolvedSolidsContent)); } else { e->setArgument(7); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWindow bool IfcWindow::hasOverallHeight() { return !entity->getArgument(8)->isNull(); } IfcPositiveLengthMeasure IfcWindow::OverallHeight() { return *entity->getArgument(8); } @@ -11871,7 +11871,7 @@ bool IfcWindow::is(Type::Enum v) const { return v == Type::IfcWindow || IfcBuild Type::Enum IfcWindow::type() const { return Type::IfcWindow; } Type::Enum IfcWindow::Class() { return Type::IfcWindow; } IfcWindow::IfcWindow(IfcAbstractEntityPtr e) { if (!is(Type::IfcWindow)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWindow::IfcWindow(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_OverallHeight, IfcPositiveLengthMeasure v10_OverallWidth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_ObjectPlacement); e->setArgument(6,v7_Representation); e->setArgument(7,v8_Tag); e->setArgument(8,v9_OverallHeight); e->setArgument(9,v10_OverallWidth); entity = e; } +IfcWindow::IfcWindow(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OverallHeight, optional v10_OverallWidth) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_ObjectPlacement)); e->setArgument(6,(v7_Representation)); if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; if (v9_OverallHeight) { e->setArgument(8,(*v9_OverallHeight)); } else { e->setArgument(8); } ; if (v10_OverallWidth) { e->setArgument(9,(*v10_OverallWidth)); } else { e->setArgument(9); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWindowLiningProperties bool IfcWindowLiningProperties::hasLiningDepth() { return !entity->getArgument(4)->isNull(); } IfcPositiveLengthMeasure IfcWindowLiningProperties::LiningDepth() { return *entity->getArgument(4); } @@ -11904,7 +11904,7 @@ bool IfcWindowLiningProperties::is(Type::Enum v) const { return v == Type::IfcWi Type::Enum IfcWindowLiningProperties::type() const { return Type::IfcWindowLiningProperties; } Type::Enum IfcWindowLiningProperties::Class() { return Type::IfcWindowLiningProperties; } IfcWindowLiningProperties::IfcWindowLiningProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcWindowLiningProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWindowLiningProperties::IfcWindowLiningProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_LiningDepth, IfcPositiveLengthMeasure v6_LiningThickness, IfcPositiveLengthMeasure v7_TransomThickness, IfcPositiveLengthMeasure v8_MullionThickness, IfcNormalisedRatioMeasure v9_FirstTransomOffset, IfcNormalisedRatioMeasure v10_SecondTransomOffset, IfcNormalisedRatioMeasure v11_FirstMullionOffset, IfcNormalisedRatioMeasure v12_SecondMullionOffset, IfcShapeAspect* v13_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_LiningDepth); e->setArgument(5,v6_LiningThickness); e->setArgument(6,v7_TransomThickness); e->setArgument(7,v8_MullionThickness); e->setArgument(8,v9_FirstTransomOffset); e->setArgument(9,v10_SecondTransomOffset); e->setArgument(10,v11_FirstMullionOffset); e->setArgument(11,v12_SecondMullionOffset); e->setArgument(12,v13_ShapeAspectStyle); entity = e; } +IfcWindowLiningProperties::IfcWindowLiningProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_LiningDepth, optional v6_LiningThickness, optional v7_TransomThickness, optional v8_MullionThickness, optional v9_FirstTransomOffset, optional v10_SecondTransomOffset, optional v11_FirstMullionOffset, optional v12_SecondMullionOffset, IfcShapeAspect* v13_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_LiningDepth) { e->setArgument(4,(*v5_LiningDepth)); } else { e->setArgument(4); } ; if (v6_LiningThickness) { e->setArgument(5,(*v6_LiningThickness)); } else { e->setArgument(5); } ; if (v7_TransomThickness) { e->setArgument(6,(*v7_TransomThickness)); } else { e->setArgument(6); } ; if (v8_MullionThickness) { e->setArgument(7,(*v8_MullionThickness)); } else { e->setArgument(7); } ; if (v9_FirstTransomOffset) { e->setArgument(8,(*v9_FirstTransomOffset)); } else { e->setArgument(8); } ; if (v10_SecondTransomOffset) { e->setArgument(9,(*v10_SecondTransomOffset)); } else { e->setArgument(9); } ; if (v11_FirstMullionOffset) { e->setArgument(10,(*v11_FirstMullionOffset)); } else { e->setArgument(10); } ; if (v12_SecondMullionOffset) { e->setArgument(11,(*v12_SecondMullionOffset)); } else { e->setArgument(11); } ; e->setArgument(12,(v13_ShapeAspectStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWindowPanelProperties IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum IfcWindowPanelProperties::OperationType() { return IfcWindowPanelOperationEnum::FromString(*entity->getArgument(4)); } void IfcWindowPanelProperties::setOperationType(IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(4,v,IfcWindowPanelOperationEnum::ToString(v)); } @@ -11923,7 +11923,7 @@ bool IfcWindowPanelProperties::is(Type::Enum v) const { return v == Type::IfcWin Type::Enum IfcWindowPanelProperties::type() const { return Type::IfcWindowPanelProperties; } Type::Enum IfcWindowPanelProperties::Class() { return Type::IfcWindowPanelProperties; } IfcWindowPanelProperties::IfcWindowPanelProperties(IfcAbstractEntityPtr e) { if (!is(Type::IfcWindowPanelProperties)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWindowPanelProperties::IfcWindowPanelProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, IfcPositiveLengthMeasure v7_FrameDepth, IfcPositiveLengthMeasure v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_OperationType); e->setArgument(5,v6_PanelPosition); e->setArgument(6,v7_FrameDepth); e->setArgument(7,v8_FrameThickness); e->setArgument(8,v9_ShapeAspectStyle); entity = e; } +IfcWindowPanelProperties::IfcWindowPanelProperties(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, optional v7_FrameDepth, optional v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; e->setArgument(4,v5_OperationType,IfcWindowPanelOperationEnum::ToString(v5_OperationType)); e->setArgument(5,v6_PanelPosition,IfcWindowPanelPositionEnum::ToString(v6_PanelPosition)); if (v7_FrameDepth) { e->setArgument(6,(*v7_FrameDepth)); } else { e->setArgument(6); } ; if (v8_FrameThickness) { e->setArgument(7,(*v8_FrameThickness)); } else { e->setArgument(7); } ; e->setArgument(8,(v9_ShapeAspectStyle)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWindowStyle IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum IfcWindowStyle::ConstructionType() { return IfcWindowStyleConstructionEnum::FromString(*entity->getArgument(8)); } void IfcWindowStyle::setConstructionType(IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(8,v,IfcWindowStyleConstructionEnum::ToString(v)); } @@ -11937,7 +11937,7 @@ bool IfcWindowStyle::is(Type::Enum v) const { return v == Type::IfcWindowStyle | Type::Enum IfcWindowStyle::type() const { return Type::IfcWindowStyle; } Type::Enum IfcWindowStyle::Class() { return Type::IfcWindowStyle; } IfcWindowStyle::IfcWindowStyle(IfcAbstractEntityPtr e) { if (!is(Type::IfcWindowStyle)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWindowStyle::IfcWindowStyle(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum v9_ConstructionType, IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum v10_OperationType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ApplicableOccurrence); e->setArgument(5,v6_HasPropertySets->generalize()); e->setArgument(6,v7_RepresentationMaps->generalize()); e->setArgument(7,v8_Tag); e->setArgument(8,v9_ConstructionType); e->setArgument(9,v10_OperationType); e->setArgument(10,v11_ParameterTakesPrecedence); e->setArgument(11,v12_Sizeable); entity = e; } +IfcWindowStyle::IfcWindowStyle(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum v9_ConstructionType, IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum v10_OperationType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ApplicableOccurrence) { e->setArgument(4,(*v5_ApplicableOccurrence)); } else { e->setArgument(4); } ; if (v6_HasPropertySets) { e->setArgument(5,(*v6_HasPropertySets)->generalize()); } else { e->setArgument(5); } ; if (v7_RepresentationMaps) { e->setArgument(6,(*v7_RepresentationMaps)->generalize()); } else { e->setArgument(6); } ; if (v8_Tag) { e->setArgument(7,(*v8_Tag)); } else { e->setArgument(7); } ; e->setArgument(8,v9_ConstructionType,IfcWindowStyleConstructionEnum::ToString(v9_ConstructionType)); e->setArgument(9,v10_OperationType,IfcWindowStyleOperationEnum::ToString(v10_OperationType)); e->setArgument(10,(v11_ParameterTakesPrecedence)); e->setArgument(11,(v12_Sizeable)); entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWorkControl IfcIdentifier IfcWorkControl::Identifier() { return *entity->getArgument(5); } void IfcWorkControl::setIdentifier(IfcIdentifier v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(5,v); } @@ -11970,19 +11970,19 @@ bool IfcWorkControl::is(Type::Enum v) const { return v == Type::IfcWorkControl | Type::Enum IfcWorkControl::type() const { return Type::IfcWorkControl; } Type::Enum IfcWorkControl::Class() { return Type::IfcWorkControl; } IfcWorkControl::IfcWorkControl(IfcAbstractEntityPtr e) { if (!is(Type::IfcWorkControl)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWorkControl::IfcWorkControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_Identifier); e->setArgument(6,v7_CreationDate); e->setArgument(7,v8_Creators->generalize()); e->setArgument(8,v9_Purpose); e->setArgument(9,v10_Duration); e->setArgument(10,v11_TotalFloat); e->setArgument(11,v12_StartTime); e->setArgument(12,v13_FinishTime); e->setArgument(13,v14_WorkControlType); e->setArgument(14,v15_UserDefinedControlType); entity = e; } +IfcWorkControl::IfcWorkControl(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Identifier)); e->setArgument(6,(v7_CreationDate)); if (v8_Creators) { e->setArgument(7,(*v8_Creators)->generalize()); } else { e->setArgument(7); } ; if (v9_Purpose) { e->setArgument(8,(*v9_Purpose)); } else { e->setArgument(8); } ; if (v10_Duration) { e->setArgument(9,(*v10_Duration)); } else { e->setArgument(9); } ; if (v11_TotalFloat) { e->setArgument(10,(*v11_TotalFloat)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_StartTime)); if (v13_FinishTime) { e->setArgument(12,(*v13_FinishTime)); } else { e->setArgument(12); } ; if (v14_WorkControlType) { e->setArgument(13,*v14_WorkControlType,IfcWorkControlTypeEnum::ToString(*v14_WorkControlType)); } else { e->setArgument(13); } ; if (v15_UserDefinedControlType) { e->setArgument(14,(*v15_UserDefinedControlType)); } else { e->setArgument(14); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWorkPlan bool IfcWorkPlan::is(Type::Enum v) const { return v == Type::IfcWorkPlan || IfcWorkControl::is(v); } Type::Enum IfcWorkPlan::type() const { return Type::IfcWorkPlan; } Type::Enum IfcWorkPlan::Class() { return Type::IfcWorkPlan; } IfcWorkPlan::IfcWorkPlan(IfcAbstractEntityPtr e) { if (!is(Type::IfcWorkPlan)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWorkPlan::IfcWorkPlan(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_Identifier); e->setArgument(6,v7_CreationDate); e->setArgument(7,v8_Creators->generalize()); e->setArgument(8,v9_Purpose); e->setArgument(9,v10_Duration); e->setArgument(10,v11_TotalFloat); e->setArgument(11,v12_StartTime); e->setArgument(12,v13_FinishTime); e->setArgument(13,v14_WorkControlType); e->setArgument(14,v15_UserDefinedControlType); entity = e; } +IfcWorkPlan::IfcWorkPlan(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Identifier)); e->setArgument(6,(v7_CreationDate)); if (v8_Creators) { e->setArgument(7,(*v8_Creators)->generalize()); } else { e->setArgument(7); } ; if (v9_Purpose) { e->setArgument(8,(*v9_Purpose)); } else { e->setArgument(8); } ; if (v10_Duration) { e->setArgument(9,(*v10_Duration)); } else { e->setArgument(9); } ; if (v11_TotalFloat) { e->setArgument(10,(*v11_TotalFloat)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_StartTime)); if (v13_FinishTime) { e->setArgument(12,(*v13_FinishTime)); } else { e->setArgument(12); } ; if (v14_WorkControlType) { e->setArgument(13,*v14_WorkControlType,IfcWorkControlTypeEnum::ToString(*v14_WorkControlType)); } else { e->setArgument(13); } ; if (v15_UserDefinedControlType) { e->setArgument(14,(*v15_UserDefinedControlType)); } else { e->setArgument(14); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcWorkSchedule bool IfcWorkSchedule::is(Type::Enum v) const { return v == Type::IfcWorkSchedule || IfcWorkControl::is(v); } Type::Enum IfcWorkSchedule::type() const { return Type::IfcWorkSchedule; } Type::Enum IfcWorkSchedule::Class() { return Type::IfcWorkSchedule; } IfcWorkSchedule::IfcWorkSchedule(IfcAbstractEntityPtr e) { if (!is(Type::IfcWorkSchedule)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcWorkSchedule::IfcWorkSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); e->setArgument(5,v6_Identifier); e->setArgument(6,v7_CreationDate); e->setArgument(7,v8_Creators->generalize()); e->setArgument(8,v9_Purpose); e->setArgument(9,v10_Duration); e->setArgument(10,v11_TotalFloat); e->setArgument(11,v12_StartTime); e->setArgument(12,v13_FinishTime); e->setArgument(13,v14_WorkControlType); e->setArgument(14,v15_UserDefinedControlType); entity = e; } +IfcWorkSchedule::IfcWorkSchedule(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; e->setArgument(5,(v6_Identifier)); e->setArgument(6,(v7_CreationDate)); if (v8_Creators) { e->setArgument(7,(*v8_Creators)->generalize()); } else { e->setArgument(7); } ; if (v9_Purpose) { e->setArgument(8,(*v9_Purpose)); } else { e->setArgument(8); } ; if (v10_Duration) { e->setArgument(9,(*v10_Duration)); } else { e->setArgument(9); } ; if (v11_TotalFloat) { e->setArgument(10,(*v11_TotalFloat)); } else { e->setArgument(10); } ; e->setArgument(11,(v12_StartTime)); if (v13_FinishTime) { e->setArgument(12,(*v13_FinishTime)); } else { e->setArgument(12); } ; if (v14_WorkControlType) { e->setArgument(13,*v14_WorkControlType,IfcWorkControlTypeEnum::ToString(*v14_WorkControlType)); } else { e->setArgument(13); } ; if (v15_UserDefinedControlType) { e->setArgument(14,(*v15_UserDefinedControlType)); } else { e->setArgument(14); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcZShapeProfileDef IfcPositiveLengthMeasure IfcZShapeProfileDef::Depth() { return *entity->getArgument(3); } void IfcZShapeProfileDef::setDepth(IfcPositiveLengthMeasure v) { if ( ! entity->isWritable() ) { entity = new IfcWritableEntity(entity); } ((IfcWritableEntity*)entity)->setArgument(3,v); } @@ -12002,10 +12002,10 @@ bool IfcZShapeProfileDef::is(Type::Enum v) const { return v == Type::IfcZShapePr Type::Enum IfcZShapeProfileDef::type() const { return Type::IfcZShapeProfileDef; } Type::Enum IfcZShapeProfileDef::Class() { return Type::IfcZShapeProfileDef; } IfcZShapeProfileDef::IfcZShapeProfileDef(IfcAbstractEntityPtr e) { if (!is(Type::IfcZShapeProfileDef)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcZShapeProfileDef::IfcZShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_EdgeRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType); e->setArgument(1,v2_ProfileName); e->setArgument(2,v3_Position); e->setArgument(3,v4_Depth); e->setArgument(4,v5_FlangeWidth); e->setArgument(5,v6_WebThickness); e->setArgument(6,v7_FlangeThickness); e->setArgument(7,v8_FilletRadius); e->setArgument(8,v9_EdgeRadius); entity = e; } +IfcZShapeProfileDef::IfcZShapeProfileDef(IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_EdgeRadius) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_ProfileType,IfcProfileTypeEnum::ToString(v1_ProfileType)); if (v2_ProfileName) { e->setArgument(1,(*v2_ProfileName)); } else { e->setArgument(1); } ; e->setArgument(2,(v3_Position)); e->setArgument(3,(v4_Depth)); e->setArgument(4,(v5_FlangeWidth)); e->setArgument(5,(v6_WebThickness)); e->setArgument(6,(v7_FlangeThickness)); if (v8_FilletRadius) { e->setArgument(7,(*v8_FilletRadius)); } else { e->setArgument(7); } ; if (v9_EdgeRadius) { e->setArgument(8,(*v9_EdgeRadius)); } else { e->setArgument(8); } ; entity = e; EntityBuffer::Add(this); } // Function implementations for IfcZone bool IfcZone::is(Type::Enum v) const { return v == Type::IfcZone || IfcGroup::is(v); } Type::Enum IfcZone::type() const { return Type::IfcZone; } Type::Enum IfcZone::Class() { return Type::IfcZone; } IfcZone::IfcZone(IfcAbstractEntityPtr e) { if (!is(Type::IfcZone)) throw IfcException("Unable to find find keyword in schema"); entity = e; } -IfcZone::IfcZone(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,v1_GlobalId); e->setArgument(1,v2_OwnerHistory); e->setArgument(2,v3_Name); e->setArgument(3,v4_Description); e->setArgument(4,v5_ObjectType); entity = e; } \ No newline at end of file +IfcZone::IfcZone(IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType) { IfcWritableEntity* e = new IfcWritableEntity(Class()); e->setArgument(0,(v1_GlobalId)); e->setArgument(1,(v2_OwnerHistory)); if (v3_Name) { e->setArgument(2,(*v3_Name)); } else { e->setArgument(2); } ; if (v4_Description) { e->setArgument(3,(*v4_Description)); } else { e->setArgument(3); } ; if (v5_ObjectType) { e->setArgument(4,(*v5_ObjectType)); } else { e->setArgument(4); } ; entity = e; EntityBuffer::Add(this); } \ No newline at end of file diff --git a/src/ifcparse/Ifc2x3.h b/src/ifcparse/Ifc2x3.h index 4a5119b1a9..d4679d539b 100644 --- a/src/ifcparse/Ifc2x3.h +++ b/src/ifcparse/Ifc2x3.h @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -31,12 +31,15 @@ #include #include +#include + #include "../ifcparse/IfcUtil.h" #include "../ifcparse/IfcException.h" #include "../ifcparse/Ifc2x3enum.h" using namespace IfcUtil; using IfcParse::IfcException; +using boost::optional; #define RETURN_INVERSE(T) \ IfcEntities e = entity->getInverse(T::Class()); \ @@ -134,32 +137,32 @@ typedef std::vector /*[1:2]*/ IfcComplexNumber; /// All measure components have the same sign (positive or negative). It is therefore trivial to convert between floating point representation (decimal degrees) and compound representation regardless whether the angle is greater or smaller than zero. Example: /// /// LOCAL -///   a : IfcPlaneAngleMeasure := -50.975864;  (* decimal degrees, -50° 58' 33" 110400 *) -///   b : IfcPlaneAngleMeasure; -///   c : IfcCompoundPlaneAngleMeasure; -///   s : IfcText; +///   a : IfcPlaneAngleMeasure := -50.975864;  (* decimal degrees, -50° 58' 33" 110400 *) +///   b : IfcPlaneAngleMeasure; +///   c : IfcCompoundPlaneAngleMeasure; +///   s : IfcText; /// END_LOCAL; /// /// (* convert from float to compound *) -///   c[1] :=    a;                                           -- -50 -///   c[2] :=   (a - c[1]) * 60;                              -- -58 -///   c[3] :=  ((a - c[1]) * 60 - c[2]) * 60;                 -- -33 -///   c[4] := (((a - c[1]) * 60 - c[2]) * 60 - c[3]) * 1.e6;  -- -110400 +///   c[1] :=    a;                                           -- -50 +///   c[2] :=   (a - c[1]) * 60;                              -- -58 +///   c[3] :=  ((a - c[1]) * 60 - c[2]) * 60;                 -- -33 +///   c[4] := (((a - c[1]) * 60 - c[2]) * 60 - c[3]) * 1.e6;  -- -110400 /// /// (* convert from compound to float *) -///   b := c[1] + c[2]/60. + c[3]/3600. + c[4]/3600.e6;       -- -50.975864 +///   b := c[1] + c[2]/60. + c[3]/3600. + c[4]/3600.e6;       -- -50.975864 /// /// Use in string representations /// /// When a compound plane angle measure is formatted for display or printout, the signs of the fractional components will usually be discarded because, to a human reader, the sign of the first component alone already indicates the sense of the angle: /// /// (* convert from compound to human-readable string *) -///   s := FORMAT(c[1], '+##')     + "000000B0" -///      + FORMAT(ABS(c[2]), '##') + '''' -///      + FORMAT(ABS(c[3]), '##') + '"' -///      + FORMAT(ABS(c[4]), '##');  -- -50° 58' 33" 110400 +///   s := FORMAT(c[1], '+##')     + "000000B0" +///      + FORMAT(ABS(c[2]), '##') + '''' +///      + FORMAT(ABS(c[3]), '##') + '"' +///      + FORMAT(ABS(c[4]), '##');  -- -50° 58' 33" 110400 /// -/// Another often encountered display format of latitudes and longitudes is to omit the signs and print N, S, E, W indicators instead, for example, 50°58'33"S. When stored as IfcCompoundPlaneAngleMeasure however, a compound plane angle measure is always signed, with same sign of all components. +/// Another often encountered display format of latitudes and longitudes is to omit the signs and print N, S, E, W indicators instead, for example, 50°58'33"S. When stored as IfcCompoundPlaneAngleMeasure however, a compound plane angle measure is always signed, with same sign of all components. typedef std::vector /*[3:4]*/ IfcCompoundPlaneAngleMeasure; /// Definition from ISO/CD 10303-41:1992: Is the value of a physical quantity as defined by an application context. /// Type: REAL @@ -280,9 +283,9 @@ typedef double IfcEnergyMeasure; /// /// Fonts with Oblique, Slanted or Incline in their names will typically be labeled 'oblique' in the user agents font database. Fonts with Italic, Cursive or Kursiv in their names will typically be labeled 'italic'. /// -/// NOTE  Corresponding CSS1 definitions is font-style. +/// NOTE  Corresponding CSS1 definitions is font-style. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef std::string IfcFontStyle; /// Definition from CSS1 (W3C Recommendation): The font-style property selects between normal and small-caps within a font family. Values are: /// @@ -293,9 +296,9 @@ typedef std::string IfcFontStyle; /// /// A value of 'normal' selects a font that is not a small-caps font, 'small-caps' selects a small-caps font. It is acceptable (but not required) in CSS1 if the small-caps font is a created by taking a normal font and replacing the lower case letters by scaled uppercase characters. As a last resort, uppercase letters will be used as replacement for a small-caps font. /// -/// NOTE  Corresponding CSS1 definitions is font-variant. +/// NOTE  Corresponding CSS1 definitions is font-variant. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef std::string IfcFontVariant; /// Definition from CSS1 (W3C Recommendation): The 'font-weight' property selects the weight of the font. The values '100' to '900' form an ordered sequence, where each number indicates a weight that is at least as dark as its predecessor. The keyword 'normal' is synonymous with '400', and 'bold' is synonymous with '700'. Keywords other than 'normal' and 'bold' have been shown to be often confused with font names and a numerical scale was therefore chosen for the 9-value list. Values are: /// @@ -317,9 +320,9 @@ typedef std::string IfcFontVariant; /// Available faces | Assignments | Filling the holes----------------------+---------------+-------------------"Example1 Regular" | 400 | 100, 200, 300"Example1 Medium" | 500 |"Example1 Bold" | 700 | 600"Example1 Heavy" | 800 | 900 /// Available faces | Assignments | Filling the holes----------------------+---------------+-------------------"Example2 Book" | 400 | 100, 200, 300"Example2 Medium" | 500 |"Example2 Bold" | 700 | 600 "Example2 Heavy" | 800 |"Example2 Black" | 900 |"Example2 ExtraBlack" | (none) | /// -/// NOTE  Corresponding CSS1 definitions is font-weight. +/// NOTE  Corresponding CSS1 definitions is font-weight. /// -/// HISTORY  New type in IFC2x2 Addendum 2. +/// HISTORY  New type in IFC2x2 Addendum 2. typedef std::string IfcFontWeight; /// IfcForceMeasure is a measure of the force. /// Usually measured in Newton (N, kg m/s2). @@ -335,15 +338,15 @@ typedef double IfcForceMeasure; typedef double IfcFrequencyMeasure; /// An IfcGloballyUniqueId holds an encoded string identifier that is used to uniquely identify an IFC object. An IfcGloballyUniqueId is a Globally Unique Identifier (GUID) which is an auto-generated 128-bit number. Since this identifier is required for all IFC object instances, it is desirable to compress it to reduce overhead. The encoding of the base 64 character set is shown below: /// -///            1         2         3         4         5         6 -///  0123456789012345678901234567890123456789012345678901234567890123 +///            1         2         3         4         5         6 +///  0123456789012345678901234567890123456789012345678901234567890123 /// "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$"; /// /// The resulting string is a fixed 22 character length string to be exchanged within the IFC exchange file structure. /// /// Refer to the BuildingSMART website (www.buildingsmart-tech.org) for more information and sample encoding algorithms. /// -/// HISTORY  New type in IFC R1.5.1. +/// HISTORY  New type in IFC R1.5.1. typedef std::string IfcGloballyUniqueId; /// IfcHeatFluxDensityMeasure is a measure of the density of heat flux within a body. /// Usually measured in W/m2 (J/s m2). @@ -684,13 +687,13 @@ typedef double IfcPlaneAngleMeasure; typedef double IfcPowerMeasure; /// IfcPresentableText is a text string used to capture the content of a text literal for the purpose of presentation. The IfcPresentableText can include multiple lines of text, for which the line feed character LF, 0x0A, should be used to separate lines. /// -/// NOTE  The non printable characters are converted within the standard exchange format ISO 10303-21 (STEP physical file format), commonly the \X\09 represents the TAB, and \X\0A the LF character. +/// NOTE  The non printable characters are converted within the standard exchange format ISO 10303-21 (STEP physical file format), commonly the \X\09 represents the TAB, and \X\0A the LF character. /// -/// NOTE  The IfcPresentableText is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. +/// NOTE  The IfcPresentableText is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. /// -/// NOTE  Corresponding ISO 10303 name: presentable_text. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: presentable_text. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. /// -/// HISTORY  New type in IFC2x2. +/// HISTORY  New type in IFC2x2. typedef std::string IfcPresentableText; /// IfcPressureMeasure is a measure of the quantity of a medium acting on a unit area. /// Usually measured in Pascals (Pa, N/m2). @@ -823,16 +826,16 @@ typedef double IfcTemperatureGradientMeasure; /// /// Note that while IfcText is not formally restricted in length, the size of a string in ISO 10303-21:2002 conforming exchange files must not exceed 32767 octets after encoding and escaping. typedef std::string IfcText; -/// Definition from CSS1 (W3C Recommendation): This property describes how text is aligned within the element. The actual justification algorithm used is user agent and human language dependent. If 'justify' is not supported, the user agent will supply a replacement. Typically, this will be 'left' for western languages. Values are: +/// Definition from CSS1 (W3C Recommendation): This property describes how text is aligned within the element. The actual justification algorithm used is user agent and human language dependent. If 'justify' is not supported, the user agent will supply a replacement. Typically, this will be 'left' for western languages. Values are: /// /// left /// right /// center /// justify /// -/// NOTE  Corresponding CSS1 definition is text-align. +/// NOTE  Corresponding CSS1 definition is text-align. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef std::string IfcTextAlignment; /// Definition from CSS1 (W3C Recommendation): This property describes decorations that are added to the text of an element. A value of 'blink' causes the text to blink.. Values are: /// @@ -844,9 +847,9 @@ typedef std::string IfcTextAlignment; /// /// User agents must recognize the keyword 'blink', but are not required to support the blink effect. /// -/// NOTE  Corresponding CSS1 definition is text-decoration. +/// NOTE  Corresponding CSS1 definition is text-decoration. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef std::string IfcTextDecoration; /// Definition from CSS1 (W3C Recommendation): The value is a font family name and/or generic family name. Values are: /// @@ -862,9 +865,9 @@ typedef std::string IfcTextDecoration; /// /// It is encouraged to offer a generic font family as a last alternative. /// -/// NOTE  Corresponding CSS1 definitions are font-family. +/// NOTE  Corresponding CSS1 definitions are font-family. /// -/// HISTORY  New type in IFC2x2 Addendum 2. +/// HISTORY  New type in IFC2x2 Addendum 2. /// /// IFC2x2 Addendum 2 CHANGE: The IfcFontFamily has been added. typedef std::string IfcTextFontName; @@ -875,9 +878,9 @@ typedef std::string IfcTextFontName; /// lowercase: lowercases all letters of the element /// none /// -/// NOTE  Corresponding CSS1 definition is text-transform. +/// NOTE  Corresponding CSS1 definition is text-transform. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef std::string IfcTextTransformation; /// IfcThermalAdmittanceMeasure is the measure of the ability of a surface to smooth out temperature variations. /// Usually measured in Watt / m2 Kelvin. @@ -1019,19 +1022,19 @@ typedef IfcSchemaEntity IfcAxis2Placement; typedef IfcSchemaEntity IfcBooleanOperand; /// The character style select allows for a selection of character styles for text. Currently only text color and background color is selectable. /// -/// NOTE  Corresponding ISO 10303 name: character_style_select. Please refer to ISO/IS +/// NOTE  Corresponding ISO 10303 name: character_style_select. Please refer to ISO/IS /// 10303-46:1994, p. 89 for the final definition of the formal standard. /// -/// HISTORY  New type in IFC2x2. +/// HISTORY  New type in IFC2x2. /// -/// IFC2x3 CHANGE  The SELECT item IfcTextStyleForDefinedFont replaces the old IfcColour. +/// IFC2x3 CHANGE  The SELECT item IfcTextStyleForDefinedFont replaces the old IfcColour. typedef IfcSchemaEntity IfcCharacterStyleSelect; typedef IfcSchemaEntity IfcClassificationNotationSelect; /// Definition from ISO/CD 10303-46:1992: The colour entity defines a basic appearance of elements which shall be visualized in a picture. /// -/// NOTE  Corresponding STEP name: colour. It has been made into a SELECT type in IFC to avoid multiple inheritance for pre defined colour. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. +/// NOTE  Corresponding STEP name: colour. It has been made into a SELECT type in IFC to avoid multiple inheritance for pre defined colour. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. typedef IfcSchemaEntity IfcColour; /// The IfcColourOrFactor enables the selection of either a RGB colour value or a scalar factor value for the use as values of the reflectance components. /// @@ -1058,7 +1061,7 @@ typedef IfcSchemaEntity IfcCurveFontOrScaledCurveFontSelect; /// IfcCurve /// IfcEdgeCurve /// -/// HISTORY  New select type in IFC2x Edition 3. +/// HISTORY  New select type in IFC2x Edition 3. typedef IfcSchemaEntity IfcCurveOrEdgeCurve; /// Definition from ISO/CD 10303-46:1992: The curve style font select is a selection of a curve style font or a predefined curve style font. /// @@ -1181,7 +1184,7 @@ typedef IfcSchemaEntity IfcFillStyleSelect; typedef IfcSchemaEntity IfcGeometricSetSelect; /// The IfcHatchLineDistanceSelect is a selection between different ways to determine the distance and potentially start point of hatch lines, either by an offset distance length measure or by a vector. /// -/// HISTORY  New type in IFC2x3. +/// HISTORY  New type in IFC2x3. typedef IfcSchemaEntity IfcHatchLineDistanceSelect; /// Definition from ISO/CD 10303-46:1992: The layered things type selects those things, which can be grouped in layers. /// @@ -1277,16 +1280,16 @@ typedef IfcSchemaEntity IfcMeasureValue; typedef IfcSchemaEntity IfcMetricValueSelect; /// IfcObjectReferenceSelect is a select type, that holds a list of resource level entities that can be used as properties within a property set. /// -/// HISTORY  New select type in IFC Release 2.0. +/// HISTORY  New select type in IFC Release 2.0. typedef IfcSchemaEntity IfcObjectReferenceSelect; typedef IfcSchemaEntity IfcOrientationSelect; -/// IfcPointOrVertexPoint provides the option to either select a geometric point (IfcPoint and subtypes) within a geometric model, or a vertex with associated point coordinates (IfcVertexPoint) within a topological model. +/// IfcPointOrVertexPoint provides the option to either select a geometric point (IfcPoint and subtypes) within a geometric model, or a vertex with associated point coordinates (IfcVertexPoint) within a topological model. /// SELECT /// /// IfcPoint, /// IfcVertexPoint /// -/// HISTORY  New select type in IFC2x Edition 3. +/// HISTORY  New select type in IFC2x Edition 3. typedef IfcSchemaEntity IfcPointOrVertexPoint; /// Definition from ISO/CD 10303-46:1992: The presentation style select is a selection of one of many kinds of styles, a different one for each kind of geometric representation item to be styled. /// @@ -1297,7 +1300,7 @@ typedef IfcSchemaEntity IfcPointOrVertexPoint; /// /// IFC2x4 CHANGE The select type has been deprecated. typedef IfcSchemaEntity IfcPresentationStyleSelect; -/// Definition from ISO/CD 10303-42:1992 This type collects together, for reference when constructing more complex models, the subtypes which have the characteristics of a shell. A shell is a connected object of fixed dimensionality d = 0; 1; or 2, typically used to bound a region. The domain of a shell, if present, includes its bounds and 0 £ X < Â¥. +/// Definition from ISO/CD 10303-42:1992 This type collects together, for reference when constructing more complex models, the subtypes which have the characteristics of a shell. A shell is a connected object of fixed dimensionality d = 0; 1; or 2, typically used to bound a region. The domain of a shell, if present, includes its bounds and 0 £ X < ¥. /// /// A shell of dimensionality 0 is represented by a graph consisting of a single vertex. The vertex shall not have any associated edges. /// A shell of dimensionality 1 is represented by a connected graph of dimensionality 1. @@ -1305,9 +1308,9 @@ typedef IfcSchemaEntity IfcPresentationStyleSelect; /// /// Shells of dimensionality 0 and 1 are not part of the current IFC release. /// -/// NOTE  Corresponding ISO 10303 type: shell. Please refer to ISO/IS 10303-42:1994, p. 127 for the final definition of the formal standard. Only the select items closed_shell (IfcClosedShell) and open_shell (IfcOpenShell) have been incorporated in the current IFC release. +/// NOTE  Corresponding ISO 10303 type: shell. Please refer to ISO/IS 10303-42:1994, p. 127 for the final definition of the formal standard. Only the select items closed_shell (IfcClosedShell) and open_shell (IfcOpenShell) have been incorporated in the current IFC release. /// -/// HISTORY  New type in IFC2x. +/// HISTORY  New type in IFC2x. typedef IfcSchemaEntity IfcShell; /// IfcSimpleValue is a select type for selecting between simple value types. /// @@ -1333,14 +1336,14 @@ typedef IfcSchemaEntity IfcSimpleValue; /// /// Definition from ISO: The size (or width) measure value is given in the global drawing length units. /// -/// NOTE  global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. +/// NOTE  global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. /// -/// NOTE  Corresponding ISO 10303 name: size_select. Please refer to ISO/IS 10303-46:1994 for the final +/// NOTE  Corresponding ISO 10303 name: size_select. Please refer to ISO/IS 10303-46:1994 for the final /// definition of the formal standard. /// -/// HISTORY  New type in IFC2x2. +/// HISTORY  New type in IFC2x2. /// -/// IFC2x3 CHANGE  The SELECT item IfcMeasureWithUnit has been removed from the IfcSizeSelect, the IfcRatioMeasure and IfcDescriptiveMeasure has been added. +/// IFC2x3 CHANGE  The SELECT item IfcMeasureWithUnit has been removed from the IfcSizeSelect, the IfcRatioMeasure and IfcDescriptiveMeasure has been added. typedef IfcSchemaEntity IfcSizeSelect; /// The IfcSpecularHighlightSelect defines the selectable types of value for specular highlight sharpness. /// @@ -1371,7 +1374,7 @@ typedef IfcSchemaEntity IfcStructuralActivityAssignmentSelect; /// IfcFaceSurface /// IfcFaceBasedSurfaceModel (a connected face set, representing a faceted surface as an approximation of a non planar, non rectangular bounded surface) /// -/// HISTORY  New select type in IFC2x3. +/// HISTORY  New select type in IFC2x3. typedef IfcSchemaEntity IfcSurfaceOrFaceSurface; /// Definition from ISO/CD 10303-46:1992: The surface style element select is a selection of the different surface styles to use in the presentation of the side of a surface. /// @@ -1393,11 +1396,11 @@ typedef IfcSchemaEntity IfcSurfaceStyleElementSelect; typedef IfcSchemaEntity IfcSymbolStyleSelect; /// IfcTextFontSelect allows for either a predefined text font, a text font model or an externally defined text font to be used to describe the font of a text literal. The definition of the text font model is based on W3C TR Cascading Style Sheet Version 1, whereas the definition of predefined text font is based on ISO 10303. /// -/// NOTE  IfcTextFontSelect is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. Corresponding ISO 10303 name: font_select. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. +/// NOTE  IfcTextFontSelect is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. Corresponding ISO 10303 name: font_select. Please refer to ISO/IS 10303-46:1994, p. 133 for the final definition of the formal standard. /// -/// HISTORY  New type in IFC2x2. +/// HISTORY  New type in IFC2x2. /// -/// IFC2x3 CHANGE  The select type has been renamed from IfcFontSelect. +/// IFC2x3 CHANGE  The select type has been renamed from IfcFontSelect. typedef IfcSchemaEntity IfcTextFontSelect; /// The text style select allows for the selection of styles to be assigned to an annotated text. The text style determines the text model that affect the visual presentation of characters, spaces, words, and paragraphs. There are two choices: /// @@ -1405,9 +1408,9 @@ typedef IfcSchemaEntity IfcTextFontSelect; /// IfcTextStyleTextModel for definitions from Cascading /// Style Sheets, level 1, W3C Recommendation 17 Dec 1996, revised 11 Jan 1999, CSS1, for all true type text. The use of the CSS1 definitions is the preferred way to represent text styles. /// -/// HISTORY  New type in IFC2x2. +/// HISTORY  New type in IFC2x2. /// -/// IFC2x3 CHANGE  The items within the IfcTextStyleSelect have changed to IfcTextStyleWithBoxCharacteristics and IfcTextStyleTextModel. +/// IFC2x3 CHANGE  The items within the IfcTextStyleSelect have changed to IfcTextStyleWithBoxCharacteristics and IfcTextStyleTextModel. typedef IfcSchemaEntity IfcTextStyleSelect; /// Definition from ISO/CD 10303-42:1992: This select type identifies the two possible ways of trimming a parametric curve; by a Cartesian point on the curve, or by a REAL number defining a parameter value within the parametric range of the curve. /// @@ -1461,7 +1464,7 @@ typedef IfcSchemaEntity IfcVectorOrDirection; /// bottom-middle /// bottom-right /// -/// NOTE  The top-left is the default value. +/// NOTE  The top-left is the default value. /// /// Figure 298 illustrates alignment values. /// @@ -1471,9 +1474,9 @@ typedef IfcSchemaEntity IfcVectorOrDirection; /// /// Figure 299 — Box alignment examples /// -/// HISTORY  New type in IFC2x2 Addendum2. +/// HISTORY  New type in IFC2x2 Addendum2. /// -/// IFC2x3 CHANGE  The IfcBoxAlignment has been added. +/// IFC2x3 CHANGE  The IfcBoxAlignment has been added. typedef IfcLabel IfcBoxAlignment; /// IfcNormalisedRatioMeasure is a dimensionless measure to express ratio values ranging from 0.0 to 1.0. /// @@ -1709,9 +1712,9 @@ namespace IfcBSplineCurveForm { /// hyperbolic arc: An arc of finite length of one branch of a hyperbola represented by a B-spline curve. /// unspecified: A B-spline curve for which no particular form is specified. /// -/// NOTE  Corresponding ISO 10303 type: b_spline_curve_form. Please refer to ISO/IS 10303-42:1994, p. 15 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 type: b_spline_curve_form. Please refer to ISO/IS 10303-42:1994, p. 15 for the final definition of the formal standard. /// -/// HISTORY  New type in Release IFC2x2. +/// HISTORY  New type in Release IFC2x2. typedef enum {IfcBSplineCurveForm_POLYLINE_FORM, IfcBSplineCurveForm_CIRCULAR_ARC, IfcBSplineCurveForm_ELLIPTIC_ARC, IfcBSplineCurveForm_PARABOLIC_ARC, IfcBSplineCurveForm_HYPERBOLIC_ARC, IfcBSplineCurveForm_UNSPECIFIED} IfcBSplineCurveForm; const char* ToString(IfcBSplineCurveForm v); IfcBSplineCurveForm FromString(const std::string& s); @@ -1732,7 +1735,7 @@ namespace IfcBeamTypeEnum { /// exterior of the building. Can be used to support joists or slab /// elements on its interior side. /// -/// NOTE  They are also referred to as "spandrel +/// NOTE  They are also referred to as "spandrel /// panels", which are parts of a facade and sometimes have /// supporting consoles for floor slabs /// integrated. @@ -1742,7 +1745,7 @@ namespace IfcBeamTypeEnum { /// often of T-shape (therefore the English name), but may have other /// shapes as well, e.g. an L-Shape or an Inverted-T-Shape. /// -/// NOTE  In order to distinguish beams by shape, +/// NOTE  In order to distinguish beams by shape, /// the assigned IfcProfileDef subtypes provide the shape type /// and, if using a subtype of /// IfcParameterizedProfileDef, also the shape @@ -1751,9 +1754,9 @@ namespace IfcBeamTypeEnum { /// USERDEFINED: User-defined linear beam element. /// NOTDEFINED: Undefined linear beam element /// -/// HISTORY  New Enumeration +/// HISTORY  New Enumeration /// in Release IFC2x Edition 2. -/// IFC2x4 CHANGE  The enumerators +/// IFC2x4 CHANGE  The enumerators /// HOLLOWCORE and SPANDREL have been /// added. typedef enum {IfcBeamType_BEAM, IfcBeamType_JOIST, IfcBeamType_LINTEL, IfcBeamType_T_BEAM, IfcBeamType_USERDEFINED, IfcBeamType_NOTDEFINED} IfcBeamTypeEnum; @@ -1837,8 +1840,8 @@ namespace IfcBuildingElementProxyTypeEnum { /// Definition from IAI: This enumeration defines the /// available generic types for IfcBuildingElementProxyType. /// -/// HISTORY  New enumeration -/// in Release IFC2x Edition 3. +/// HISTORY  New enumeration +/// in Release IFC2x Edition 3. /// /// Enumeration /// @@ -2200,9 +2203,9 @@ namespace IfcCurtainWallTypeEnum { /// Definition from IAI: Enumeration defining /// the valid types of curtain wall that can be predefined using the /// enumeration values. -/// HISTORY  -/// New Enumeration in Release IFC2x Edition 3 -/// NOTE  Currently there +/// HISTORY  +/// New Enumeration in Release IFC2x Edition 3 +/// NOTE  Currently there /// are no specific enumerators defined, the IfcCurtainWallTypeEnum /// has /// been added for future extensions. @@ -2393,10 +2396,10 @@ namespace IfcDoorPanelOperationEnum { /// NOTE Enumerator added in IFC2x4. /// /// UserDefined -///   +///   /// /// NotDefined -///   +///   /// /// Figure 164 — Door operations /// @@ -2437,7 +2440,7 @@ IfcDoorStyleConstructionEnum FromString(const std::string& s); } namespace IfcDoorStyleOperationEnum { /// This enumeration defines the basic ways to describe how doors operate as shown in Figure 167. -/// HISTORY  New Enumeration in Release IFC2x. +/// HISTORY  New Enumeration in Release IFC2x. /// /// Enumerator /// Description @@ -2471,7 +2474,7 @@ namespace IfcDoorStyleOperationEnum { /// left the other opens (swings) to the right. /// Note: Direction of swing (whether /// in or out) -/// is determined at the IfcDoor.  +/// is determined at the IfcDoor.  /// /// DOUBLE_SWING_LEFT /// @@ -2481,7 +2484,7 @@ namespace IfcDoorStyleOperationEnum { /// double acting door. /// Note: Direction of main swing /// (whether in or -/// out) is determined at the IfcDoor.  +/// out) is determined at the IfcDoor.  /// /// DOUBLE_SWING_RIGHT /// @@ -2578,14 +2581,14 @@ namespace IfcDoorStyleOperationEnum { /// USERDEFINED /// User defined /// operation type -///   +///   /// /// NOTDEFINED /// A door with a /// not defined operation type is /// considered as a door with a lining, but no panels. It is thereby always /// open. -///   +///   /// /// Figure 167 — Door style operations /// @@ -2602,7 +2605,7 @@ namespace IfcDoorStyleOperationEnum { /// positive y-axis, determined by the ObjectPlacement /// at IfcDoor /// The location of the panel relative to the wall thickness is -/// defined by the ObjectPlacement at IfcDoor, +/// defined by the ObjectPlacement at IfcDoor, /// and the IfcDoorLiningProperties.LiningOffset /// parameter. typedef enum {IfcDoorStyleOperation_SINGLE_SWING_LEFT, IfcDoorStyleOperation_SINGLE_SWING_RIGHT, IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING, IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT, IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT, IfcDoorStyleOperation_DOUBLE_SWING_LEFT, IfcDoorStyleOperation_DOUBLE_SWING_RIGHT, IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING, IfcDoorStyleOperation_SLIDING_TO_LEFT, IfcDoorStyleOperation_SLIDING_TO_RIGHT, IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING, IfcDoorStyleOperation_FOLDING_TO_LEFT, IfcDoorStyleOperation_FOLDING_TO_RIGHT, IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING, IfcDoorStyleOperation_REVOLVING, IfcDoorStyleOperation_ROLLINGUP, IfcDoorStyleOperation_USERDEFINED, IfcDoorStyleOperation_NOTDEFINED} IfcDoorStyleOperationEnum; @@ -2994,7 +2997,7 @@ namespace IfcFootingTypeEnum { /// Definition from IAI: Enumeration defining the generic footing type. /// /// HISTORY New type in IFC Release 2x2 -/// IFC 2x4 change:  Item CAISSON_FOUNDATION added +/// IFC 2x4 change:  Item CAISSON_FOUNDATION added /// /// ENUMERATION /// @@ -3063,7 +3066,7 @@ IfcGeometricProjectionEnum FromString(const std::string& s); namespace IfcGlobalOrLocalEnum { /// This enumeration type defines if the local object coordinate system or the global world coordinate system for the project is used to describe the measure values of entities which have a reference to this type. /// -/// NOTE  The world coordinate system is given by the IfcGeometricRepresentationContext.WorldCoordinateSystem +/// NOTE  The world coordinate system is given by the IfcGeometricRepresentationContext.WorldCoordinateSystem /// and is unique within the project. The local (or object) coordinate system is given by IfcProduct.ObjectPlacement and is used by all IfcRepresentation's within the IfcProduct.Representation. /// /// HISTORY: New type in IFC2x2. @@ -3235,9 +3238,9 @@ IfcLayerSetDirectionEnum FromString(const std::string& s); namespace IfcLightDistributionCurveEnum { /// There are three kinds of light distribution curves, according to Standard CEN TC 169, prEN 13032-1, CIE 121: /// -/// TYPE_A: Type A is basically not used. For completeness the Type A Photometry equals the Type B rotated 90° around the Z-Axis counter clockwise. -/// TYPE_B: Type B is sometimes used for floodlights. The B-Plane System has a horizontal axis. B-Angles are valid from -180° to +180° with B 0° at the bottom and B180°/B-180° at the top, β-Angles are valid from -90° to +90°. (See Figure 302.) -/// TYPE_C: Type C is the recommended standard system. The C-Plane system equals a globe with a vertical axis. C-Angles are valid from 0° to 360°, γ-Angles are valid from 0° (south pole) to 180° (north pole). (See Figure 302.) +/// TYPE_A: Type A is basically not used. For completeness the Type A Photometry equals the Type B rotated 90° around the Z-Axis counter clockwise. +/// TYPE_B: Type B is sometimes used for floodlights. The B-Plane System has a horizontal axis. B-Angles are valid from -180° to +180° with B 0° at the bottom and B180°/B-180° at the top, β-Angles are valid from -90° to +90°. (See Figure 302.) +/// TYPE_C: Type C is the recommended standard system. The C-Plane system equals a globe with a vertical axis. C-Angles are valid from 0° to 360°, γ-Angles are valid from 0° (south pole) to 180° (north pole). (See Figure 302.) /// /// v2_UserDefinedRole, optional v3_Description); typedef IfcActorRole* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5452,14 +5455,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAddress (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAddress (IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose); + IfcAddress (optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose); typedef IfcAddress* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcApplication holds the information about an IFC compliant application developed by an application developer. The IfcApplication utilizes a short identifying name as provided by the application developer. /// -/// HISTORY  New entity in IFC R1.5. +/// HISTORY  New entity in IFC R1.5. class IfcApplication : public IfcBaseEntity { public: /// Name of the application developer, being requested to be member of the IAI. @@ -5552,16 +5555,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAppliedValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAppliedValue (IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate); + IfcAppliedValue (optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate); typedef IfcAppliedValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcAppliedValueRelationship is a relationship class that enables cost values to be aggregated together as components of another cost value. /// -/// HISTORY  New Entity in Release IFC2.0. +/// HISTORY  New Entity in Release IFC2.0. /// -/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, attribute order changed. +/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, attribute order changed. /// /// Use definitions /// Dependency relationships can exist between applied values on the basis that one particular value may be determined by operations on one or more other values. This is captured through the IfcAppliedValueRelationship entity. In this relationship, one instance of IfcAppliedValue acts as the principal (IfcAppliedValueRelationship.ComponentOf) whose value may be @@ -5608,7 +5611,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAppliedValueRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAppliedValueRelationship (IfcAppliedValue* v1_ComponentOfTotal, SHARED_PTR< IfcTemplatedEntityList > v2_Components, IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum v3_ArithmeticOperator, IfcLabel v4_Name, IfcText v5_Description); + IfcAppliedValueRelationship (IfcAppliedValue* v1_ComponentOfTotal, SHARED_PTR< IfcTemplatedEntityList > v2_Components, IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum v3_ArithmeticOperator, optional v4_Name, optional v5_Description); typedef IfcAppliedValueRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5617,7 +5620,7 @@ public: /// /// HISTORY New Entity in IFC Release 2.0 /// -/// IFC2x Edition 4 CHANGE  Attributes Identifier and Name made optional, where rule added to require at least one of them being asserted. Inverse attributes ApprovedObjects, ApprovedResources and HasExternalReferences added. Inverse attribute Properties deleted (more general relationship via inverse ApprovedResources to be used instead). +/// IFC2x Edition 4 CHANGE  Attributes Identifier and Name made optional, where rule added to require at least one of them being asserted. Inverse attributes ApprovedObjects, ApprovedResources and HasExternalReferences added. Inverse attribute Properties deleted (more general relationship via inverse ApprovedResources to be used instead). class IfcApproval : public IfcBaseEntity { public: /// Whether the optional attribute Description is defined for this IfcApproval @@ -5656,7 +5659,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcApproval (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcApproval (IfcText v1_Description, IfcDateTimeSelect v2_ApprovalDateTime, IfcLabel v3_ApprovalStatus, IfcLabel v4_ApprovalLevel, IfcText v5_ApprovalQualifier, IfcLabel v6_Name, IfcIdentifier v7_Identifier); + IfcApproval (optional v1_Description, IfcDateTimeSelect v2_ApprovalDateTime, optional v3_ApprovalStatus, optional v4_ApprovalLevel, optional v5_ApprovalQualifier, IfcLabel v6_Name, IfcIdentifier v7_Identifier); typedef IfcApproval* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5707,7 +5710,7 @@ public: /// /// HISTORY: New entity in Release IFC2x2. /// -/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, order of attributes changed. +/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, order of attributes changed. class IfcApprovalRelationship : public IfcBaseEntity { public: IfcApproval* RelatedApproval(); @@ -5729,7 +5732,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcApprovalRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcApprovalRelationship (IfcApproval* v1_RelatedApproval, IfcApproval* v2_RelatingApproval, IfcText v3_Description, IfcLabel v4_Name); + IfcApprovalRelationship (IfcApproval* v1_RelatedApproval, IfcApproval* v2_RelatingApproval, optional v3_Description, IfcLabel v4_Name); typedef IfcApprovalRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5764,7 +5767,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoundaryCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoundaryCondition (IfcLabel v1_Name); + IfcBoundaryCondition (optional v1_Name); typedef IfcBoundaryCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5816,7 +5819,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoundaryEdgeCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoundaryEdgeCondition (IfcLabel v1_Name, IfcModulusOfLinearSubgradeReactionMeasure v2_LinearStiffnessByLengthX, IfcModulusOfLinearSubgradeReactionMeasure v3_LinearStiffnessByLengthY, IfcModulusOfLinearSubgradeReactionMeasure v4_LinearStiffnessByLengthZ, IfcModulusOfRotationalSubgradeReactionMeasure v5_RotationalStiffnessByLengthX, IfcModulusOfRotationalSubgradeReactionMeasure v6_RotationalStiffnessByLengthY, IfcModulusOfRotationalSubgradeReactionMeasure v7_RotationalStiffnessByLengthZ); + IfcBoundaryEdgeCondition (optional v1_Name, optional v2_LinearStiffnessByLengthX, optional v3_LinearStiffnessByLengthY, optional v4_LinearStiffnessByLengthZ, optional v5_RotationalStiffnessByLengthX, optional v6_RotationalStiffnessByLengthY, optional v7_RotationalStiffnessByLengthZ); typedef IfcBoundaryEdgeCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5853,7 +5856,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoundaryFaceCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoundaryFaceCondition (IfcLabel v1_Name, IfcModulusOfSubgradeReactionMeasure v2_LinearStiffnessByAreaX, IfcModulusOfSubgradeReactionMeasure v3_LinearStiffnessByAreaY, IfcModulusOfSubgradeReactionMeasure v4_LinearStiffnessByAreaZ); + IfcBoundaryFaceCondition (optional v1_Name, optional v2_LinearStiffnessByAreaX, optional v3_LinearStiffnessByAreaY, optional v4_LinearStiffnessByAreaZ); typedef IfcBoundaryFaceCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5905,7 +5908,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoundaryNodeCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoundaryNodeCondition (IfcLabel v1_Name, IfcLinearStiffnessMeasure v2_LinearStiffnessX, IfcLinearStiffnessMeasure v3_LinearStiffnessY, IfcLinearStiffnessMeasure v4_LinearStiffnessZ, IfcRotationalStiffnessMeasure v5_RotationalStiffnessX, IfcRotationalStiffnessMeasure v6_RotationalStiffnessY, IfcRotationalStiffnessMeasure v7_RotationalStiffnessZ); + IfcBoundaryNodeCondition (optional v1_Name, optional v2_LinearStiffnessX, optional v3_LinearStiffnessY, optional v4_LinearStiffnessZ, optional v5_RotationalStiffnessX, optional v6_RotationalStiffnessY, optional v7_RotationalStiffnessZ); typedef IfcBoundaryNodeCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -5934,7 +5937,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoundaryNodeConditionWarping (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoundaryNodeConditionWarping (IfcLabel v1_Name, IfcLinearStiffnessMeasure v2_LinearStiffnessX, IfcLinearStiffnessMeasure v3_LinearStiffnessY, IfcLinearStiffnessMeasure v4_LinearStiffnessZ, IfcRotationalStiffnessMeasure v5_RotationalStiffnessX, IfcRotationalStiffnessMeasure v6_RotationalStiffnessY, IfcRotationalStiffnessMeasure v7_RotationalStiffnessZ, IfcWarpingMomentMeasure v8_WarpingStiffness); + IfcBoundaryNodeConditionWarping (optional v1_Name, optional v2_LinearStiffnessX, optional v3_LinearStiffnessY, optional v4_LinearStiffnessZ, optional v5_RotationalStiffnessX, optional v6_RotationalStiffnessY, optional v7_RotationalStiffnessZ, optional v8_WarpingStiffness); typedef IfcBoundaryNodeConditionWarping* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6097,17 +6100,17 @@ public: }; /// Definition from ISO/CD 10303-46:1992: The colour specification entity contains a direct colour definition. Colour component values refer directly to a specific colour space. /// -/// NOTE  Corresponding ISO 10303 name: colour_specification. It has been made into an abstract entity in IFC. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: colour_specification. It has been made into an abstract entity in IFC. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcColourSpecification : public IfcBaseEntity { public: /// Whether the optional attribute Name is defined for this IfcColourSpecification bool hasName(); /// Optional name given to a particular colour specification in addition to the colour components (like the RGB values). /// - /// NOTE  Examples are the names of a industry colour classification, such as RAL. - /// IFC2x Edition 3 CHANGE  Attribute added. + /// NOTE  Examples are the names of a industry colour classification, such as RAL. + /// IFC2x Edition 3 CHANGE  Attribute added. IfcLabel Name(); void setName(IfcLabel v); virtual unsigned int getArgumentCount() const { return 1; } @@ -6118,14 +6121,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcColourSpecification (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcColourSpecification (IfcLabel v1_Name); + IfcColourSpecification (optional v1_Name); typedef IfcColourSpecification* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcConnectionGeometry is used to describe the geometric and topological constraints that facilitate the physical connection of two objects. It is envisioned as a control that applies to the element connection relationships. /// -/// NOTE  The element connection relationship normally provides for a logical connection information, by referencing the relating and related elements. If in addition an IfcConnectionGeometry is provided, physical connection information is given by specifying exactly where at the relating and related element the element connection occurs. +/// NOTE  The element connection relationship normally provides for a logical connection information, by referencing the relating and related elements. If in addition an IfcConnectionGeometry is provided, physical connection information is given by specifying exactly where at the relating and related element the element connection occurs. /// Using the eccentricity subtypes, the connection can also be described when there is a physical distance (or eccentricity) between the connection elements. /// /// The IfcConnectionGeometry allows for the provision of connection constraints between geometric and topological elements, the following connection geometry/topology types are in scope: @@ -6134,9 +6137,9 @@ public: /// curve | edge curve, /// surface | face surface, /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. /// -/// IFC2x Edition 3 CHANGE  The definition of the subtypes has been enhanced by allowing either geometric representation items (point | curve | surface) or topological representation items with associated geometry (vertex point | edge curve | face  surface). +/// IFC2x Edition 3 CHANGE  The definition of the subtypes has been enhanced by allowing either geometric representation items (point | curve | surface) or topological representation items with associated geometry (vertex point | edge curve | face  surface). class IfcConnectionGeometry : public IfcBaseEntity { public: virtual unsigned int getArgumentCount() const { return 0; } @@ -6156,13 +6159,13 @@ public: /// physical connection of two objects at a point (here IfcCartesianPoint) or at an vertex with point /// coordinates associated. It is envisioned as a control that applies to the element connection relationships. /// -/// EXAMPLE  The connection relationship between two path based elements (like a column and a beam) has a geometric constraint which describes the connection points by a PointOnRelatingElement for the column and a PointOnRelatedElement for the beam. The exact usage of the IfcConnectionPointGeometry is further defined in the geometry use sections of the elements that use it. +/// EXAMPLE  The connection relationship between two path based elements (like a column and a beam) has a geometric constraint which describes the connection points by a PointOnRelatingElement for the column and a PointOnRelatedElement for the beam. The exact usage of the IfcConnectionPointGeometry is further defined in the geometry use sections of the elements that use it. /// -/// NOTE  If the point connection has an offset (if the two points or vertex points at the relating and related element do not physically match), the subtype IfcConnectionPointEccentricity shall be used. +/// NOTE  If the point connection has an offset (if the two points or vertex points at the relating and related element do not physically match), the subtype IfcConnectionPointEccentricity shall be used. /// -/// HISTORY  New entity in IFC Release 1.5, has been renamed from IfcPointConnectionGeometry in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5, has been renamed from IfcPointConnectionGeometry in IFC Release 2x. /// -/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcVertexPoint, is +/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcVertexPoint, is /// enabled by using the IfcPointOrVertexPoint. /// /// Geometry use definitions @@ -6185,7 +6188,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConnectionPointGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConnectionPointGeometry (IfcPointOrVertexPoint v1_PointOnRelatingElement, IfcPointOrVertexPoint v2_PointOnRelatedElement); + IfcConnectionPointGeometry (IfcPointOrVertexPoint v1_PointOnRelatingElement, optional v2_PointOnRelatedElement); typedef IfcConnectionPointGeometry* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6208,19 +6211,19 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConnectionPortGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConnectionPortGeometry (IfcAxis2Placement v1_LocationAtRelatingElement, IfcAxis2Placement v2_LocationAtRelatedElement, IfcProfileDef* v3_ProfileOfPort); + IfcConnectionPortGeometry (IfcAxis2Placement v1_LocationAtRelatingElement, optional v2_LocationAtRelatedElement, IfcProfileDef* v3_ProfileOfPort); typedef IfcConnectionPortGeometry* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcConnectionSurfaceGeometry is used to describe the geometric constraints that facilitate the physical connection of two objects at a surface or at a face with surface geometry associated. It is envisioned as a control that applies to the element connection relationships. /// -/// HISTORY  New entity in IFC Release 2x. +/// HISTORY  New entity in IFC Release 2x. /// -/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcFaceSurface, is enabled by using the IfcSurfaceOrFaceSurface. +/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcFaceSurface, is enabled by using the IfcSurfaceOrFaceSurface. /// /// Geometry use definitions -/// The IfcSurface (or the IfcFaceSurface with an associated IfcSurface) at the SurfaceOnRelatingElement attribute defines the surface where the basic geometry items of the connected elements connects. The surface geometry and coordinates are provided within the local coordinate system of the RelatingElement, as specified at the IfcRelConnectsSubtype that utilizes the IfcConnectionSurfaceGeometry. Optionally, the same surface geometry and coordinates can also be provided within the local coordinate system of the RelatedElement by using the SurfaceOnRelatedElement attribute. +/// The IfcSurface (or the IfcFaceSurface with an associated IfcSurface) at the SurfaceOnRelatingElement attribute defines the surface where the basic geometry items of the connected elements connects. The surface geometry and coordinates are provided within the local coordinate system of the RelatingElement, as specified at the IfcRelConnectsSubtype that utilizes the IfcConnectionSurfaceGeometry. Optionally, the same surface geometry and coordinates can also be provided within the local coordinate system of the RelatedElement by using the SurfaceOnRelatedElement attribute. class IfcConnectionSurfaceGeometry : public IfcConnectionGeometry { public: /// Surface at which related object is aligned at the relating element, given in the LCS of the relating element. @@ -6239,7 +6242,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConnectionSurfaceGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConnectionSurfaceGeometry (IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, IfcSurfaceOrFaceSurface v2_SurfaceOnRelatedElement); + IfcConnectionSurfaceGeometry (IfcSurfaceOrFaceSurface v1_SurfaceOnRelatingElement, optional v2_SurfaceOnRelatedElement); typedef IfcConnectionSurfaceGeometry* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6306,16 +6309,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstraint (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstraint (IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade); + IfcConstraint (IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade); typedef IfcConstraint* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcConstraintAggregationRelationship is an objectified relationship that enables instances of IfcConstraint subtypes to be aggregated together logically. /// -/// HISTORY  New Entity in IFC Release 2.0. Modified in IFC2x2. +/// HISTORY  New Entity in IFC Release 2.0. Modified in IFC2x2. /// -/// IFC2x4 CHANGE  Subtyped from IfcConstraintRelationship +/// IFC2x4 CHANGE  Subtyped from IfcConstraintRelationship /// /// Use definition /// IfcConstraintAggregationRelationship allows the aggregation link between subtypes of constraint to be logically defined (AND, OR, XOR, NOTAND, NOTOR). In this way, whereby an object or property can have multiple constraints assigned, and the logical linkage between them can be specified. Thus linked constraints might show as for example (> X AND < Y) which is useful for an allowed range, or bounded value, for example, (A OR B OR C) which is valuable for an enumerated property where a selection is constrained to be (at least) one of A, B or C. @@ -6347,7 +6350,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstraintAggregationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstraintAggregationRelationship (IfcLabel v1_Name, IfcText v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints, IfcLogicalOperatorEnum::IfcLogicalOperatorEnum v5_LogicalAggregator); + IfcConstraintAggregationRelationship (optional v1_Name, optional v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints, IfcLogicalOperatorEnum::IfcLogicalOperatorEnum v5_LogicalAggregator); typedef IfcConstraintAggregationRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6377,9 +6380,9 @@ public: /// EXAMPLE: Certain constraints related to an IfcWall may be derived from a constraint related to an /// IfcSpace. /// -/// HISTORY  New entity in Release IFC2x2 (Addendum 1). +/// HISTORY  New entity in Release IFC2x2 (Addendum 1). /// -/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship. +/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship. class IfcConstraintRelationship : public IfcBaseEntity { public: /// Whether the optional attribute Name is defined for this IfcConstraintRelationship @@ -6404,7 +6407,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstraintRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstraintRelationship (IfcLabel v1_Name, IfcText v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints); + IfcConstraintRelationship (optional v1_Name, optional v2_Description, IfcConstraint* v3_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedConstraints); typedef IfcConstraintRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6427,7 +6430,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCoordinatedUniversalTimeOffset (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCoordinatedUniversalTimeOffset (IfcHourInDay v1_HourOffset, IfcMinuteInHour v2_MinuteOffset, IfcAheadOrBehind::IfcAheadOrBehind v3_Sense); + IfcCoordinatedUniversalTimeOffset (IfcHourInDay v1_HourOffset, optional v2_MinuteOffset, IfcAheadOrBehind::IfcAheadOrBehind v3_Sense); typedef IfcCoordinatedUniversalTimeOffset* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6496,7 +6499,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCostValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCostValue (IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate, IfcLabel v7_CostType, IfcText v8_Condition); + IfcCostValue (optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate, IfcLabel v7_CostType, optional v8_Condition); typedef IfcCostValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6505,9 +6508,9 @@ public: /// that applies between two designated currencies at a particular time /// and as published by a particular source. /// -/// HISTORY  New Entity in IFC2x2. +/// HISTORY  New Entity in IFC2x2. /// -/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, attribute order changed. +/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, attribute order changed. /// /// Use definitions /// An IfcCurrencyRelationship is used where there may be a need to reference an IfcCostValue in one currency to an IfcCostValue in another currency. It takes account of fact that currency exchange rates may vary by requiring the recording the date and time of the currency exchange rate used and the source that publishes the rate. There may be many sources and there are different strategies for currency conversion (spot rate, forward buying of currency at a fixed rate). @@ -6569,7 +6572,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCurveStyleFont (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCurveStyleFont (IfcLabel v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_PatternList); + IfcCurveStyleFont (optional v1_Name, SHARED_PTR< IfcTemplatedEntityList > v2_PatternList); typedef IfcCurveStyleFont* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6578,13 +6581,13 @@ public: /// /// The IfcCurveStyleFontAndScaling allows for the reuse of the same curve style definition in several sizes. The definition of the CurveFontScale is the scaling of a base curve style pattern to be used as a new or derived curve style pattern. /// -/// NOTE  The CurveFontScale should not be mixed up with the target plot scale. +/// NOTE  The CurveFontScale should not be mixed up with the target plot scale. /// -/// An example for IfcCurveStyleFontAndScaling is the sizing of a basic curve style dash pattern 'dash' (visible 0.01m, invisible 0.005m) into 'dash large' with CurveFontScale = 2 (resulting in visible 0.02m, invisible 0.01m), and into 'dash small' with CurveFontScale = 0.5 (resulting in visible 0.005m, invisible 0.0025m). +/// An example for IfcCurveStyleFontAndScaling is the sizing of a basic curve style dash pattern 'dash' (visible 0.01m, invisible 0.005m) into 'dash large' with CurveFontScale = 2 (resulting in visible 0.02m, invisible 0.01m), and into 'dash small' with CurveFontScale = 0.5 (resulting in visible 0.005m, invisible 0.0025m). /// -/// NOTE  Corresponding ISO 10303 name: curve_style_font_and_scaling. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: curve_style_font_and_scaling. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcCurveStyleFontAndScaling : public IfcBaseEntity { public: /// Whether the optional attribute Name is defined for this IfcCurveStyleFontAndScaling @@ -6606,7 +6609,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCurveStyleFontAndScaling (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCurveStyleFontAndScaling (IfcLabel v1_Name, IfcCurveStyleFontSelect v2_CurveFont, IfcPositiveRatioMeasure v3_CurveFontScaling); + IfcCurveStyleFontAndScaling (optional v1_Name, IfcCurveStyleFontSelect v2_CurveFont, IfcPositiveRatioMeasure v3_CurveFontScaling); typedef IfcCurveStyleFontAndScaling* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6620,9 +6623,9 @@ class IfcCurveStyleFontPattern : public IfcBaseEntity { public: /// The length of the visible segment in the pattern definition. /// - /// NOTE  For a visible segment representing a point, the value 0. should be assigned. + /// NOTE  For a visible segment representing a point, the value 0. should be assigned. /// - /// IFC2x Edition 3 CHANGE  The datatype has been changed to IfcLengthMeasure with upward compatibility for file-based exchange. + /// IFC2x Edition 3 CHANGE  The datatype has been changed to IfcLengthMeasure with upward compatibility for file-based exchange. IfcLengthMeasure VisibleSegmentLength(); void setVisibleSegmentLength(IfcLengthMeasure v); /// The length of the invisible segment in the pattern definition. @@ -6687,7 +6690,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDerivedUnit (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDerivedUnit (SHARED_PTR< IfcTemplatedEntityList > v1_Elements, IfcDerivedUnitEnum::IfcDerivedUnitEnum v2_UnitType, IfcLabel v3_UserDefinedType); + IfcDerivedUnit (SHARED_PTR< IfcTemplatedEntityList > v1_Elements, IfcDerivedUnitEnum::IfcDerivedUnitEnum v2_UnitType, optional v3_UserDefinedType); typedef IfcDerivedUnit* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6803,7 +6806,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDocumentElectronicFormat (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDocumentElectronicFormat (IfcLabel v1_FileExtension, IfcLabel v2_MimeContentType, IfcLabel v3_MimeSubtype); + IfcDocumentElectronicFormat (optional v1_FileExtension, optional v2_MimeContentType, optional v3_MimeSubtype); typedef IfcDocumentElectronicFormat* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6915,16 +6918,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDocumentInformation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDocumentInformation (IfcIdentifier v1_DocumentId, IfcLabel v2_Name, IfcText v3_Description, SHARED_PTR< IfcTemplatedEntityList > v4_DocumentReferences, IfcText v5_Purpose, IfcText v6_IntendedUse, IfcText v7_Scope, IfcLabel v8_Revision, IfcActorSelect v9_DocumentOwner, IfcEntities v10_Editors, IfcDateAndTime* v11_CreationTime, IfcDateAndTime* v12_LastRevisionTime, IfcDocumentElectronicFormat* v13_ElectronicFormat, IfcCalendarDate* v14_ValidFrom, IfcCalendarDate* v15_ValidUntil, IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum v16_Confidentiality, IfcDocumentStatusEnum::IfcDocumentStatusEnum v17_Status); + IfcDocumentInformation (IfcIdentifier v1_DocumentId, IfcLabel v2_Name, optional v3_Description, optional >> v4_DocumentReferences, optional v5_Purpose, optional v6_IntendedUse, optional v7_Scope, optional v8_Revision, optional v9_DocumentOwner, optional v10_Editors, IfcDateAndTime* v11_CreationTime, IfcDateAndTime* v12_LastRevisionTime, IfcDocumentElectronicFormat* v13_ElectronicFormat, IfcCalendarDate* v14_ValidFrom, IfcCalendarDate* v15_ValidUntil, optional v16_Confidentiality, optional v17_Status); typedef IfcDocumentInformation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcDocumentInformationRelationship is a relationship class that enables a document to have the ability to reference other documents. /// -/// HISTORY  New entity in Release IFC2x. +/// HISTORY  New entity in Release IFC2x. /// -/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, order of attributes changed. +/// IFC2x4 CHANGE  Subtyped from IfcResourceLevelRelationship, order of attributes changed. /// /// Use definitions /// This class can be used to describe relationships in which one document may reference one or more other sub documents or where a document is used as a replacement for another document (but where both the original and the replacing document need to be retained). @@ -6949,7 +6952,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDocumentInformationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDocumentInformationRelationship (IfcDocumentInformation* v1_RelatingDocument, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedDocuments, IfcLabel v3_RelationshipType); + IfcDocumentInformationRelationship (IfcDocumentInformation* v1_RelatingDocument, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedDocuments, optional v3_RelationshipType); typedef IfcDocumentInformationRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6976,7 +6979,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDraughtingCalloutRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDraughtingCalloutRelationship (IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); + IfcDraughtingCalloutRelationship (optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); typedef IfcDraughtingCalloutRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -6999,7 +7002,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEnvironmentalImpactValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEnvironmentalImpactValue (IfcLabel v1_Name, IfcText v2_Description, IfcAppliedValueSelect v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, IfcDateTimeSelect v5_ApplicableDate, IfcDateTimeSelect v6_FixedUntilDate, IfcLabel v7_ImpactType, IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum v8_Category, IfcLabel v9_UserDefinedCategory); + IfcEnvironmentalImpactValue (optional v1_Name, optional v2_Description, optional v3_AppliedValue, IfcMeasureWithUnit* v4_UnitBasis, optional v5_ApplicableDate, optional v6_FixedUntilDate, IfcLabel v7_ImpactType, IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum v8_Category, optional v9_UserDefinedCategory); typedef IfcEnvironmentalImpactValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7019,7 +7022,7 @@ public: bool hasLocation(); /// Location, where the external source (classification, document or library) can be accessed by electronic means. The electronic location is provided as an URI, and would normally be given as an URL location string. /// - /// IFC2x4 CHANGE  The data type has been changed from IfcLabel to IfcURIReference. + /// IFC2x4 CHANGE  The data type has been changed from IfcLabel to IfcURIReference. IfcLabel Location(); void setLocation(IfcLabel v); /// Whether the optional attribute ItemReference is defined for this IfcExternalReference @@ -7039,7 +7042,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcExternalReference (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcExternalReference (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcExternalReference (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcExternalReference* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7062,18 +7065,18 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcExternallyDefinedHatchStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcExternallyDefinedHatchStyle (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcExternallyDefinedHatchStyle (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcExternallyDefinedHatchStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcExternallyDefinedSurfaceStyle is a definition of a surface style through referencing an external source, such as a material library for rendering information. /// -/// NOTE  In order to achieve expected results, the externally defined surface style should normally only be given in addition to an explicitly defined surface styles. +/// NOTE  In order to achieve expected results, the externally defined surface style should normally only be given in addition to an explicitly defined surface styles. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The spelling has been corrected from IfcExternallyDefinedSufaceStyle with no upward compatibility. +/// IFC2x3 CHANGE  The spelling has been corrected from IfcExternallyDefinedSufaceStyle with no upward compatibility. class IfcExternallyDefinedSurfaceStyle : public IfcExternalReference { public: virtual unsigned int getArgumentCount() const { return 3; } @@ -7084,7 +7087,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcExternallyDefinedSurfaceStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcExternallyDefinedSurfaceStyle (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcExternallyDefinedSurfaceStyle (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcExternallyDefinedSurfaceStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7108,18 +7111,18 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcExternallyDefinedSymbol (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcExternallyDefinedSymbol (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcExternallyDefinedSymbol (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcExternallyDefinedSymbol* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: The externally defined text font is an external reference to a text font /// -/// NOTE  Restrictions of the font source and font names to be used may be exposed by implementation guidelines. +/// NOTE  Restrictions of the font source and font names to be used may be exposed by implementation guidelines. /// -/// NOTE  Corresponding ISO 10303 name: externally_defined_text_font. Please refer to ISO/IS 10303-46:1994, p. 137 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: externally_defined_text_font. Please refer to ISO/IS 10303-46:1994, p. 137 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcExternallyDefinedTextFont : public IfcExternalReference { public: virtual unsigned int getArgumentCount() const { return 3; } @@ -7130,14 +7133,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcExternallyDefinedTextFont (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcExternallyDefinedTextFont (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcExternallyDefinedTextFont (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcExternallyDefinedTextFont* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An individual axis, IfcGridAxis, is defined in the context of a design grid. The axis definition is based on a curve of dimensionality 2. The grid axis is positioned within the XY plane of the position coordinate system defined by the IfcDesignGrid. /// -/// HISTORY  New entity in IFC Release 1.0 +/// HISTORY  New entity in IFC Release 1.0 /// /// Geometry use definitions /// The standard geometric representation of IfcGridAxis is @@ -7183,7 +7186,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGridAxis (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGridAxis (IfcLabel v1_AxisTag, IfcCurve* v2_AxisCurve, IfcBoolean v3_SameSense); + IfcGridAxis (optional v1_AxisTag, IfcCurve* v2_AxisCurve, IfcBoolean v3_SameSense); typedef IfcGridAxis* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7214,12 +7217,12 @@ public: }; /// An IfcLibraryInformation describes a library where a library is a structured store of information, normally organized in a manner which allows information lookup through an index or reference value. IfcLibraryInformation provides the library Name and optional Version, VersionDate and Publisher attributes. A Location may be added for electronic access to the library. /// -/// NOTE  The complete definition of the information in an external library is out of scope in this IFC release. +/// NOTE  The complete definition of the information in an external library is out of scope in this IFC release. /// -/// HISTORY  New +/// HISTORY  New /// Entity in IFC2x. /// -/// IFC2x4 CHANGE  Location attribute added, HasLibraryReferences inverse attribute added (previous LibraryReference changed to inverse). +/// IFC2x4 CHANGE  Location attribute added, HasLibraryReferences inverse attribute added (previous LibraryReference changed to inverse). class IfcLibraryInformation : public IfcBaseEntity { public: /// The name which is used to identify the library. @@ -7239,7 +7242,7 @@ public: bool hasVersionDate(); /// Date of the referenced version of the library. /// - /// IFC2x4 CHANGE  The data type has been changed to IfcDate, the date string according to ISO8601. + /// IFC2x4 CHANGE  The data type has been changed to IfcDate, the date string according to ISO8601. IfcCalendarDate* VersionDate(); void setVersionDate(IfcCalendarDate* v); /// Whether the optional attribute LibraryReference is defined for this IfcLibraryInformation @@ -7254,7 +7257,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLibraryInformation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLibraryInformation (IfcLabel v1_Name, IfcLabel v2_Version, IfcOrganization* v3_Publisher, IfcCalendarDate* v4_VersionDate, SHARED_PTR< IfcTemplatedEntityList > v5_LibraryReference); + IfcLibraryInformation (IfcLabel v1_Name, optional v2_Version, IfcOrganization* v3_Publisher, IfcCalendarDate* v4_VersionDate, optional >> v5_LibraryReference); typedef IfcLibraryInformation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7263,9 +7266,9 @@ public: /// /// The ifcLibraryReference additionally provides the capability to handle multilingual library entries. The Language attribute then holds the language tag for the language used by the strings kept in the Name and the Description attribute. /// -/// HISTORY  New Entity in IFC2.0. +/// HISTORY  New Entity in IFC2.0. /// -/// IFC2x4 CHANGE  Description and Language attribute added; ReferencedLibrary attribute added (reversing previous ReferenceIntoLibrary inverse relationship). +/// IFC2x4 CHANGE  Description and Language attribute added; ReferencedLibrary attribute added (reversing previous ReferenceIntoLibrary inverse relationship). class IfcLibraryReference : public IfcExternalReference { public: virtual unsigned int getArgumentCount() const { return 3; } @@ -7277,7 +7280,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLibraryReference (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLibraryReference (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcLibraryReference (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcLibraryReference* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7375,7 +7378,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLocalTime (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLocalTime (IfcHourInDay v1_HourComponent, IfcMinuteInHour v2_MinuteComponent, IfcSecondInMinute v3_SecondComponent, IfcCoordinatedUniversalTimeOffset* v4_Zone, IfcDaylightSavingHour v5_DaylightSavingOffset); + IfcLocalTime (IfcHourInDay v1_HourComponent, optional v2_MinuteComponent, optional v3_SecondComponent, IfcCoordinatedUniversalTimeOffset* v4_Zone, optional v5_DaylightSavingOffset); typedef IfcLocalTime* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7404,9 +7407,9 @@ public: /// styles, hatching definitions or surface coloring/rendering /// information to a material. /// -/// HISTORYÿNew entity in IFC2x4 +/// HISTORYÿNew entity in IFC2x4 /// -/// IFC2x4 CHANGEÿ The attributes Description and Category have been added. +/// IFC2x4 CHANGEÿ The attributes Description and Category have been added. class IfcMaterial : public IfcBaseEntity { public: /// Name of the material. @@ -7433,9 +7436,9 @@ public: }; /// IfcMaterialClassificationRelationship is a relationship assigning classifications to materials. /// -/// HISTORYÿ New entity in IFC2x. +/// HISTORYÿ New entity in IFC2x. /// -/// IFC2x4 CHANGEÿ The entity IfcMaterialClassificationRelationship is deprecated since IFC2x4 and shall no longer be used. Use IfcExternalReferenceRelationship instead. +/// IFC2x4 CHANGEÿ The entity IfcMaterialClassificationRelationship is deprecated since IFC2x4 and shall no longer be used. Use IfcExternalReferenceRelationship instead. class IfcMaterialClassificationRelationship : public IfcBaseEntity { public: /// The material classifications identifying the type of material. @@ -7459,7 +7462,7 @@ public: }; /// IfcMaterialLayer is a single and identifiable part of an element which is constructed of a number of layers (one or more). Each IfcMaterialLayer has a constant thickness and is located relative to the referencing IfcMaterialLayerSet along the MlsBase. /// -/// EXAMPLE  A cavity wall with brick masonry used with +/// EXAMPLE  A cavity wall with brick masonry used with /// an air gap in between would be modeled using three /// IfcMaterialLayer's: [1] Brick, [2] Air gap, [3] Brick. The /// inner layer "Brick" would have a Name = "Brick", an @@ -7472,14 +7475,14 @@ public: /// that might be different to the IfcMaterial name /// referenced. /// -/// EXAMPLE  The IfcMaterialLayer name of an +/// EXAMPLE  The IfcMaterialLayer name of an /// insulation layer can be "Insulation", whereas the /// IfcMaterial name is "polystyrene insulating /// boards". /// -/// HISTORY  New entity in IFC 1.5 +/// HISTORY  New entity in IFC 1.5 /// -/// IFC2x4 CHANGE  The attributes Name, Description, Category, Priority have been added at the end of attribute list. Data type of LayerThickness relaxed to IfcNonNegativeLengthMeasure. +/// IFC2x4 CHANGE  The attributes Name, Description, Category, Priority have been added at the end of attribute list. Data type of LayerThickness relaxed to IfcNonNegativeLengthMeasure. class IfcMaterialLayer : public IfcBaseEntity { public: /// Whether the optional attribute Material is defined for this IfcMaterialLayer @@ -7489,9 +7492,9 @@ public: void setMaterial(IfcMaterial* v); /// The thickness of the material layer. The dimension is measured along the positive MlsDirection as specified in IfcMaterialLayerSet (that is mapped to AXIS-2, as specified in IfcMaterialLayerSetUsage for element occurrences supporting IfcMaterialLayerSetUsage. /// - /// NOTE  The attribute value can be 0. for material thicknesses very close to zero, such as for a membrane. Material layers with thickess 0. shall not be rendered in the geometric representation. + /// NOTE  The attribute value can be 0. for material thicknesses very close to zero, such as for a membrane. Material layers with thickess 0. shall not be rendered in the geometric representation. /// - /// IFC2x4 CHANGE  The attribute datatype has been changed to IfcNonNegativeLengthMeasure allowing for 0. as thickness. + /// IFC2x4 CHANGE  The attribute datatype has been changed to IfcNonNegativeLengthMeasure allowing for 0. as thickness. IfcPositiveLengthMeasure LayerThickness(); void setLayerThickness(IfcPositiveLengthMeasure v); /// Whether the optional attribute IsVentilated is defined for this IfcMaterialLayer @@ -7512,7 +7515,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMaterialLayer (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMaterialLayer (IfcMaterial* v1_Material, IfcPositiveLengthMeasure v2_LayerThickness, IfcLogical v3_IsVentilated); + IfcMaterialLayer (IfcMaterial* v1_Material, IfcPositiveLengthMeasure v2_LayerThickness, optional v3_IsVentilated); typedef IfcMaterialLayer* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7536,9 +7539,9 @@ public: /// gap is identified, using the IsVentilated flag at /// IfcMaterialLayer. /// -/// HISTORY  New entity in IFC 1.0 +/// HISTORY  New entity in IFC 1.0 /// -/// IFC2x4 CHANGE  Subtyped from IfcMaterialDefinition, the attribute Description +/// IFC2x4 CHANGE  Subtyped from IfcMaterialDefinition, the attribute Description /// has been added at the end of attribute list. /// /// Attribute use definition @@ -7568,7 +7571,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMaterialLayerSet (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMaterialLayerSet (SHARED_PTR< IfcTemplatedEntityList > v1_MaterialLayers, IfcLabel v2_LayerSetName); + IfcMaterialLayerSet (SHARED_PTR< IfcTemplatedEntityList > v1_MaterialLayers, optional v2_LayerSetName); typedef IfcMaterialLayerSet* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7581,7 +7584,7 @@ public: /// the element geometry). The rules to ensure the compatibility /// depend on the type of the building element. /// -/// EXAMPLE ÿFor a cavity brick wall with shape +/// EXAMPLE ÿFor a cavity brick wall with shape /// representation SweptSolid, the /// IfcMaterialLayerSet.TotalThickness shall be equal to the /// wall thickness. Also the OffsetFromReferenceLine shall @@ -7591,7 +7594,7 @@ public: /// RepresentationIdentifier="Axis" and /// RepresentationIdentifier="Body". /// -/// NOTE ÿRefer to the implementation guide and agreements for +/// NOTE ÿRefer to the implementation guide and agreements for /// more information on matching between building element geometry /// and material layer set usage. /// @@ -7602,7 +7605,7 @@ public: /// objects. If the element type is available (i.e. the relevant /// subtype of IfcElementType, then the /// IfcMaterialLayerSet can be assigned to the type object. -/// The assignment between aÿsubtype of IfcElement and the +/// The assignment between aÿsubtype of IfcElement and the /// IfcMaterialLayerSetUsage is handled by /// IfcRelAssociatesMaterial. /// @@ -7615,27 +7618,27 @@ public: /// material layer thicknesses are constant. /// Generally, an element may be layered in any of its primary /// directions, denoted by its x, y or z axis. The geometry use -/// definitions at eachÿspecific types of building element will -/// determine the applicableÿLayerSetDirection. +/// definitions at eachÿspecific types of building element will +/// determine the applicableÿLayerSetDirection. /// /// The following examples illustrate how the IfcMaterialLayerSetUsage attributes (LayerSetDirection, DirectionSense, OffsetFromReferenceLine) can /// be used in different cases. The normative material use definitions are documented at each element (how these shall be used). /// /// Figure 286 shows an example of the use of IfcMaterialLayerSetUsage aligned to the axis of a wall. /// -/// EXAMPLE  For a standard wall with extruded +/// EXAMPLE  For a standard wall with extruded /// geometric representation (vertical extrusion), the layer set /// direction will be perpendicular to extrusion direction, -/// andÿcan be derived from the direction of the wall +/// andÿcan be derived from the direction of the wall /// axis. With the DirectionSense(positive in /// this example) the individual IfcMaterialLayers are /// assigned consecutively right-to-left or left-to-right. For a /// curved wall, "direction denoting the wall thickness" can be /// derived from the direction of the wall axis, and it will remain /// perpendicular to the wall path. The -/// DirectionSenseÿapplies as well. +/// DirectionSenseÿapplies as well. /// -/// NOTE  According to the IfcWallStandardCase material use +/// NOTE  According to the IfcWallStandardCase material use /// definition the LayerSetDirection for /// IfcWallStandardCase is always AXIS2 (i.e. along the /// y-axis), as shown in this example. @@ -7644,17 +7647,17 @@ public: /// /// Figure 287 shows an example of the use of IfcMaterialLayerSetUsage aligned to a slab. /// -/// EXAMPLE ÿFor a slab with perpendicular +/// EXAMPLE ÿFor a slab with perpendicular /// extruded geometric representation, the LayerSetDirection /// will coincide with the extrusion direction (in positive or /// negative sense). In this example, the material layer set base is /// the extruded profile and consistent with the -/// IfcExtrudedAreaSolid.Position,ÿwith the +/// IfcExtrudedAreaSolid.Position,ÿwith the /// DirectionSensebeing positive, the /// individual IfcMaterialLayers are built up from the base /// towards positive z direction in this case. /// -/// NOTE ÿAccording to the IfcSlabStandardCase +/// NOTE ÿAccording to the IfcSlabStandardCase /// material use definition the LayerSetDirection for /// IfcSlabStandardCase is always AXIS3 (i.e. along the /// z-axis). @@ -7663,7 +7666,7 @@ public: /// /// Figure 288 shows an example of the use of IfcMaterialLayerSetUsage aligned to a roof slab with non-perpendicular extrusion. /// -/// EXAMPLE ÿFor a slab with non-perpendicular +/// EXAMPLE ÿFor a slab with non-perpendicular /// extruded geometric representation, the guidelines above apply as /// well. The material layer thickness and the /// OffsetFromReferenceLine is always measured @@ -7680,16 +7683,16 @@ public: void setForLayerSet(IfcMaterialLayerSet* v); /// Orientation of the material layer set relative to element reference geometry. The meaning of the value of this attribute shall be specified in the geometry use section for each element. For extruded shape representation, direction can be given along the extrusion path (e.g. for slabs) or perpendicular to it (e.g. for walls). /// - /// NOTE  the LayerSetDirection for IfcWallStandardCase shall be AXIS2 (i.e. the y-axis) and for IfcSlabStandardCase and IfcPlateStandardCase it shall be AXIS3 (i.e. the z-axis). + /// NOTE  the LayerSetDirection for IfcWallStandardCase shall be AXIS2 (i.e. the y-axis) and for IfcSlabStandardCase and IfcPlateStandardCase it shall be AXIS3 (i.e. the z-axis). /// /// Whether the material layers of the set being used shall 'grow' into the positive or negative direction of the given axis, shall be deifned by DirectionSense attribute. IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum LayerSetDirection(); void setLayerSetDirection(IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum v); /// Denotion whether the material layer set is oriented in positive or negative sense along the specified axis (defined by LayerSetDirection). "Positive" means that the consecutive layers (the IfcMaterialLayer instances in the list of IfcMaterialLayerSet.MaterialLayers) are placed face-by-face in the direction of the positive axis as established by LayerSetDirection: for AXIS2 it would be in +y, for AXIS3 it would be +z. "Negative" means that the layers are placed face-by-face in the direction of the negative LayerSetDirection. In both cases, starting at the material layer set base line. - /// NOTE  the material layer set base line (MlsBase) is located by OffsetFromReferenceLine, and may be on the positive or negative side of the element reference line (or plane); positive or negative for MlsBase placement does not depend on the DirectionSense attribute, but on the relevant element axis. + /// NOTE  the material layer set base line (MlsBase) is located by OffsetFromReferenceLine, and may be on the positive or negative side of the element reference line (or plane); positive or negative for MlsBase placement does not depend on the DirectionSense attribute, but on the relevant element axis. IfcDirectionSenseEnum::IfcDirectionSenseEnum DirectionSense(); void setDirectionSense(IfcDirectionSenseEnum::IfcDirectionSenseEnum v); - /// Offset of the material layer set base line (MlsBase) from reference geometry (line or plane) of element. The offset can be positive or negative, unless restricted for a particular building element type in its use definition or by implementer agreement. A positive value means, that the MlsBase is placed on the positive side of the reference line or plane, on the axis established by LayerSetDirection (in case of AXIS2 into the direction of +y, or in case of AXIS2 into the direction of +z). A negative value means that the MlsBase is placed on the negative side, as established by LayerSetDirection (in case of AXIS2 into the direction of -y). NOTE  the positive or negative sign in the offset only affects the MlsBase placement, it does not have any effect on the application of DirectionSense for orientation of the material layers; also DirectionSense does not change the MlsBase placement. + /// Offset of the material layer set base line (MlsBase) from reference geometry (line or plane) of element. The offset can be positive or negative, unless restricted for a particular building element type in its use definition or by implementer agreement. A positive value means, that the MlsBase is placed on the positive side of the reference line or plane, on the axis established by LayerSetDirection (in case of AXIS2 into the direction of +y, or in case of AXIS2 into the direction of +z). A negative value means that the MlsBase is placed on the negative side, as established by LayerSetDirection (in case of AXIS2 into the direction of -y). NOTE  the positive or negative sign in the offset only affects the MlsBase placement, it does not have any effect on the application of DirectionSense for orientation of the material layers; also DirectionSense does not change the MlsBase placement. IfcLengthMeasure OffsetFromReferenceLine(); void setOffsetFromReferenceLine(IfcLengthMeasure v); virtual unsigned int getArgumentCount() const { return 4; } @@ -7720,7 +7723,7 @@ public: /// of a single identifiable material (for example, to represent anisotropic /// material). /// -/// IFC2x4 CHANGEÿ The entity IfcMaterialList is deprecated and shall no longer +/// IFC2x4 CHANGEÿ The entity IfcMaterialList is deprecated and shall no longer /// be used. Use IfcMaterialConstituentSet instead. class IfcMaterialList : public IfcBaseEntity { public: @@ -7746,7 +7749,7 @@ public: /// individual material definiton may be identified by a Name /// and a Description. /// -/// NOTE  The set of material properties can be assigned +/// NOTE  The set of material properties can be assigned /// to an individual IfcMaterial, a set or composite of /// materials (IfcMaterialConstituent, /// IfcMaterialConstituentSet), or set or individual material @@ -7759,9 +7762,9 @@ public: /// material properties defined in this IFC specification and those /// defined as user-defined extended material properties. /// -/// HISTORY  New Entity in IFC 2x. +/// HISTORY  New Entity in IFC 2x. /// -/// IFC2x4 CHANGE  The subtypes that represented a fixed list of statically defined material properties, IfcMechanicalMaterialProperties, IfcThermalMaterialProperties, IfcHygroscopicMaterialProperties, IfcGeneralMaterialProperties, IfcOpticalMaterialProperties, IfcWaterProperties, IfcFuelProperties, IfcProductsOfCombustionProperties have been deleted, use the generic IfcExtendedMaterialProperties instead. +/// IFC2x4 CHANGE  The subtypes that represented a fixed list of statically defined material properties, IfcMechanicalMaterialProperties, IfcThermalMaterialProperties, IfcHygroscopicMaterialProperties, IfcGeneralMaterialProperties, IfcOpticalMaterialProperties, IfcWaterProperties, IfcFuelProperties, IfcProductsOfCombustionProperties have been deleted, use the generic IfcExtendedMaterialProperties instead. class IfcMaterialProperties : public IfcBaseEntity { public: /// Reference to the material definition to which the set of properties is assigned. @@ -7843,7 +7846,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMechanicalMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMechanicalMaterialProperties (IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient); + IfcMechanicalMaterialProperties (IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient); typedef IfcMechanicalMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7886,7 +7889,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMechanicalSteelMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMechanicalSteelMaterialProperties (IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient, IfcPressureMeasure v7_YieldStress, IfcPressureMeasure v8_UltimateStress, IfcPositiveRatioMeasure v9_UltimateStrain, IfcModulusOfElasticityMeasure v10_HardeningModule, IfcPressureMeasure v11_ProportionalStress, IfcPositiveRatioMeasure v12_PlasticStrain, SHARED_PTR< IfcTemplatedEntityList > v13_Relaxations); + IfcMechanicalSteelMaterialProperties (IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient, optional v7_YieldStress, optional v8_UltimateStress, optional v9_UltimateStrain, optional v10_HardeningModule, optional v11_ProportionalStress, optional v12_PlasticStrain, optional >> v13_Relaxations); typedef IfcMechanicalSteelMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -7964,7 +7967,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMetric (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMetric (IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade, IfcBenchmarkEnum::IfcBenchmarkEnum v8_Benchmark, IfcLabel v9_ValueSource, IfcMetricValueSelect v10_DataValue); + IfcMetric (IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade, IfcBenchmarkEnum::IfcBenchmarkEnum v8_Benchmark, optional v9_ValueSource, IfcMetricValueSelect v10_DataValue); typedef IfcMetric* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8082,7 +8085,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcObjective (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcObjective (IfcLabel v1_Name, IfcText v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, IfcLabel v4_ConstraintSource, IfcActorSelect v5_CreatingActor, IfcDateTimeSelect v6_CreationTime, IfcLabel v7_UserDefinedGrade, IfcMetric* v8_BenchmarkValues, IfcMetric* v9_ResultValues, IfcObjectiveEnum::IfcObjectiveEnum v10_ObjectiveQualifier, IfcLabel v11_UserDefinedQualifier); + IfcObjective (IfcLabel v1_Name, optional v2_Description, IfcConstraintEnum::IfcConstraintEnum v3_ConstraintGrade, optional v4_ConstraintSource, optional v5_CreatingActor, optional v6_CreationTime, optional v7_UserDefinedGrade, IfcMetric* v8_BenchmarkValues, IfcMetric* v9_ResultValues, IfcObjectiveEnum::IfcObjectiveEnum v10_ObjectiveQualifier, optional v11_UserDefinedQualifier); typedef IfcObjective* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8133,7 +8136,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOpticalMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOpticalMaterialProperties (IfcMaterial* v1_Material, IfcPositiveRatioMeasure v2_VisibleTransmittance, IfcPositiveRatioMeasure v3_SolarTransmittance, IfcPositiveRatioMeasure v4_ThermalIrTransmittance, IfcPositiveRatioMeasure v5_ThermalIrEmissivityBack, IfcPositiveRatioMeasure v6_ThermalIrEmissivityFront, IfcPositiveRatioMeasure v7_VisibleReflectanceBack, IfcPositiveRatioMeasure v8_VisibleReflectanceFront, IfcPositiveRatioMeasure v9_SolarReflectanceFront, IfcPositiveRatioMeasure v10_SolarReflectanceBack); + IfcOpticalMaterialProperties (IfcMaterial* v1_Material, optional v2_VisibleTransmittance, optional v3_SolarTransmittance, optional v4_ThermalIrTransmittance, optional v5_ThermalIrEmissivityBack, optional v6_ThermalIrEmissivityFront, optional v7_VisibleReflectanceBack, optional v8_VisibleReflectanceFront, optional v9_SolarReflectanceFront, optional v10_SolarReflectanceBack); typedef IfcOpticalMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8182,7 +8185,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOrganization (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOrganization (IfcIdentifier v1_Id, IfcLabel v2_Name, IfcText v3_Description, SHARED_PTR< IfcTemplatedEntityList > v4_Roles, SHARED_PTR< IfcTemplatedEntityList > v5_Addresses); + IfcOrganization (optional v1_Id, IfcLabel v2_Name, optional v3_Description, optional >> v4_Roles, optional >> v5_Addresses); typedef IfcOrganization* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8217,7 +8220,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOrganizationRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOrganizationRelationship (IfcLabel v1_Name, IfcText v2_Description, IfcOrganization* v3_RelatingOrganization, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedOrganizations); + IfcOrganizationRelationship (IfcLabel v1_Name, optional v2_Description, IfcOrganization* v3_RelatingOrganization, SHARED_PTR< IfcTemplatedEntityList > v4_RelatedOrganizations); typedef IfcOrganizationRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8226,7 +8229,7 @@ public: /// /// IfcOwnerHistory is used to identify the creating and owning application and user for the associated object, as well as capture the last modifying application and user. /// -/// HISTORY  New entity in IFC R1.0. Modified in IFC R2x4. +/// HISTORY  New entity in IFC R1.0. Modified in IFC R2x4. /// /// Informal propositions /// @@ -8274,7 +8277,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOwnerHistory (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOwnerHistory (IfcPersonAndOrganization* v1_OwningUser, IfcApplication* v2_OwningApplication, IfcStateEnum::IfcStateEnum v3_State, IfcChangeActionEnum::IfcChangeActionEnum v4_ChangeAction, IfcTimeStamp v5_LastModifiedDate, IfcPersonAndOrganization* v6_LastModifyingUser, IfcApplication* v7_LastModifyingApplication, IfcTimeStamp v8_CreationDate); + IfcOwnerHistory (IfcPersonAndOrganization* v1_OwningUser, IfcApplication* v2_OwningApplication, optional v3_State, IfcChangeActionEnum::IfcChangeActionEnum v4_ChangeAction, optional v5_LastModifiedDate, IfcPersonAndOrganization* v6_LastModifyingUser, IfcApplication* v7_LastModifyingApplication, IfcTimeStamp v8_CreationDate); typedef IfcOwnerHistory* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8344,7 +8347,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPerson (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPerson (IfcIdentifier v1_Id, IfcLabel v2_FamilyName, IfcLabel v3_GivenName, std::vector /*[1:?]*/ v4_MiddleNames, std::vector /*[1:?]*/ v5_PrefixTitles, std::vector /*[1:?]*/ v6_SuffixTitles, SHARED_PTR< IfcTemplatedEntityList > v7_Roles, SHARED_PTR< IfcTemplatedEntityList > v8_Addresses); + IfcPerson (optional v1_Id, optional v2_FamilyName, optional v3_GivenName, optional /*[1:?]*/> v4_MiddleNames, optional /*[1:?]*/> v5_PrefixTitles, optional /*[1:?]*/> v6_SuffixTitles, optional >> v7_Roles, optional >> v8_Addresses); typedef IfcPerson* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8375,7 +8378,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPersonAndOrganization (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPersonAndOrganization (IfcPerson* v1_ThePerson, IfcOrganization* v2_TheOrganization, SHARED_PTR< IfcTemplatedEntityList > v3_Roles); + IfcPersonAndOrganization (IfcPerson* v1_ThePerson, IfcOrganization* v2_TheOrganization, optional >> v3_Roles); typedef IfcPersonAndOrganization* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8384,7 +8387,7 @@ public: /// /// The Name attribute defines the actual usage or kind of measure. The interpretation of the name label has to be established within the actual exchange context. In addition an informative text may be associated to each quantity by the Description attribute. /// -/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. +/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcPhysicalQuantity : public IfcBaseEntity { public: /// Name of the element quantity or measure. The name attribute has to be made recognizable by further agreements. @@ -8404,20 +8407,20 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPhysicalQuantity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPhysicalQuantity (IfcLabel v1_Name, IfcText v2_Description); + IfcPhysicalQuantity (IfcLabel v1_Name, optional v2_Description); typedef IfcPhysicalQuantity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The physical quantity, IfcPhysicalSimpleQuantity, is an entity that holds a single quantity measure value (as defined at the subtypes of IfcPhysicalSimpleQuantity) together with a semantic definition of the usage for the measure value. /// -/// EXAMPLE  An element, like a wall, may have several area measures, like footprint area, left wall face area, right wall face area. These areas would be given by three instances of the area quantity subtype, with different Name string values. +/// EXAMPLE  An element, like a wall, may have several area measures, like footprint area, left wall face area, right wall face area. These areas would be given by three instances of the area quantity subtype, with different Name string values. /// /// A section "Quantity Use Definition" at individual entities as subtypes of IfcBuildingElement gives guidance to the usage of the Name attribute to characterize the individual quantities. If the Unit attribute is given, the value attribute (introduced at the level of subtypes of IfcPhysicalSimpleQuantity) are given as quantities of this unit, otherwise the global unit definitions (given by IfcUnitAssignment) are used. /// /// HISTORY New entity in IFC2x2 Addendum 1. /// -/// IFC2x2 ADDENDUM 1 CHANGE  The abstract entity IfcPhysicalSimpleQuantity has been added. Upward compatibility for file based exchange is guaranteed. +/// IFC2x2 ADDENDUM 1 CHANGE  The abstract entity IfcPhysicalSimpleQuantity has been added. Upward compatibility for file based exchange is guaranteed. class IfcPhysicalSimpleQuantity : public IfcPhysicalQuantity { public: /// Whether the optional attribute Unit is defined for this IfcPhysicalSimpleQuantity @@ -8433,7 +8436,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPhysicalSimpleQuantity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPhysicalSimpleQuantity (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit); + IfcPhysicalSimpleQuantity (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit); typedef IfcPhysicalSimpleQuantity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8492,18 +8495,18 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPostalAddress (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPostalAddress (IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose, IfcLabel v4_InternalLocation, std::vector /*[1:?]*/ v5_AddressLines, IfcLabel v6_PostalBox, IfcLabel v7_Town, IfcLabel v8_Region, IfcLabel v9_PostalCode, IfcLabel v10_Country); + IfcPostalAddress (optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose, optional v4_InternalLocation, optional /*[1:?]*/> v5_AddressLines, optional v6_PostalBox, optional v7_Town, optional v8_Region, optional v9_PostalCode, optional v10_Country); typedef IfcPostalAddress* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// A pre defined item is a qualified name given to a style or font which is determined within the data exchange specification by convention on using the Name attribute value (in contrary to externally defined items, which are agreed by an external source). /// -/// NOTE  The convention on using the Name value is defined at the subtypes of IfcPreDefinedItem and is part of the specification. +/// NOTE  The convention on using the Name value is defined at the subtypes of IfcPreDefinedItem and is part of the specification. /// -/// NOTE  Corresponding ISO 10303 name: pre_defined_item. Please refer to ISO/IS 10303-41:1994, page 137 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: pre_defined_item. Please refer to ISO/IS 10303-41:1994, page 137 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcPreDefinedItem : public IfcBaseEntity { public: /// The string by which the pre defined item is identified. Allowable values for the string are declared at the level of subtypes. @@ -8565,11 +8568,11 @@ public: /// /// IfcTextStyleFontModel for definitions from Cascading Style Sheets, level 1, W3C Recommendation 17 Dec 1996, revised 11 Jan 1999, CSS1, for all true type text. The use of the CSS1 definitions is the preferred way to represent text fonts. /// -/// NOTE  Corresponding ISO 10303 name: pre_defined_text_font. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: pre_defined_text_font. Please refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The IfcTextStyleFontModel has been added as new subtype. +/// IFC2x3 CHANGE  The IfcTextStyleFontModel has been added as new subtype. class IfcPreDefinedTextFont : public IfcPreDefinedItem { public: virtual unsigned int getArgumentCount() const { return 1; } @@ -8587,13 +8590,13 @@ public: }; /// The presentation layer assignment provides the layer name (and optionally a description and an identifier) for a collection of geometric representation items. The IfcPresentationLayerAssignment corresponds to the term "CAD Layer" and is used mainly for grouping and visibility control. /// -/// NOTE  The use of presentation layer shall be restricted to simple grouping and displaying purposes. +/// NOTE  The use of presentation layer shall be restricted to simple grouping and displaying purposes. /// /// Visibility and access control and layer style assignment (colour, line style, line width) is handled by the subtype IfcPresentationLayerAssignmentWithStyle. /// -/// NOTE  Corresponding ISO 10303 name: presentation layer assignment. Please refer to ISO/IS 10303-46:1994, p. 36 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: presentation layer assignment. Please refer to ISO/IS 10303-46:1994, p. 36 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Attribute use definition /// @@ -8626,7 +8629,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPresentationLayerAssignment (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPresentationLayerAssignment (IfcLabel v1_Name, IfcText v2_Description, IfcEntities v3_AssignedItems, IfcIdentifier v4_Identifier); + IfcPresentationLayerAssignment (IfcLabel v1_Name, optional v2_Description, IfcEntities v3_AssignedItems, optional v4_Identifier); typedef IfcPresentationLayerAssignment* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8635,15 +8638,15 @@ public: /// /// The visibility control allows to define a layer to be either 'on' or 'off', and/or 'frozen' or 'not frozen'. The access control allows to block graphical entities from manipulations by setting a layer to be either 'blocked' or 'not blocked'. Common style information can be given to the layer. /// -/// NOTE  Style information assigned to layers is often restricted to 'layer colour', 'curve font', and/or 'curve width'. These styles are assigned by using the IfcCurveStyle within the LayerStyles. +/// NOTE  Style information assigned to layers is often restricted to 'layer colour', 'curve font', and/or 'curve width'. These styles are assigned by using the IfcCurveStyle within the LayerStyles. /// /// NOTE: If a styled item is assigned to a layer using the IfcPresentationLayerAssignmentWithStyle, it inherits the style information from the layer. In this case, it should omit its own style information. If the styled item has style information assigned (such as by IfcCurveStyle, IfcFillAreaStyle, IfcTextStyle, IfcSurfaceStyle, IfcSymbolStyle), then it overrides the style provided by the IfcPresentationLayerAssignmentWithStyle. /// -/// NOTE  The IfcPresentationLayerAssignmentWithStyle extends the presentation_layer_assignment entity as defined in ISO/IS 10303-46:1994, p. 36. +/// NOTE  The IfcPresentationLayerAssignmentWithStyle extends the presentation_layer_assignment entity as defined in ISO/IS 10303-46:1994, p. 36. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The attributes have been modified without upward compatibility. +/// IFC2x3 CHANGE  The attributes have been modified without upward compatibility. class IfcPresentationLayerWithStyle : public IfcPresentationLayerAssignment { public: /// A logical setting, TRUE indicates that the layer is set to 'On', FALSE that the layer is set to 'Off', UNKNOWN that such information is not available. @@ -8657,9 +8660,9 @@ public: void setLayerBlocked(bool v); /// Assignment of presentation styles to the layer to provide a default style for representation items. /// - /// NOTE  In most cases the assignment of styles to a layer is restricted to an IfcCurveStyle representing the layer curve colour, layer curve thickness, and layer curve type. + /// NOTE  In most cases the assignment of styles to a layer is restricted to an IfcCurveStyle representing the layer curve colour, layer curve thickness, and layer curve type. /// - /// IFC2x4 CHANGE  The data type has been changed from IfcPresentationStyleSelect (now deprecated) to IfcPresentationStyle. + /// IFC2x4 CHANGE  The data type has been changed from IfcPresentationStyleSelect (now deprecated) to IfcPresentationStyle. SHARED_PTR< IfcTemplatedEntityList > LayerStyles(); void setLayerStyles(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 8; } @@ -8670,16 +8673,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPresentationLayerWithStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPresentationLayerWithStyle (IfcLabel v1_Name, IfcText v2_Description, IfcEntities v3_AssignedItems, IfcIdentifier v4_Identifier, bool v5_LayerOn, bool v6_LayerFrozen, bool v7_LayerBlocked, IfcEntities v8_LayerStyles); + IfcPresentationLayerWithStyle (IfcLabel v1_Name, optional v2_Description, IfcEntities v3_AssignedItems, optional v4_Identifier, bool v5_LayerOn, bool v6_LayerFrozen, bool v7_LayerBlocked, IfcEntities v8_LayerStyles); typedef IfcPresentationLayerWithStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcPresentationStyle is an abstract generalization of style table for presentation information assigned to geometric representation items. It includes styles for curves, areas, surfaces, text and symbols. Style information may include colour, hatching, rendering, and text fonts. /// -/// Each subtype of  IfcPresentationStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or one of its subtypes. +/// Each subtype of  IfcPresentationStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or one of its subtypes. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. class IfcPresentationStyle : public IfcBaseEntity { public: /// Whether the optional attribute Name is defined for this IfcPresentationStyle @@ -8695,7 +8698,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPresentationStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPresentationStyle (IfcLabel v1_Name); + IfcPresentationStyle (optional v1_Name); typedef IfcPresentationStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8737,9 +8740,9 @@ public: /// /// HISTORY New entity in IFC Release 2.0 /// -/// IFC2x3 NOTE ÿUsers should not instantiate the entity from IFC2x Edition 3 onwards. +/// IFC2x3 NOTE ÿUsers should not instantiate the entity from IFC2x Edition 3 onwards. /// -/// IFC2x4 CHANGE  Entity made abstract. +/// IFC2x4 CHANGE  Entity made abstract. class IfcProductRepresentation : public IfcBaseEntity { public: /// Whether the optional attribute Name is defined for this IfcProductRepresentation @@ -8763,7 +8766,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProductRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProductRepresentation (IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations); + IfcProductRepresentation (optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations); typedef IfcProductRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8794,7 +8797,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProductsOfCombustionProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProductsOfCombustionProperties (IfcMaterial* v1_Material, IfcSpecificHeatCapacityMeasure v2_SpecificHeatCapacity, IfcPositiveRatioMeasure v3_N20Content, IfcPositiveRatioMeasure v4_COContent, IfcPositiveRatioMeasure v5_CO2Content); + IfcProductsOfCombustionProperties (IfcMaterial* v1_Material, optional v2_SpecificHeatCapacity, optional v3_N20Content, optional v4_COContent, optional v5_CO2Content); typedef IfcProductsOfCombustionProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -8816,11 +8819,11 @@ public: /// profiles can be defined, which include two or more profile definitions /// to define the resulting profile. /// -/// HISTORY  New class in IFC Release 1.5, the capabilities have been extended in IFC Release 2x. +/// HISTORY  New class in IFC Release 1.5, the capabilities have been extended in IFC Release 2x. /// Profiles can now support swept surfaces and swept area solids with /// inner boundaries. It had been renamed from IfcAttDrivenProfileDef. /// -/// IFC2x4 CHANGE  Changed from ABSTRACT to non-abstract for uses which do not +/// IFC2x4 CHANGE  Changed from ABSTRACT to non-abstract for uses which do not /// require an explicitly defined geometry. Added inverse attributes HasProperties and HasExternalReference. /// /// Use in material association @@ -8861,7 +8864,7 @@ public: /// on transformations of the start profile and thus maintaining the /// identity of vertices and edges. /// -/// NOTE  Subtypes of the IfcProfileDef +/// NOTE  Subtypes of the IfcProfileDef /// contain parameterized profiles (as subtypes of IfcParameterizedProfileDef) /// which establish their own 2D position coordinate system, profiles given /// by explicit curve geometry (either open or closed profiles) and two @@ -8895,7 +8898,7 @@ public: /// Sweeping /// /// In the later use of the IfcProfileDef -/// within the swept surface or swept area solid,  e.g. the IfcExtrudedAreaSolid +/// within the swept surface or swept area solid,  e.g. the IfcExtrudedAreaSolid /// (here used as an example), the profile boundaries (here based on the 2D /// position coordinate system of IfcParameterizedProfileDef) /// are placed within the xy plane of the 3D position coordinate system of @@ -8987,7 +8990,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName); + IfcProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName); typedef IfcProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9000,9 +9003,9 @@ public: /// properties for precast concrete double-T sections /// properties for precast concrete hollow core sections /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x4 CHANGE  Entity made non-abstract. Subtypes IfcGeneralProfileProperties, IfcStructuralProfileProperties, and IfcStructuralSteelProfileProperties deleted. Attribute ProfileName deleted, use ProfileDefinition.ProfileName instead. Attribute ProfileDefinition made mandatory. Attributes Name, Description, and HasProperties added. +/// IFC2x4 CHANGE  Entity made non-abstract. Subtypes IfcGeneralProfileProperties, IfcStructuralProfileProperties, and IfcStructuralSteelProfileProperties deleted. Attribute ProfileName deleted, use ProfileDefinition.ProfileName instead. Attribute ProfileDefinition made mandatory. Attributes Name, Description, and HasProperties added. class IfcProfileProperties : public IfcBaseEntity { public: /// Whether the optional attribute ProfileName is defined for this IfcProfileProperties @@ -9022,14 +9025,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProfileProperties (IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition); + IfcProfileProperties (optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition); typedef IfcProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcProperty is an abstract generalization for all types of properties that can be associated with IFC objects through the property set mechanism. /// -/// HISTORY  New entity in IFC Release 1.0. +/// HISTORY  New entity in IFC Release 1.0. class IfcProperty : public IfcBaseEntity { public: /// Name for this property. This label is the significant name string that defines the semantic meaning for the property. @@ -9051,7 +9054,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProperty (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProperty (IfcIdentifier v1_Name, IfcText v2_Description); + IfcProperty (IfcIdentifier v1_Name, optional v2_Description); typedef IfcProperty* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9078,16 +9081,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyConstraintRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyConstraintRelationship (IfcConstraint* v1_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedProperties, IfcLabel v3_Name, IfcText v4_Description); + IfcPropertyConstraintRelationship (IfcConstraint* v1_RelatingConstraint, SHARED_PTR< IfcTemplatedEntityList > v2_RelatedProperties, optional v3_Name, optional v4_Description); typedef IfcPropertyConstraintRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcPropertyDependencyRelationship describes an identified dependency between the value of one property and that of another. /// -/// HISTORY  New entity in IFC2x2 +/// HISTORY  New entity in IFC2x2 /// -/// IFC2x4 CHANGE  Made subtype of IfcResourceLevelRelationship (attribute order changed). +/// IFC2x4 CHANGE  Made subtype of IfcResourceLevelRelationship (attribute order changed). /// /// Use Definition /// Whilst the IfcPropertyDependencyRelationship may be used to describe the dependency, and it may do so in terms of the expression of how the dependency operates, it is not possible through the current IFC model for the value of the related property to be actually derived from the value of the relating property. The determination of value according to the dependency is required to be performed by an application that can then use the Expression attribute to flag the form of the dependency. @@ -9120,7 +9123,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyDependencyRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyDependencyRelationship (IfcProperty* v1_DependingProperty, IfcProperty* v2_DependantProperty, IfcLabel v3_Name, IfcText v4_Description, IfcText v5_Expression); + IfcPropertyDependencyRelationship (IfcProperty* v1_DependingProperty, IfcProperty* v2_DependantProperty, optional v3_Name, optional v4_Description, optional v5_Expression); typedef IfcPropertyDependencyRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9155,22 +9158,22 @@ public: /// IfcString /// - /// -///   +///   /// Opposed /// IfcString -///   +///   /// -///   +///   /// Other /// IfcString -///   +///   /// -///   +///   /// Unset /// IfcString -///   +///   /// -/// HISTORY  New Entity in IFC Release 2.0, capabilities enhanced in IFC Release 2x. Entity has been renamed from IfcEnumeration in IFC Release 2x. +/// HISTORY  New Entity in IFC Release 2.0, capabilities enhanced in IFC Release 2x. Entity has been renamed from IfcEnumeration in IFC Release 2x. class IfcPropertyEnumeration : public IfcBaseEntity { public: /// Name of this enumeration. @@ -9192,16 +9195,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyEnumeration (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyEnumeration (IfcLabel v1_Name, IfcEntities v2_EnumerationValues, IfcUnit v3_Unit); + IfcPropertyEnumeration (IfcLabel v1_Name, IfcEntities v2_EnumerationValues, optional v3_Unit); typedef IfcPropertyEnumeration* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityArea is a physical quantity that defines a derived area measure to provide an element's physical property. It is normally derived from the physical properties of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  An opening may have an opening area used to deduct it from the wall surface area. The actual size of the area depends on the method of measurement used. +/// EXAMPLE  An opening may have an opening area used to deduct it from the wall surface area. The actual size of the area depends on the method of measurement used. /// -/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. +/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcQuantityArea : public IfcPhysicalSimpleQuantity { public: /// Area measure value of this quantity. @@ -9215,16 +9218,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityArea (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityArea (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcAreaMeasure v4_AreaValue); + IfcQuantityArea (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcAreaMeasure v4_AreaValue); typedef IfcQuantityArea* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityCount is a physical quantity that defines a derived count measure to provide an element's physical property. It is normally derived from the physical properties of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  An radiator may be measured according to its number of coils. The actual counting method depends on the method of measurement used. +/// EXAMPLE  An radiator may be measured according to its number of coils. The actual counting method depends on the method of measurement used. /// -/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. +/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcQuantityCount : public IfcPhysicalSimpleQuantity { public: /// Count measure value of this quantity. @@ -9238,16 +9241,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityCount (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityCount (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcCountMeasure v4_CountValue); + IfcQuantityCount (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcCountMeasure v4_CountValue); typedef IfcQuantityCount* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityLength is a physical quantity that defines a derived length measure to provide an element's physical property. It is normally derived from the physical properties of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  A rafter within a roof construction may be measured according to its length (taking a common cross section into account). The actual size of the length depends on the method of measurement used. +/// EXAMPLE  A rafter within a roof construction may be measured according to its length (taking a common cross section into account). The actual size of the length depends on the method of measurement used. /// -/// HISTORY  New entity in IFC Release 2.x. It replaces the calcXxx attributes used in previous IFC Releases. +/// HISTORY  New entity in IFC Release 2.x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcQuantityLength : public IfcPhysicalSimpleQuantity { public: /// Length measure value of this quantity. @@ -9261,16 +9264,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityLength (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityLength (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcLengthMeasure v4_LengthValue); + IfcQuantityLength (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcLengthMeasure v4_LengthValue); typedef IfcQuantityLength* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityTime is an element quantity that defines a time measure to provide an property of time related to an element. It is normally given by the recipe information of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  The amount of time needed to pour concrete for a wall is given as a time quantity for the labor part of the recipe information. +/// EXAMPLE  The amount of time needed to pour concrete for a wall is given as a time quantity for the labor part of the recipe information. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcQuantityTime : public IfcPhysicalSimpleQuantity { public: /// Time measure value of this quantity. @@ -9284,14 +9287,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityTime (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityTime (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcTimeMeasure v4_TimeValue); + IfcQuantityTime (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcTimeMeasure v4_TimeValue); typedef IfcQuantityTime* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityVolume is a physical quantity that defines a derived volume measure to provide an element's physical property. It is normally derived from the physical properties of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  A thick brick wall may be measured according to its volume. The actual size of the volume depends on the method of measurement used. +/// EXAMPLE  A thick brick wall may be measured according to its volume. The actual size of the volume depends on the method of measurement used. /// /// HISTORY New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcQuantityVolume : public IfcPhysicalSimpleQuantity { @@ -9307,16 +9310,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityVolume (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityVolume (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcVolumeMeasure v4_VolumeValue); + IfcQuantityVolume (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcVolumeMeasure v4_VolumeValue); typedef IfcQuantityVolume* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcQuantityWeight is a physical element quantity that defines a derived weight measure to provide an element's physical property. It is normally derived from the physical properties of the element under the specific measure rules given by a method of measurement. /// -/// EXAMPLE  The amount of reinforcement used within a building element may be measured according to its weight. The actual size of the weight depends on the method of measurement used. +/// EXAMPLE  The amount of reinforcement used within a building element may be measured according to its weight. The actual size of the weight depends on the method of measurement used. /// -/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. +/// HISTORY  New entity in IFC2x. It replaces the calcXxx attributes used in previous IFC Releases. class IfcQuantityWeight : public IfcPhysicalSimpleQuantity { public: /// Mass measure value of this quantity. @@ -9330,7 +9333,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcQuantityWeight (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcQuantityWeight (IfcLabel v1_Name, IfcText v2_Description, IfcNamedUnit* v3_Unit, IfcMassMeasure v4_WeightValue); + IfcQuantityWeight (IfcLabel v1_Name, optional v2_Description, IfcNamedUnit* v3_Unit, IfcMassMeasure v4_WeightValue); typedef IfcQuantityWeight* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9357,14 +9360,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReferencesValueDocument (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReferencesValueDocument (IfcDocumentSelect v1_ReferencedDocument, SHARED_PTR< IfcTemplatedEntityList > v2_ReferencingValues, IfcLabel v3_Name, IfcText v4_Description); + IfcReferencesValueDocument (IfcDocumentSelect v1_ReferencedDocument, SHARED_PTR< IfcTemplatedEntityList > v2_ReferencingValues, optional v3_Name, optional v4_Description); typedef IfcReferencesValueDocument* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcReinforcementProperties defines the set of properties for a specific combination of reinforcement bar steel grade, bar type and effective depth. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// The total cross section area for the specific steel grade is always provided. Additionally also general reinforcing bar configurations as a count of bars may be provided as defined in attribute BarCount. In this case the nominal bar diameter should be identical for all given bars as defined in attribute NominalBarDiameter. class IfcReinforcementBarProperties : public IfcBaseEntity { @@ -9403,7 +9406,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReinforcementBarProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReinforcementBarProperties (IfcAreaMeasure v1_TotalCrossSectionArea, IfcLabel v2_SteelGrade, IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum v3_BarSurface, IfcLengthMeasure v4_EffectiveDepth, IfcPositiveLengthMeasure v5_NominalBarDiameter, IfcCountMeasure v6_BarCount); + IfcReinforcementBarProperties (IfcAreaMeasure v1_TotalCrossSectionArea, IfcLabel v2_SteelGrade, optional v3_BarSurface, optional v4_EffectiveDepth, optional v5_NominalBarDiameter, optional v6_BarCount); typedef IfcReinforcementBarProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9458,19 +9461,19 @@ public: /// IfcElement, or in view definitions / implementer /// agreements. /// -/// NOTE ÿThe definition of this +/// NOTE ÿThe definition of this /// entity relates to the ISO 10303 entity representation. Please /// refer to ISO/IS 10303-43:1994 for the final definition of /// the formal standard. /// -/// HISTORY  New entity in IFC Release 2.0 +/// HISTORY  New entity in IFC Release 2.0 /// -/// IFC2x3 CHANGE  The +/// IFC2x3 CHANGE  The /// inverse attributes LayerAssignments /// andRepresentationMap have been added with upward /// compatibility. /// -/// IFC2x4 CHANGE  Entity +/// IFC2x4 CHANGE  Entity /// IfcRepresentation has been changed into an ABSTRACT /// supertype. class IfcRepresentation : public IfcBaseEntity { @@ -9503,7 +9506,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRepresentation (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcRepresentation (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9512,9 +9515,9 @@ public: /// /// The IfcRepresentationContext defines the context to which the IfcRepresentation of a product is related. /// -/// NOTE  The definition of this class relates to the ISO 10303 entity representation_context. Please refer to ISO/IS 10303-43:1994 for the final definition of the formal standard. +/// NOTE  The definition of this class relates to the ISO 10303 entity representation_context. Please refer to ISO/IS 10303-43:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. /// /// IFC2x4 CHANGE Entity made abstract, had been deprecated from instantiation since /// IFC2x2. @@ -9539,7 +9542,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRepresentationContext (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRepresentationContext (IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType); + IfcRepresentationContext (optional v1_ContextIdentifier, optional v2_ContextType); typedef IfcRepresentationContext* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9552,30 +9555,30 @@ public: /// representation item when it is referenced by that representation /// item. /// -/// NOTE  Corresponding entity in ISO 10303-43:1994: representation_item. Please refer to ISO/IS 10303-43:1994, for the final definition of the formal standard. The following changes have been made: The attribute 'name' and the WR1 have not been incorporated. +/// NOTE  Corresponding entity in ISO 10303-43:1994: representation_item. Please refer to ISO/IS 10303-43:1994, for the final definition of the formal standard. The following changes have been made: The attribute 'name' and the WR1 have not been incorporated. /// /// The IfcRepresentationItem is used within an IfcRepresentation (directly or indirectly through other IfcRepresentationItem's) to represent an IfcProductRepresentation. Most commonly these IfcRepresentationItem's are geometric or topological representation items, that can (but not need to) have presentation style infomation assigned. /// -/// NOTE  The assignment of a style is only applicable +/// NOTE  The assignment of a style is only applicable /// to the subtypes IfcGeometricRepresentationItem, IfcMappedItem and some selected subtypes of IfcTopologicalRepresentationItem (IfcVertexPoint, IfcEdgeCurve, IfcFaceSurface). /// /// In case that presentation style information is applied, it can be either applied by an IfcStyledItem, or by an assignment to an IfcPresentationLayerWithStyle. If both are present, and both style assignments include the same subtype of IfcPresentationStyle, then the style assigned by IfcStyledItem takes priority. /// /// Figure 281 shows an instance diagram explaining the use of IfcStyledItem and IfcPresentationLayerWithStyle to apply presentation styles. /// -/// EXAMPLE  The assignment of style information by a styled item and a presentation layer with style. Since the presentation styles are different, IfcCurveStyle and IfcSurfaceStyle, both are applied to the geometric representation item. +/// EXAMPLE  The assignment of style information by a styled item and a presentation layer with style. Since the presentation styles are different, IfcCurveStyle and IfcSurfaceStyle, both are applied to the geometric representation item. /// /// Figure 281 — Representation item style /// /// Figure 282 shows in instance diagram explaining the override of IfcPresentationLayerWithStyle by IfcStyledItem to apply presentation styles. /// -/// EXAMPLE  The assignment of style information by a styled item and a presentation layer with style. Since the presentation styles for curve style are aprovided by both, the IfcCurveStyle provided by the IfcStyledItem overrides the IfcCurveStyle provided by the IfcPresentationLayerWithStyle +/// EXAMPLE  The assignment of style information by a styled item and a presentation layer with style. Since the presentation styles for curve style are aprovided by both, the IfcCurveStyle provided by the IfcStyledItem overrides the IfcCurveStyle provided by the IfcPresentationLayerWithStyle /// /// Figure 282 — Representation item style override /// -/// HISTORY  New entity in IFC Release 2x. +/// HISTORY  New entity in IFC Release 2x. /// -/// IFC2x3 CHANGE  The inverse attributes StyledByItem and LayerAssignments have been added. Upward compatibility for file based exchange is guaranteed. +/// IFC2x3 CHANGE  The inverse attributes StyledByItem and LayerAssignments have been added. Upward compatibility for file based exchange is guaranteed. class IfcRepresentationItem : public IfcBaseEntity { public: virtual unsigned int getArgumentCount() const { return 0; } @@ -9594,15 +9597,15 @@ public: }; /// Definition from ISO/CD 10303-43:1992: A representation map is the identification of a representation and a representation item in that representation for the purpose of mapping. The representation item defines the origin of the mapping. The representation map is used as the source of a mapping by a mapped item. /// -/// NOTE  Corresponding ISO 10303 entity: representation_map. Please refer to ISO/IS 10303-43:1994, for the final definition of the formal standard. The following changes have been made: The mapping_origin (MappingOrigin) is constrained to be of type axis2_placement (IfcAxis2Placement). +/// NOTE  Corresponding ISO 10303 entity: representation_map. Please refer to ISO/IS 10303-43:1994, for the final definition of the formal standard. The following changes have been made: The mapping_origin (MappingOrigin) is constrained to be of type axis2_placement (IfcAxis2Placement). /// /// An IfcRepresentationMap defines the base definition (also referred to as block, cell or macro) called MappedRepresentation within the MappingOrigin. The MappingOrigin defines the coordinate system in which the MappedRepresentation is defined. /// /// The RepresentationMap is used through an IfcMappeditem in one or several IfcShapeRepresentation's. An Cartesian transformation operator can be applied to transform the MappedRepresentation into the placement coordinate system of the shape representation. The transformation of the representation map is restricted to be a Cartesian transformation mapping (translation, rotation, mirroring and scaling). /// -/// NOTE  The definition of a mapping which is used to specify a new representation item comprises a representation map and a mapped item entity. Without both entities, the mapping is not fully defined. Two entities are specified to allow the same source representation to be mapped into multiple new representations. +/// NOTE  The definition of a mapping which is used to specify a new representation item comprises a representation map and a mapped item entity. Without both entities, the mapping is not fully defined. Two entities are specified to allow the same source representation to be mapped into multiple new representations. /// -/// HISTORY  New entity in IFC Release 2x. +/// HISTORY  New entity in IFC Release 2x. class IfcRepresentationMap : public IfcBaseEntity { public: /// An axis2 placement that defines the position about which the mapped @@ -9654,7 +9657,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRibPlateProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRibPlateProfileProperties (IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcPositiveLengthMeasure v3_Thickness, IfcPositiveLengthMeasure v4_RibHeight, IfcPositiveLengthMeasure v5_RibWidth, IfcPositiveLengthMeasure v6_RibSpacing, IfcRibPlateDirectionEnum::IfcRibPlateDirectionEnum v7_Direction); + IfcRibPlateProfileProperties (optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_Thickness, optional v4_RibHeight, optional v5_RibWidth, optional v6_RibSpacing, IfcRibPlateDirectionEnum::IfcRibPlateDirectionEnum v7_Direction); typedef IfcRibPlateProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9677,7 +9680,7 @@ public: /// /// NOTE only the last modification in stored - either as addition, deletion or modification. /// - /// IFC2x4 CHANGE  The attribute has been changed to be OPTIONAL. + /// IFC2x4 CHANGE  The attribute has been changed to be OPTIONAL. IfcOwnerHistory* OwnerHistory(); void setOwnerHistory(IfcOwnerHistory* v); /// Whether the optional attribute Name is defined for this IfcRoot @@ -9698,7 +9701,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRoot (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRoot (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcRoot (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcRoot* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9719,7 +9722,7 @@ public: void setPrefix(IfcSIPrefix::IfcSIPrefix v); /// The word, or group of words, by which the SI unit is referred to. /// - /// NOTE  Even though the SI system's base unit for mass is kilogram, the IfcSIUnit for mass is gram if no Prefix is asserted. + /// NOTE  Even though the SI system's base unit for mass is kilogram, the IfcSIUnit for mass is gram if no Prefix is asserted. IfcSIUnitName::IfcSIUnitName Name(); void setName(IfcSIUnitName::IfcSIUnitName v); virtual unsigned int getArgumentCount() const { return 4; } @@ -9730,14 +9733,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSIUnit (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSIUnit (IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, IfcSIPrefix::IfcSIPrefix v3_Prefix, IfcSIUnitName::IfcSIUnitName v4_Name); + IfcSIUnit (IfcDimensionalExponents* v1_Dimensions, IfcUnitEnum::IfcUnitEnum v2_UnitType, optional v3_Prefix, IfcSIUnitName::IfcSIUnitName v4_Name); typedef IfcSIUnit* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcSectionProperties defines the cross section properties for a single longitudinal piece of a cross section. It is a special-purpose helper class for IfcSectionReinforcementProperties. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// The section piece may be either uniform or tapered. In the latter case an end profile should also be provided. The start and end profiles are assumed to be of the same profile type. Generally only rectangular or circular cross section profiles are assumed to be used. class IfcSectionProperties : public IfcBaseEntity { @@ -9768,7 +9771,7 @@ public: }; /// IfcSectionReinforcementProperties defines the cross section properties of reinforcement for a single longitudinal piece of a cross section with a specific reinforcement usage type. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Several sets of cross section reinforcement properties represented by instances of IfcReinforcementProperties may be attached to the section reinforcement properties /// (IfcReinforcementDefinitionProperties of IfcStructuralElementsDomain schema), @@ -9803,7 +9806,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSectionReinforcementProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSectionReinforcementProperties (IfcLengthMeasure v1_LongitudinalStartPosition, IfcLengthMeasure v2_LongitudinalEndPosition, IfcLengthMeasure v3_TransversePosition, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v4_ReinforcementRole, IfcSectionProperties* v5_SectionDefinition, SHARED_PTR< IfcTemplatedEntityList > v6_CrossSectionReinforcementDefinitions); + IfcSectionReinforcementProperties (IfcLengthMeasure v1_LongitudinalStartPosition, IfcLengthMeasure v2_LongitudinalEndPosition, optional v3_TransversePosition, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v4_ReinforcementRole, IfcSectionProperties* v5_SectionDefinition, SHARED_PTR< IfcTemplatedEntityList > v6_CrossSectionReinforcementDefinitions); typedef IfcSectionReinforcementProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9819,14 +9822,14 @@ public: /// product shape represent a distinctive part to a product /// that can be explicitly addressed. /// -/// NOTE ÿThe definition of +/// NOTE ÿThe definition of /// this class relates to the ISO 10303 entity shape_aspect. Please /// refer to ISO/IS 10303-41:1994 for the final definition of /// the formal standard. /// -/// HISTORY  New Entity in IFC Release 2.0 +/// HISTORY  New Entity in IFC Release 2.0 /// -/// IFC 2x4 CHANGE  Attribute +/// IFC 2x4 CHANGE  Attribute /// PartOfProductDefinitionShape declared OPTIONAL with /// upward compatibility for file based exchange. /// @@ -9838,9 +9841,9 @@ public: /// PartOfProductDefinitionShape must refer to this /// instance of IfcProductDefinitionShape. /// -/// NOTEÿ PartOfProductDefinitionShape is +/// NOTEÿ PartOfProductDefinitionShape is /// only to be omitted if the shape representations are -/// attached to an IfcRepresentationMap. ÿThis +/// attached to an IfcRepresentationMap. ÿThis /// enables the use of IfcShapeAspect with /// IfcRepresentationMap's that are used by an /// IfcTypeProduct through the @@ -9848,7 +9851,7 @@ public: class IfcShapeAspect : public IfcBaseEntity { public: /// List of shape representations. Each member defines a valid representation of a particular type within a particular representation context as being an aspect (or part) of a product definition. - /// IFC2x Edition 3 CHANGE  The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility + /// IFC2x Edition 3 CHANGE  The data type has been changed from IfcShapeRepresentation to IfcShapeModel with upward compatibility SHARED_PTR< IfcTemplatedEntityList > ShapeRepresentations(); void setShapeRepresentations(SHARED_PTR< IfcTemplatedEntityList > v); /// Whether the optional attribute Name is defined for this IfcShapeAspect @@ -9878,7 +9881,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcShapeAspect (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcShapeAspect (SHARED_PTR< IfcTemplatedEntityList > v1_ShapeRepresentations, IfcLabel v2_Name, IfcText v3_Description, bool v4_ProductDefinitional, IfcProductDefinitionShape* v5_PartOfProductDefinitionShape); + IfcShapeAspect (SHARED_PTR< IfcTemplatedEntityList > v1_ShapeRepresentations, optional v2_Name, optional v3_Description, bool v4_ProductDefinitional, IfcProductDefinitionShape* v5_PartOfProductDefinitionShape); typedef IfcShapeAspect* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -9897,10 +9900,10 @@ public: /// The IfcShapeModel can be a shape representation /// (geometric and/or topologogical) of a product (via /// IfcProductDefinitionShape), or a shape representation -/// (geometric and/or topologogical)  of a component of a product +/// (geometric and/or topologogical)  of a component of a product /// shape (via IfcShapeAspect). /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. class IfcShapeModel : public IfcRepresentation { public: virtual unsigned int getArgumentCount() const { return 4; } @@ -9912,7 +9915,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcShapeModel (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcShapeModel (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcShapeModel (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcShapeModel* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10047,11 +10050,11 @@ public: /// Table 1: string values for the inherited attribute /// 'RepresentationType'. /// -/// NOTE  The definition of this entity relates to the ISO 10303 entity shape_representation. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard. +/// NOTE  The definition of this entity relates to the ISO 10303 entity shape_representation. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. /// -/// IFC2x4 CHANGE  The RepresentationType's 'Curve3D', 'Surface2D', 'Surface3D', 'AdvancedBrep', 'LightSource', and the RepresentationIdentifier 'Lighting' have been added. +/// IFC2x4 CHANGE  The RepresentationType's 'Curve3D', 'Surface2D', 'Surface3D', 'AdvancedBrep', 'LightSource', and the RepresentationIdentifier 'Lighting' have been added. class IfcShapeRepresentation : public IfcShapeModel { public: virtual unsigned int getArgumentCount() const { return 4; } @@ -10062,14 +10065,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcShapeRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcShapeRepresentation (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcShapeRepresentation (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcShapeRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcSimpleProperty is a generalization of a single property object. The various subtypes of IfcSimpleProperty establish different ways in which a property value can be set. /// -/// HISTORY  New Entity in IFC Release 1.0, definition changed in IFC Release 2x. +/// HISTORY  New Entity in IFC Release 1.0, definition changed in IFC Release 2x. class IfcSimpleProperty : public IfcProperty { public: virtual unsigned int getArgumentCount() const { return 2; } @@ -10080,7 +10083,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSimpleProperty (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSimpleProperty (IfcIdentifier v1_Name, IfcText v2_Description); + IfcSimpleProperty (IfcIdentifier v1_Name, optional v2_Description); typedef IfcSimpleProperty* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10103,7 +10106,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralConnectionCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralConnectionCondition (IfcLabel v1_Name); + IfcStructuralConnectionCondition (optional v1_Name); typedef IfcStructuralConnectionCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10126,7 +10129,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoad (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoad (IfcLabel v1_Name); + IfcStructuralLoad (optional v1_Name); typedef IfcStructuralLoad* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10144,14 +10147,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadStatic (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadStatic (IfcLabel v1_Name); + IfcStructuralLoadStatic (optional v1_Name); typedef IfcStructuralLoadStatic* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An instance of the entity IfcStructuralLoadTemperature shall be used to define actions which are caused by a temperature change. As shown in Figure 332, the change of temperature is given with a constant value which is applied to the complete section and values for temperature differences between outer fibres of the section. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Figure 332 — Structural load temperature class IfcStructuralLoadTemperature : public IfcStructuralLoadStatic { @@ -10176,7 +10179,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadTemperature (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadTemperature (IfcLabel v1_Name, IfcThermodynamicTemperatureMeasure v2_DeltaT_Constant, IfcThermodynamicTemperatureMeasure v3_DeltaT_Y, IfcThermodynamicTemperatureMeasure v4_DeltaT_Z); + IfcStructuralLoadTemperature (optional v1_Name, optional v2_DeltaT_Constant, optional v3_DeltaT_Y, optional v4_DeltaT_Z); typedef IfcStructuralLoadTemperature* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10185,7 +10188,7 @@ public: /// /// IfcStyleModel can be a style representation (presentation style) of a material (via IfcMaterialDefinitionRepresentation), potentially differentiated for different representation contexts (for example, different material hatching depending on the scale of the target representation context). /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. class IfcStyleModel : public IfcRepresentation { public: virtual unsigned int getArgumentCount() const { return 4; } @@ -10196,23 +10199,23 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStyleModel (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStyleModel (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcStyleModel (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcStyleModel* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: The styled item is an assignment of style for presentation to a geometric representation item as it is used in a representation. /// -/// NOTE  Corresponding ISO 10303 name: styled_item. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: styled_item. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// The IfcStyledItem holds presentation style information for products, either explicitly for an IfcGeometricRepresentationItem being part of an IfcShapeRepresentation assigned to a product, or by assigning presentation information to IfcMaterial being assigned as other representation for a product. /// /// If the IfcStyledItem is used within a reference from an IfcProductDefinitionShape then one Item shall be provided. /// If the IfcStyledItem is used within a reference from an IfcMaterialDefinitionRepresentation then no Item shall be provided. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x2 Addendum 1 CHANGE  The entity IfcStyledItem has been made non abstract and the attribute Name added. +/// IFC2x2 Addendum 1 CHANGE  The entity IfcStyledItem has been made non abstract and the attribute Name added. /// /// IFC2x3 CHANGE The attribute Item has been made optional, upward compatibility for file /// based exchange is guaranteed. @@ -10226,7 +10229,7 @@ public: /// As a presentation for a geometric representation item /// As a presentation for a material definition /// -/// NOTE  The new IfcStyleAssignmentSelect allows the direct assignment styles, such as IfcCurveStyle, IfcSurfaceStyle without using the intermediate IfcPresentationStyleAssignment +/// NOTE  The new IfcStyleAssignmentSelect allows the direct assignment styles, such as IfcCurveStyle, IfcSurfaceStyle without using the intermediate IfcPresentationStyleAssignment /// /// Figure 293 — Styled item class IfcStyledItem : public IfcRepresentationItem { @@ -10259,18 +10262,18 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStyledItem (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStyledItem (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcStyledItem (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcStyledItem* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The IfcStyledRepresentation represents the concept of a styled presentation being a representation of a product or a product component, like material. within a representation context. This representation context does not need to be (but may be) a geometric representation context. /// -/// NOTE  Current usage of IfcStyledRepresentation is restricted to the assignment of presentation information to an material. The IfcStyledRepresentation includes only presentation styles (IfcCurveStyle, FillAreaStyle, IfcSurfaceStyle) that define how a material should be presented within a particular (eventually view and scale dependent) representation context. All instances of IfcStyledRepresentation are referenced by IfcMaterialDefinitionRepresentation, and assigned to IfcMaterial by IfcMaterialDefinitionRepresentation.RepresentedMaterial. +/// NOTE  Current usage of IfcStyledRepresentation is restricted to the assignment of presentation information to an material. The IfcStyledRepresentation includes only presentation styles (IfcCurveStyle, FillAreaStyle, IfcSurfaceStyle) that define how a material should be presented within a particular (eventually view and scale dependent) representation context. All instances of IfcStyledRepresentation are referenced by IfcMaterialDefinitionRepresentation, and assigned to IfcMaterial by IfcMaterialDefinitionRepresentation.RepresentedMaterial. /// /// A styled representation has to include one or several styled items with the associated style information (curve, symbol, text, fill area, or surface styles). It shall not contain the geometric representation items that are styled. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcStyledRepresentation : public IfcStyleModel { public: virtual unsigned int getArgumentCount() const { return 4; } @@ -10281,7 +10284,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStyledRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStyledRepresentation (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcStyledRepresentation (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcStyledRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10309,7 +10312,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSurfaceStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSurfaceStyle (IfcLabel v1_Name, IfcSurfaceSide::IfcSurfaceSide v2_Side, IfcEntities v3_Styles); + IfcSurfaceStyle (optional v1_Name, IfcSurfaceSide::IfcSurfaceSide v2_Side, IfcEntities v3_Styles); typedef IfcSurfaceStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10322,9 +10325,9 @@ public: /// /// All these factors can be measured physically and are ratios for the red, green and blue part of the light. These properties are defined in the model as Type IfcColorRGB with a factor for each colour. /// -/// EXAMPLE  A green glass transmits only green light, so its transmission factor is 0.0 for red, between 0.0 and 1.0 for green and 0.0 for blue. A green surface reflects only green light, so the reflectance factor is 0.0 for red, between 0.0 and 1.0 for green and 0.0 for blue. +/// EXAMPLE  A green glass transmits only green light, so its transmission factor is 0.0 for red, between 0.0 and 1.0 for green and 0.0 for blue. A green surface reflects only green light, so the reflectance factor is 0.0 for red, between 0.0 and 1.0 for green and 0.0 for blue. /// -/// HISTORY  New entity in IFC 2x2. +/// HISTORY  New entity in IFC 2x2. class IfcSurfaceStyleLighting : public IfcBaseEntity { public: /// The degree of diffusion of the transmitted light. In the case of completely transparent materials there is no diffusion. The greater the diffusing power, the smaller the direct component of the transmitted light, up to the point where only diffuse light is produced.A value of 1 means totally diffuse for that colour part of the light. @@ -10381,7 +10384,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSurfaceStyleRefraction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSurfaceStyleRefraction (IfcReal v1_RefractionIndex, IfcReal v2_DispersionFactor); + IfcSurfaceStyleRefraction (optional v1_RefractionIndex, optional v2_DispersionFactor); typedef IfcSurfaceStyleRefraction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10424,11 +10427,11 @@ public: /// /// Only one instance of IfcSurfaceStyleWithTextures shall be referenced by an IfcStyledItem and be assigned to an IfcGeometricRepresentationItem /// -/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. +/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  inverse attribute HasTextureCoordinates deleted. +/// IFC2x3 CHANGE  inverse attribute HasTextureCoordinates deleted. class IfcSurfaceStyleWithTextures : public IfcBaseEntity { public: /// The textures applied to the surface. In case of more than one surface texture is included, the IfcSurfaceStyleWithTexture defines a multi texture. @@ -10476,7 +10479,7 @@ public: /// Full RGB textures (three-component) /// Full RGB plus alpha opacity textures (four-component) /// -/// NOTE  Image formats specify an alpha opacity, not transparency (where alpha = 1 - transparency). +/// NOTE  Image formats specify an alpha opacity, not transparency (where alpha = 1 - transparency). /// /// Figure 295 illustrates the texture coordinate system. /// @@ -10484,7 +10487,7 @@ public: /// /// The following definitions from ISO/IEC 19775-1 X3D Architecture and base components (X3D Specification) on texture coordinates apply: /// -/// Texture maps are defined in a 2D coordinate system (s, t) that ranges from [0.0, 1.0] in both directions. The bottom edge of the image corresponds to the S-axis of the texture map, and left edge of the image corresponds to the T-axis of the texture map. The lower-left pixel of the image corresponds to s=0, t=0, and the top-right pixel of the image corresponds to s=1, t=1. Texture maps may be viewed as two dimensional colour functions that, given an (s, t) coordinate, return a colour value colour(s, t). +/// Texture maps are defined in a 2D coordinate system (s, t) that ranges from [0.0, 1.0] in both directions. The bottom edge of the image corresponds to the S-axis of the texture map, and left edge of the image corresponds to the T-axis of the texture map. The lower-left pixel of the image corresponds to s=0, t=0, and the top-right pixel of the image corresponds to s=1, t=1. Texture maps may be viewed as two dimensional colour functions that, given an (s, t) coordinate, return a colour value colour(s, t). /// /// If multiple surface textures are included in the /// IfcSurfaceStyleWithTextures applying them to a geometric @@ -10534,11 +10537,11 @@ public: /// scale S = TextureTransform.Scale /// scale T = TextureTransform.Scale2 /// -/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. +/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. /// -/// HISTORY  New entity in IFC 2x2. +/// HISTORY  New entity in IFC 2x2. /// -/// IFC2x4 CHANGE  Attribute TextureType replaces by Mode, attributes Parameter and MapsTo aded, new inverse attribute UsedInStyle. +/// IFC2x4 CHANGE  Attribute TextureType replaces by Mode, attributes Parameter and MapsTo aded, new inverse attribute UsedInStyle. class IfcSurfaceTexture : public IfcBaseEntity { public: /// The RepeatS field specifies how the texture wraps in the S direction. If RepeatS is TRUE (the default), the texture map is repeated outside the [0.0, 1.0] texture coordinate range in the S direction so that it fills the shape. If RepeatS is FALSE, the texture coordinates are clamped in the S direction to lie within the [0.0, 1.0] range. @@ -10587,7 +10590,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSymbolStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSymbolStyle (IfcLabel v1_Name, IfcSymbolStyleSelect v2_StyleOfSymbol); + IfcSymbolStyle (optional v1_Name, IfcSymbolStyleSelect v2_StyleOfSymbol); typedef IfcSymbolStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10604,9 +10607,9 @@ public: /// /// Figure 336 — Table use alternative /// -/// HISTORY  New entity in IFC R1.5. +/// HISTORY  New entity in IFC R1.5. /// -/// IFC2x4 CHANGE  Columns attribute added. +/// IFC2x4 CHANGE  Columns attribute added. class IfcTable : public IfcBaseEntity { public: /// A unique name which is intended to describe the usage of the Table. @@ -10640,7 +10643,7 @@ public: /// /// Figure 338 — Table row use alternative /// -/// HISTORY  New entity in IFC R1.5. +/// HISTORY  New entity in IFC R1.5. class IfcTableRow : public IfcBaseEntity { public: /// The data value of the table cell.. @@ -10707,7 +10710,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTelecomAddress (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTelecomAddress (IfcAddressTypeEnum::IfcAddressTypeEnum v1_Purpose, IfcText v2_Description, IfcLabel v3_UserDefinedPurpose, std::vector /*[1:?]*/ v4_TelephoneNumbers, std::vector /*[1:?]*/ v5_FacsimileNumbers, IfcLabel v6_PagerNumber, std::vector /*[1:?]*/ v7_ElectronicMailAddresses, IfcLabel v8_WWWHomePageURL); + IfcTelecomAddress (optional v1_Purpose, optional v2_Description, optional v3_UserDefinedPurpose, optional /*[1:?]*/> v4_TelephoneNumbers, optional /*[1:?]*/> v5_FacsimileNumbers, optional v6_PagerNumber, optional /*[1:?]*/> v7_ElectronicMailAddresses, optional v8_WWWHomePageURL); typedef IfcTelecomAddress* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10733,13 +10736,13 @@ public: /// /// An IfcTextStyle can be assigned to IfcTextLiteral via the IfcPresentationStyleAssignment through an intermediate IfcAnnotationTextOccurrence. /// -/// NOTE  Corresponding ISO 10303 name: text_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. In order to avoid ANDOR subtype relationships, the IfcTextBlockStyleSelect has been introduced that allows the combination of a text style as having box characteristic, and/or having spacing, or having none of those additional properties. +/// NOTE  Corresponding ISO 10303 name: text_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. In order to avoid ANDOR subtype relationships, the IfcTextBlockStyleSelect has been introduced that allows the combination of a text style as having box characteristic, and/or having spacing, or having none of those additional properties. /// -/// NOTE  Corresponding CSS1 definitions are: Font properties (font-family, font-style, font-variant, font-weight, font-size), Color and background properties (color, background-color) and Text properties (word-spacing, letter-spacing, text-decoration, text-transform, text-align, text-indent, line-height). +/// NOTE  Corresponding CSS1 definitions are: Font properties (font-family, font-style, font-variant, font-weight, font-size), Color and background properties (color, background-color) and Text properties (word-spacing, letter-spacing, text-decoration, text-transform, text-align, text-indent, line-height). /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The IfcTextStyle has been changed by adding TextFontStyle and different data types for TextStyle and IfcCharacterStyleSelect. +/// IFC2x3 CHANGE  The IfcTextStyle has been changed by adding TextFontStyle and different data types for TextStyle and IfcCharacterStyleSelect. class IfcTextStyle : public IfcPresentationStyle { public: /// Whether the optional attribute TextCharacterAppearance is defined for this IfcTextStyle @@ -10752,7 +10755,7 @@ public: /// The style applied to the text block for its visual appearance. /// It defines the text block characteristics, either for vector based or monospace text fonts (see select item IfcTextStyleWithBoxCharacteristics), or for true type text fonts (see select item IfcTextStyleTextModel. /// - /// IFC2x Edition 3 CHANGE  The attribute TextBlockStyle has been changed from SET[1:?] to a non-aggregated optional, it has been renamed from TextStyles. + /// IFC2x Edition 3 CHANGE  The attribute TextBlockStyle has been changed from SET[1:?] to a non-aggregated optional, it has been renamed from TextStyles. IfcTextStyleSelect TextStyle(); void setTextStyle(IfcTextStyleSelect v); /// The style applied to the text font for its visual appearance. @@ -10769,7 +10772,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTextStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTextStyle (IfcLabel v1_Name, IfcCharacterStyleSelect v2_TextCharacterAppearance, IfcTextStyleSelect v3_TextStyle, IfcTextFontSelect v4_TextFontStyle); + IfcTextStyle (optional v1_Name, optional v2_TextCharacterAppearance, optional v3_TextStyle, IfcTextFontSelect v4_TextFontStyle); typedef IfcTextStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10802,7 +10805,7 @@ public: /// face, but it doesn't contain a glyph /// for the current character, and if there is a next alternative /// 'font-family' in the font sets, then repeat step 2 with the next -/// alternative 'font-family'.  +/// alternative 'font-family'.  /// If there is no font within /// the family selected in 2, then use a /// UA-dependent default 'font-family' and repeat step 2, using the best @@ -10836,9 +10839,9 @@ public: /// /// The inherited Name attribute is used to define the font name, particularly in cases, where no (list of) font families are provided. /// -/// NOTE  Corresponding CSS1 definitions are Font properties ('font-family', 'font-style', 'font-variant',  'font-weight'). +/// NOTE  Corresponding CSS1 definitions are Font properties ('font-family', 'font-style', 'font-variant',  'font-weight'). /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. class IfcTextStyleFontModel : public IfcPreDefinedTextFont { public: /// Whether the optional attribute FontFamily is defined for this IfcTextStyleFontModel @@ -10854,17 +10857,17 @@ public: /// Whether the optional attribute FontVariant is defined for this IfcTextStyleFontModel bool hasFontVariant(); /// The font variant property selects between normal and small-caps. - /// NOTE  It has been introduced for later compliance to full CSS1 support. + /// NOTE  It has been introduced for later compliance to full CSS1 support. IfcFontVariant FontVariant(); void setFontVariant(IfcFontVariant v); /// Whether the optional attribute FontWeight is defined for this IfcTextStyleFontModel bool hasFontWeight(); /// The font weight property selects the weight of the font. - /// NOTE  Values other then 'normal' and 'bold' have been introduced for later compliance to full CSS1 support. + /// NOTE  Values other then 'normal' and 'bold' have been introduced for later compliance to full CSS1 support. IfcFontWeight FontWeight(); void setFontWeight(IfcFontWeight v); /// The font size provides the size or height of the text font. - /// NOTE  The following values are allowed, /*[1:?]*/ v2_FontFamily, IfcFontStyle v3_FontStyle, IfcFontVariant v4_FontVariant, IfcFontWeight v5_FontWeight, IfcSizeSelect v6_FontSize); + IfcTextStyleFontModel (IfcLabel v1_Name, optional /*[1:?]*/> v2_FontFamily, optional v3_FontStyle, optional v4_FontVariant, optional v5_FontWeight, IfcSizeSelect v6_FontSize); typedef IfcTextStyleFontModel* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10884,19 +10887,19 @@ public: /// /// Definition from CSS1 (W3C Recommendation): These properties describe the color (often called foreground color) and background of an element (i.e. the surface onto which the content is rendered). One can set a background color. /// -/// NOTE  The CSS1 definition allows also for a background image. This has not been incorporated into IFC. +/// NOTE  The CSS1 definition allows also for a background image. This has not been incorporated into IFC. /// /// The IfcTextStyleForDefinedFont combines the text font color with an optional background color, that fills the text box, defined by the planar extent given to the text literal. /// -/// NOTE  Corresponding ISO 10303 name: text_style_for_defined_font. Please refer to ISO/IS +/// NOTE  Corresponding ISO 10303 name: text_style_for_defined_font. Please refer to ISO/IS /// 10303-46:1994, p.122 for the final definition of the formal standard. The attribute BackgroundColour /// has been added. /// -/// NOTE  Corresponding CSS1 definitions are Color and background properties (color, background-color). +/// NOTE  Corresponding CSS1 definitions are Color and background properties (color, background-color). /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// -/// IFC2x3 CHANGE  The IfcTextStyleForDefinedFont has been added and replaces IfcColour at the IfcCharacterStyleSelect. +/// IFC2x3 CHANGE  The IfcTextStyleForDefinedFont has been added and replaces IfcColour at the IfcCharacterStyleSelect. class IfcTextStyleForDefinedFont : public IfcBaseEntity { public: /// This property describes the text color of an element (often referred to as the foreground color). @@ -10915,7 +10918,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTextStyleForDefinedFont (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTextStyleForDefinedFont (IfcColour v1_Colour, IfcColour v2_BackgroundColour); + IfcTextStyleForDefinedFont (IfcColour v1_Colour, optional v2_BackgroundColour); typedef IfcTextStyleForDefinedFont* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -10924,15 +10927,15 @@ public: /// /// The IfcTextStyleTextModel combines all text style properties, that affect the presentation of a text literal within a given extent. It includes the spacing between characters and words, the horizontal and vertical alignment of the text within the planar box of the extent, decorations (like underline), transformations of the literal (like uppercase), and the height of each text line within a multi-line text block. /// -/// NOTE  Corresponding CSS1 definitions are Text properties (word-spacing, letter-spacing, text-decoration, vertical-align, text-transform, text-align, text-indent, line-height). +/// NOTE  Corresponding CSS1 definitions are Text properties (word-spacing, letter-spacing, text-decoration, vertical-align, text-transform, text-align, text-indent, line-height). /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. class IfcTextStyleTextModel : public IfcBaseEntity { public: /// Whether the optional attribute TextIndent is defined for this IfcTextStyleTextModel bool hasTextIndent(); /// The property specifies the indentation that appears before the first formatted line. - /// NOTE  It has been introduced for later compliance to full CSS1 support. + /// NOTE  It has been introduced for later compliance to full CSS1 support. IfcSizeSelect TextIndent(); void setTextIndent(IfcSizeSelect v); /// Whether the optional attribute TextAlign is defined for this IfcTextStyleTextModel @@ -10948,26 +10951,26 @@ public: /// Whether the optional attribute LetterSpacing is defined for this IfcTextStyleTextModel bool hasLetterSpacing(); /// The length unit indicates an addition to the default space between characters. Values can be negative, but there may be implementation-specific limits. The user agent is free to select the exact spacing algorithm. The letter spacing may also be influenced by justification (which is a value of the 'align' property). - /// NOTE  The following values are allowed, IfcDescriptiveMeasure with value='normal', or IfcLengthMeasure, the length unit is globally defined at IfcUnitAssignment. + /// NOTE  The following values are allowed, IfcDescriptiveMeasure with value='normal', or IfcLengthMeasure, the length unit is globally defined at IfcUnitAssignment. IfcSizeSelect LetterSpacing(); void setLetterSpacing(IfcSizeSelect v); /// Whether the optional attribute WordSpacing is defined for this IfcTextStyleTextModel bool hasWordSpacing(); /// The length unit indicates an addition to the default space between words. Values can be negative, but there may be implementation-specific limits. The user agent is free to select the exact spacing algorithm. The word spacing may also be influenced by justification (which is a value of the 'text-align' property). - /// NOTE  It has been introduced for later compliance to full CSS1 support. + /// NOTE  It has been introduced for later compliance to full CSS1 support. IfcSizeSelect WordSpacing(); void setWordSpacing(IfcSizeSelect v); /// Whether the optional attribute TextTransform is defined for this IfcTextStyleTextModel bool hasTextTransform(); /// This property describes how text characters may transform to upper case, lower case, or capitalized case, independent of the character case used in the text literal. - /// NOTE  It has been introduced for later compliance to full CSS1 support. + /// NOTE  It has been introduced for later compliance to full CSS1 support. IfcTextTransformation TextTransform(); void setTextTransform(IfcTextTransformation v); /// Whether the optional attribute LineHeight is defined for this IfcTextStyleTextModel bool hasLineHeight(); /// The property sets the distance between two adjacent lines' baselines. /// When a ratio value is specified, the line height is given by the font size of the current element multiplied with the numerical value. A value of 'normal' sets the line height to a reasonable value for the element's font. It is suggested that user agents set the 'normal' value to be a ratio number in the range of 1.0 to 1.2. - /// NOTE  The following values are allowed: IfcDescriptiveMeasure with value='normal', or + /// NOTE  The following values are allowed: IfcDescriptiveMeasure with value='normal', or /// IfcLengthMeasure, with non-negative values, the length unit is globally defined at IfcUnitAssignment, or IfcRatioMeasure. IfcSizeSelect LineHeight(); void setLineHeight(IfcSizeSelect v); @@ -10979,14 +10982,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTextStyleTextModel (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTextStyleTextModel (IfcSizeSelect v1_TextIndent, IfcTextAlignment v2_TextAlign, IfcTextDecoration v3_TextDecoration, IfcSizeSelect v4_LetterSpacing, IfcSizeSelect v5_WordSpacing, IfcTextTransformation v6_TextTransform, IfcSizeSelect v7_LineHeight); + IfcTextStyleTextModel (optional v1_TextIndent, optional v2_TextAlign, optional v3_TextDecoration, optional v4_LetterSpacing, optional v5_WordSpacing, optional v6_TextTransform, optional v7_LineHeight); typedef IfcTextStyleTextModel* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The text style with box characteristics allows the presentation of annotated text by specifying the characteristics of the character boxes of the text and the spacing between the character boxes. /// -/// NOTE  The IfcTextStyleWithBoxCharacteristics is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. +/// NOTE  The IfcTextStyleWithBoxCharacteristics is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. /// /// The IfcTextStyleWithBoxCharacteristics is mainly used to provide some compatibility with ISO10303. Its usage is restricted to monospace text fonts (having uniform character boxes) and simple vector based text fonts. For true text fonts however the use of IfcTextStyleTextModel is required. /// @@ -10995,12 +10998,12 @@ public: /// Figure 296 — Text style box angles /// Figure 297 — Text style box attributes /// -/// NOTE  Corresponding ISO 10303 name: text_style_with_box_characteristics. Please refer to ISO/IS 10303-46:1994, p. 123 for the final definition of the formal standard. The four optional attributes BoxHeight, BoxWidth, BoxSlantAngle, BoxRotateAngle are included directly at the entity, and are not handled through the box_characteristic_select selecting box_height, box_width, box_slant_angle, box_rotate_angle, each being defined types.  +/// NOTE  Corresponding ISO 10303 name: text_style_with_box_characteristics. Please refer to ISO/IS 10303-46:1994, p. 123 for the final definition of the formal standard. The four optional attributes BoxHeight, BoxWidth, BoxSlantAngle, BoxRotateAngle are included directly at the entity, and are not handled through the box_characteristic_select selecting box_height, box_width, box_slant_angle, box_rotate_angle, each being defined types.  /// The CharacterSpacing attribute has been added from ISO/IS 10303-46:1994 entity text_style_with_spacing. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The attribute item CharacterSpacing has been added. +/// IFC2x3 CHANGE  The attribute item CharacterSpacing has been added. class IfcTextStyleWithBoxCharacteristics : public IfcBaseEntity { public: /// Whether the optional attribute BoxHeight is defined for this IfcTextStyleWithBoxCharacteristics @@ -11036,7 +11039,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTextStyleWithBoxCharacteristics (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTextStyleWithBoxCharacteristics (IfcPositiveLengthMeasure v1_BoxHeight, IfcPositiveLengthMeasure v2_BoxWidth, IfcPlaneAngleMeasure v3_BoxSlantAngle, IfcPlaneAngleMeasure v4_BoxRotateAngle, IfcSizeSelect v5_CharacterSpacing); + IfcTextStyleWithBoxCharacteristics (optional v1_BoxHeight, optional v2_BoxWidth, optional v3_BoxSlantAngle, optional v4_BoxRotateAngle, optional v5_CharacterSpacing); typedef IfcTextStyleWithBoxCharacteristics* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11045,13 +11048,13 @@ public: /// /// See relevant subtypes of IfcGeometricRepresentationItem for default texture mapping description. /// -/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. +/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The attribute Texture is deleted. +/// IFC2x3 CHANGE  The attribute Texture is deleted. /// -/// IFC2x4 CHANGE  The inverse attribute AnnotatedSurface is deleted, and the inverse AppliesTextures is added. +/// IFC2x4 CHANGE  The inverse attribute AnnotatedSurface is deleted, and the inverse AppliesTextures is added. class IfcTextureCoordinate : public IfcBaseEntity { public: virtual unsigned int getArgumentCount() const { return 0; } @@ -11088,21 +11091,21 @@ public: /// SPHERE-REFLECT, /// SPHERE-REFLECT-LOCAL /// -/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. +/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. /// /// HISTORY New entity in IFC2x2. /// -/// IFC2x2 Addendum 2 CHANGE  The attribute Texturehas been deleted. +/// IFC2x2 Addendum 2 CHANGE  The attribute Texturehas been deleted. class IfcTextureCoordinateGenerator : public IfcTextureCoordinate { public: /// The Mode attribute describes the algorithm used to compute texture coordinates. /// - /// NOTE  The applicable values for the Mode attribute are determined by view definitions or implementer agreements. It is recommended to use the modes described in ISO/IES 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1. See 18.4.8 TextureCoordinateGenerator for recommended values. + /// NOTE  The applicable values for the Mode attribute are determined by view definitions or implementer agreements. It is recommended to use the modes described in ISO/IES 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1. See 18.4.8 TextureCoordinateGenerator for recommended values. IfcLabel Mode(); void setMode(IfcLabel v); /// The parameters used as arguments by the function as specified by Mode. /// - /// IFC2x4 CHANGE  Made optional data type restricted to REAL. + /// IFC2x4 CHANGE  Made optional data type restricted to REAL. SHARED_PTR< IfcTemplatedEntityList > Parameter(); void setParameter(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 2; } @@ -11150,7 +11153,7 @@ public: /// specifies a set of 2D texture coordinates used by vertex-based /// geometry nodes to map textures to vertices. /// -/// NOTE  In contrary to the +/// NOTE  In contrary to the /// X3D vertext based geometry, for example IndexedFaceSet and /// ElevationGrid, the vertext based geometry in IFC may include inner /// loops. The areas of inner loops have to be cut-out from the texture @@ -11160,11 +11163,11 @@ public: /// /// Figure 301 — Texture map /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The attribute Texture is deleted, and the attribute TextureMaps is added. +/// IFC2x3 CHANGE  The attribute Texture is deleted, and the attribute TextureMaps is added. /// -/// IFC2x4 CHANGE  The attribute TextureMap is replaced by Vertices, and the attribute AppliedTo is added. +/// IFC2x4 CHANGE  The attribute TextureMap is replaced by Vertices, and the attribute AppliedTo is added. /// /// Informal propositions: /// @@ -11202,13 +11205,13 @@ public: /// coordinate C (s or t) is mapped into a texture map that has N pixels in /// the given direction as follows: /// -/// Texture map location = (C - floor(C)) × N +/// Texture map location = (C - floor(C)) × N /// /// If the texture map is not /// repeated, the texture coordinates are /// clamped to the 0.0 to 1.0 range as follows: /// -/// Texture map location = N, if C > 1.0, = 0.0, if C < 0.0, = C × N, if 0.0 ≤ C ≤ 1.0. +/// Texture map location = N, if C > 1.0, = 0.0, if C < 0.0, = C × N, if 0.0 ≤ C ≤ 1.0. /// /// Texture coordinates may be transformed (scaled, rotated, translated) by supplying a TextureTransform as a component of the texture's definition. /// @@ -11257,7 +11260,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcThermalMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcThermalMaterialProperties (IfcMaterial* v1_Material, IfcSpecificHeatCapacityMeasure v2_SpecificHeatCapacity, IfcThermodynamicTemperatureMeasure v3_BoilingPoint, IfcThermodynamicTemperatureMeasure v4_FreezingPoint, IfcThermalConductivityMeasure v5_ThermalConductivity); + IfcThermalMaterialProperties (IfcMaterial* v1_Material, optional v2_SpecificHeatCapacity, optional v3_BoilingPoint, optional v4_FreezingPoint, optional v5_ThermalConductivity); typedef IfcThermalMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11308,7 +11311,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTimeSeries (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTimeSeries (IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit); + IfcTimeSeries (IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit); typedef IfcTimeSeries* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11340,7 +11343,7 @@ public: /// /// Figure 241 — Time series value /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcTimeSeriesValue : public IfcBaseEntity { public: /// A list of time-series values. At least one value is required. @@ -11361,7 +11364,7 @@ public: }; /// Definition from ISO/CD 10303-42:1992: The topological representation item is the supertype for all the topological representation items in the geometry resource. /// -/// NOTE  Corresponding ISO 10303 entity: topological_representation_item. Please refer to ISO/IS 10303-42:1994, p.129 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: topological_representation_item. Please refer to ISO/IS 10303-42:1994, p.129 for the final definition of the formal standard. /// /// HISTORY: New entity in IFC Release 1.5 class IfcTopologicalRepresentationItem : public IfcRepresentationItem { @@ -11422,16 +11425,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTopologyRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTopologyRepresentation (IfcRepresentationContext* v1_ContextOfItems, IfcLabel v2_RepresentationIdentifier, IfcLabel v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); + IfcTopologyRepresentation (IfcRepresentationContext* v1_ContextOfItems, optional v2_RepresentationIdentifier, optional v3_RepresentationType, SHARED_PTR< IfcTemplatedEntityList > v4_Items); typedef IfcTopologyRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcUnitAssignment indicates a set of units which may be assigned. Within an IfcUnitAssigment each unit definition shall be unique; that is, there shall be no redundant unit definitions for the same unit type such as length unit or area unit. For currencies, there shall be only a single IfcMonetaryUnit within an IfcUnitAssignment. /// -/// NOTE  A project (IfcProject) has a unit assignment which establishes a set of units which will be used globally within the project, if not otherwise defined. Other objects may have local unit assignments if there is a requirement for them to make use of units which do not fall within the project unit assignment. +/// NOTE  A project (IfcProject) has a unit assignment which establishes a set of units which will be used globally within the project, if not otherwise defined. Other objects may have local unit assignments if there is a requirement for them to make use of units which do not fall within the project unit assignment. /// -/// HISTORY  New entity in IFC Release 1.5.1. +/// HISTORY  New entity in IFC Release 1.5.1. class IfcUnitAssignment : public IfcBaseEntity { public: /// Units to be included within a unit assignment. @@ -11452,9 +11455,9 @@ public: }; /// Definition from ISO/CD 10303-42:1992: A vertex is the topological construct corresponding to a point. It has dimensionality 0 and extent 0. The domain of a vertex, if present, is a point in m dimensional real space RM; this is represented by the vertex point subtype. /// -/// NOTE  Corresponding ISO 10303 entity: vertex. Please refer to ISO/IS 10303-42:1994, p. 129 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: vertex. Please refer to ISO/IS 10303-42:1994, p. 129 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC Release 2.0 +/// HISTORY  New Entity in IFC Release 2.0 /// /// Informal proposition: /// @@ -11495,9 +11498,9 @@ public: }; /// Definition from ISO/CD 10303-42:1992: A vertex point is a vertex which has its geometry defined as a point. /// -/// NOTE  Corresponding ISO 10303 entity: vertex_point. Please refer to ISO/IS 10303-42:1994, p. 130 for the final definition of the formal standard. Due to the general IFC model specification rule not to use multiple inheritance, the subtype relationship to geometric_representation_item is not included. +/// NOTE  Corresponding ISO 10303 entity: vertex_point. Please refer to ISO/IS 10303-42:1994, p. 130 for the final definition of the formal standard. Due to the general IFC model specification rule not to use multiple inheritance, the subtype relationship to geometric_representation_item is not included. /// -/// HISTORY  New Entity in IFC2x. +/// HISTORY  New Entity in IFC2x. /// /// Informal proposition: /// @@ -11535,7 +11538,7 @@ public: /// of IntersectingAxes[1] and the orthogonal complement of the IntersectingAxes[1] (which is the positive or negative /// direction of the z axis of the design grid position). /// -/// HISTORY  New entity in IFC Release 1.5. The entity name was changed from IfcConstraintRelIntersection in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5. The entity name was changed from IfcConstraintRelIntersection in IFC Release 2x. /// /// Informal Propositions: /// @@ -11638,7 +11641,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWaterProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWaterProperties (IfcMaterial* v1_Material, bool v2_IsPotable, IfcIonConcentrationMeasure v3_Hardness, IfcIonConcentrationMeasure v4_AlkalinityConcentration, IfcIonConcentrationMeasure v5_AcidityConcentration, IfcNormalisedRatioMeasure v6_ImpuritiesContent, IfcPHMeasure v7_PHLevel, IfcNormalisedRatioMeasure v8_DissolvedSolidsContent); + IfcWaterProperties (IfcMaterial* v1_Material, optional v2_IsPotable, optional v3_Hardness, optional v4_AlkalinityConcentration, optional v5_AcidityConcentration, optional v6_ImpuritiesContent, optional v7_PHLevel, optional v8_DissolvedSolidsContent); typedef IfcWaterProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11653,7 +11656,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcAnnotationOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcAnnotationOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11668,7 +11671,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationSurfaceOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationSurfaceOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcAnnotationSurfaceOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcAnnotationSurfaceOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11683,7 +11686,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationSymbolOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationSymbolOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcAnnotationSymbolOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcAnnotationSymbolOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11698,7 +11701,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationTextOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationTextOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcAnnotationTextOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcAnnotationTextOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11734,14 +11737,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcArbitraryClosedProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcArbitraryClosedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcCurve* v3_OuterCurve); + IfcArbitraryClosedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcCurve* v3_OuterCurve); typedef IfcArbitraryClosedProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The open profile IfcArbitraryOpenProfileDef defines an arbitrary two-dimensional open profile for the use within the swept surface geometry. It is given by an open boundary from with the surface can be constructed. /// -/// HISTORY  New entity in IFC2x. +/// HISTORY  New entity in IFC2x. /// /// Informal proposition: /// @@ -11767,14 +11770,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcArbitraryOpenProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcArbitraryOpenProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcBoundedCurve* v3_Curve); + IfcArbitraryOpenProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcBoundedCurve* v3_Curve); typedef IfcArbitraryOpenProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The IfcArbitraryProfileDefWithVoids defines an arbitrary closed two-dimensional profile with holes defined for the use for the swept area solid or a sectioned spine. It is given by an outer boundary and inner boundaries from with the solid the can be constructed. /// -/// HISTORY  New entity in IFC2x. +/// HISTORY  New entity in IFC2x. /// /// Informal propositions: /// @@ -11804,20 +11807,20 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcArbitraryProfileDefWithVoids (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcArbitraryProfileDefWithVoids (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcCurve* v3_OuterCurve, SHARED_PTR< IfcTemplatedEntityList > v4_InnerCurves); + IfcArbitraryProfileDefWithVoids (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcCurve* v3_OuterCurve, SHARED_PTR< IfcTemplatedEntityList > v4_InnerCurves); typedef IfcArbitraryProfileDefWithVoids* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcBlobTexture provides a 2-dimensional distribution of the lighting parameters of a surface onto which it is mapped. The texture itself is given as a single binary blob, representing the content of a pixel format file. The file format of the pixel file is given by the RasterFormat attribute and allowable formats are guided by where rule SupportedRasterFormat. /// -/// NOTE  Toolbox specific implementations of the binary datatype may restrict the maximum length of the binary blob to capture the raster file content. +/// NOTE  Toolbox specific implementations of the binary datatype may restrict the maximum length of the binary blob to capture the raster file content. /// /// For interpretation of the texture nodes see IfcImageTexture definition. /// -/// HISTORY  New class in IFC2x3. +/// HISTORY  New class in IFC2x3. /// -/// IFC2x4 CHANGE  Data type of RasterCode has been corrected to BINARY. +/// IFC2x4 CHANGE  Data type of RasterCode has been corrected to BINARY. class IfcBlobTexture : public IfcSurfaceTexture { public: /// The format of the RasterCode often using a compression. @@ -11854,7 +11857,7 @@ public: /// /// or a combination of them. See IfcProfileDef for guidance on external references for profiles. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// /// Informal proposition: /// @@ -11881,7 +11884,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCenterLineProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCenterLineProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcBoundedCurve* v3_Curve, IfcPositiveLengthMeasure v4_Thickness); + IfcCenterLineProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcBoundedCurve* v3_Curve, IfcPositiveLengthMeasure v4_Thickness); typedef IfcCenterLineProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11922,34 +11925,34 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcClassificationReference (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcClassificationReference (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name, IfcClassification* v4_ReferencedSource); + IfcClassificationReference (optional v1_Location, optional v2_ItemReference, optional v3_Name, IfcClassification* v4_ReferencedSource); typedef IfcClassificationReference* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: A colour rgb as a subtype of colour specifications is defined by three colour component values for red, green, and blue in the RGB colour model. /// -/// NOTE  In contrary to the usual value range of colour components being integer from 0...255, the definition from ISO10303-46 defines the colour components as real from 0.0 ... 1.0. Applications need to execute this conversion before populating the colour RGB values. +/// NOTE  In contrary to the usual value range of colour components being integer from 0...255, the definition from ISO10303-46 defines the colour components as real from 0.0 ... 1.0. Applications need to execute this conversion before populating the colour RGB values. /// -/// NOTE  Corresponding STEP name: colour_rgb. The name attribute has been omitted, the data type for the reg, green and blue parts is IfcNormalizedRatioMeasure, that already includes the range restrictions for the values. Please +/// NOTE  Corresponding STEP name: colour_rgb. The name attribute has been omitted, the data type for the reg, green and blue parts is IfcNormalizedRatioMeasure, that already includes the range restrictions for the values. Please /// refer to ISO/IS 10303-46:1994, p. 138 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcColourRgb : public IfcColourSpecification { public: /// The intensity of the red colour component. /// - /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. + /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. IfcNormalisedRatioMeasure Red(); void setRed(IfcNormalisedRatioMeasure v); /// The intensity of the green colour component. /// - /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. + /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. IfcNormalisedRatioMeasure Green(); void setGreen(IfcNormalisedRatioMeasure v); /// The intensity of the blue colour component. /// - /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. + /// NOTE  The colour component value is given within the range of 0..1, and not within the range of 0..255 as otherwise usual. IfcNormalisedRatioMeasure Blue(); void setBlue(IfcNormalisedRatioMeasure v); virtual unsigned int getArgumentCount() const { return 4; } @@ -11960,14 +11963,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcColourRgb (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcColourRgb (IfcLabel v1_Name, IfcNormalisedRatioMeasure v2_Red, IfcNormalisedRatioMeasure v3_Green, IfcNormalisedRatioMeasure v4_Blue); + IfcColourRgb (optional v1_Name, IfcNormalisedRatioMeasure v2_Red, IfcNormalisedRatioMeasure v3_Green, IfcNormalisedRatioMeasure v4_Blue); typedef IfcColourRgb* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcComplexProperty is used to define complex properties to be handled completely within a property set. The included set of properties may be a mixed or consistent collection of IfcProperty subtypes. This enables the definition of a set of properties to be included as a single 'property' entry in an IfcPropertySet. The definition of such an IfcComplexProperty can be reused in many different IfcPropertySet's. /// -/// NOTE  Since an IfcComplexProperty may contain other complex properties, sets of properties can be nested. This nesting may be restricted by view definitions and implementer agreements. +/// NOTE  Since an IfcComplexProperty may contain other complex properties, sets of properties can be nested. This nesting may be restricted by view definitions and implementer agreements. /// /// HISTORY New Entity in IFC Release 2.0, capabilities enhanced in IFC Release 2x. class IfcComplexProperty : public IfcProperty { @@ -11987,7 +11990,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcComplexProperty (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcComplexProperty (IfcIdentifier v1_Name, IfcText v2_Description, IfcIdentifier v3_UsageName, SHARED_PTR< IfcTemplatedEntityList > v4_HasProperties); + IfcComplexProperty (IfcIdentifier v1_Name, optional v2_Description, IfcIdentifier v3_UsageName, SHARED_PTR< IfcTemplatedEntityList > v4_HasProperties); typedef IfcComplexProperty* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -11998,7 +12001,7 @@ public: /// profile definition (except for another composite profile) can be used /// to construct the composite. /// -/// HISTORY  New entity in IFC2x. +/// HISTORY  New entity in IFC2x. /// /// Figure 314 illustrates the composite profile definition. The IfcCompositeProfileDef does not define an own position coordinate system, it is directly defined in the underlying coordinate system. The underlying coordinate system is defined by the swept surface or swept area solid that uses the profile definition. It is the xy plane of either: /// @@ -12010,7 +12013,7 @@ public: /// In case of parameterized profile definitions, the Position attribute of those standard profiles is used to place the profiles relatively to each other. /// In case of arbitrary profile definitions, each Cartesian coordinate is given directly within the underlying coordinate system. /// -/// NOTE  The black coordinate axes show the underlying coordinate system of the swept surface or swept area solid. +/// NOTE  The black coordinate axes show the underlying coordinate system of the swept surface or swept area solid. /// /// Figure 314 /// @@ -12020,14 +12023,14 @@ public: /// only be specified once. It is then included into the composite profile directly /// and additionally indirectly via IfcMirroredProfileDef. For example, a /// double angle made of two L100x10 with 10mm air gap between them, i.e. a -/// _| |_ shape, can be modeled as +/// _| |_ shape, can be modeled as /// /// single_L : IfcLShapeProfileDef := IfcLShapeProfileDef(AREA, 'L100X100X10', -///     IfcAxis2Placement2D(IfcCartesianPoint(((.100+.010)/2., .0)), ?), -///     .100, .100, .010, .012, ?, 0., ?, ?); -///   +///     IfcAxis2Placement2D(IfcCartesianPoint(((.100+.010)/2., .0)), ?), +///     .100, .100, .010, .012, ?, 0., ?, ?); +///   /// double_L : IfcCompositeProfileDef := IfcCompositeProfileDef(AREA, 'double angle', -///     (single_L, IfcMirroredProfileDef(AREA, ?, single_L, ?)), 'twin profile'); +///     (single_L, IfcMirroredProfileDef(AREA, ?, single_L, ?)), 'twin profile'); class IfcCompositeProfileDef : public IfcProfileDef { public: /// The profiles which are used to define the composite profile. @@ -12046,16 +12049,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCompositeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCompositeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, SHARED_PTR< IfcTemplatedEntityList > v3_Profiles, IfcLabel v4_Label); + IfcCompositeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, SHARED_PTR< IfcTemplatedEntityList > v3_Profiles, optional v4_Label); typedef IfcCompositeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-42:1992: A connected_face_set is a set of faces such that the domain of faces together with their bounding edges and vertices is connected. /// -/// NOTE  Corresponding ISO 10303 entity: connected_face_set, the subtype closed_shell is included as IfcClosedShell and the subtype open_shell is included as IfcOpenShell. Please refer to ISO/IS 10303-42:1994, p. 144 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: connected_face_set, the subtype closed_shell is included as IfcClosedShell and the subtype open_shell is included as IfcOpenShell. Please refer to ISO/IS 10303-42:1994, p. 144 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 /// /// Informal proposition: /// @@ -12080,14 +12083,14 @@ public: }; /// IfcConnectionCurveGeometry is used to describe the geometric constraints that facilitate the physical connection of two objects at a curve or at an edge with curve geometry associated. It is envisioned as a control that applies to the element connection relationships. /// -/// EXAMPLE  The connection relationship between two walls has a geometric constraint which describes the end caps (or cut-off of the wall ends) by a CurveOnRelatingElement for the first wall and a CurveOnRelatedElement for the second wall. The exact usage of the IfcConnectionCurveGeometry is further defined in the geometry use sections of the elements that use it. +/// EXAMPLE  The connection relationship between two walls has a geometric constraint which describes the end caps (or cut-off of the wall ends) by a CurveOnRelatingElement for the first wall and a CurveOnRelatedElement for the second wall. The exact usage of the IfcConnectionCurveGeometry is further defined in the geometry use sections of the elements that use it. /// /// The available geometry for the connection constraint may be further restricted to only allow straight segments by applying IfcPolyline -/// only. Such an usage constraint is provided at the object definition of the IfcElement subtype, utilizing the element connection by referring to the subtype of IfcRelConnects with the associated IfcConnectionCurveGeometry. +/// only. Such an usage constraint is provided at the object definition of the IfcElement subtype, utilizing the element connection by referring to the subtype of IfcRelConnects with the associated IfcConnectionCurveGeometry. /// -/// HISTORY  New entity in IFC Release 1.5, has been renamed from IfcLineConnectionGeometry in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5, has been renamed from IfcLineConnectionGeometry in IFC Release 2x. /// -/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcEdgeCurve, is enabled by using the IfcCurveOrEdgeCurve. +/// IFC2x Edition 3 CHANGE  The provision of topology with associated geometry, IfcEdgeCurve, is enabled by using the IfcCurveOrEdgeCurve. /// /// Geometry use definitions /// The IfcCurve (or the IfcEdgeCurve with an associated IfcCurve) at the CurveOnRelatingElement attribute defines the curve where the basic geometry items of the connected elements connects. The curve geometry and coordinates are provided within the local coordinate system of the RelatingElement, as specified at the IfcRelConnects Subtype that utilizes the IfcConnectionCurveGeometry. Optionally, the same curve geometry and coordinates can also be provided within the local coordinate system of the RelatedElement by using the CurveOnRelatedElement attribute. @@ -12109,19 +12112,19 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConnectionCurveGeometry (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConnectionCurveGeometry (IfcCurveOrEdgeCurve v1_CurveOnRelatingElement, IfcCurveOrEdgeCurve v2_CurveOnRelatedElement); + IfcConnectionCurveGeometry (IfcCurveOrEdgeCurve v1_CurveOnRelatingElement, optional v2_CurveOnRelatedElement); typedef IfcConnectionCurveGeometry* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcConnectionPointEccentricity is used to describe the geometric constraints that facilitate the physical connection of two objects at a point or vertex point with associated point coordinates. There is a physical distance, or eccentricity, etween the connection points of both object. The eccentricity can be either given by: /// -/// providing the PointOnRelatingElement and the PointOnRelatedElement, where bothÿpoint coordinates are not identical within a common parent coordinate system (latestly within the world coordinate system), +/// providing the PointOnRelatingElement and the PointOnRelatedElement, where bothÿpoint coordinates are not identical within a common parent coordinate system (latestly within the world coordinate system), /// providing the PointOnRelatingElement and the three distance measures, EccentricityInX, EccentricityInY, and EccentricityInZ (or only EccentricityInX, and EccentricityInY if the /// underlying coordinate system is two-dimensional), or /// providing both. /// -/// NOTEÿ If both, PointOnRelatedElement, and EccentricityInX, EccentricityInY, (EccentricityInZ) are provided, the values should be consistent. In case of any non-consistency, the calculated distance between PointOnRelatingElement and PointOnRelatedElement takes precedence. +/// NOTEÿ If both, PointOnRelatedElement, and EccentricityInX, EccentricityInY, (EccentricityInZ) are provided, the values should be consistent. In case of any non-consistency, the calculated distance between PointOnRelatingElement and PointOnRelatedElement takes precedence. /// /// The explicit values for EccentricityInX, EccentricityInY, and EccentricityInZ are always /// measured in the following direction and coordinate system (defining when the value is positive or negative): @@ -12129,7 +12132,7 @@ public: /// from the PointOnRelatedElement to PointOnRelatingElement within the coordinate system of the RelatingElement. /// in addition: when used to specify connections in structural analysis models, the IfcStructuralMember is to be used as the RelatingElement of the relationship object utilizing IfcConnectionPointEccentricity, and the IfcStructuralConnection is the RelatedElement. /// -/// HISTORYÿ New entity in IFC 2x Edition 3. +/// HISTORYÿ New entity in IFC 2x Edition 3. /// /// Geometry use definitions /// The IfcPoint (or the IfcVertexPoint with an associated IfcPoint) at the PointOnRelatingElement attribute defines the point where the basic geometry items of the connected elements connects. The point coordinates are provided within the local coordinate system of the RelatingElement, as specified at the IfcRelConnects subtype that utilizes the IfcConnectionPointGeometry. Optionally, the same point coordinates can also be provided within the local coordinate system of the RelatedElement by using the PointOnRelatedElement attribute, otherwise the distance to the point at the RelatedElement has to be given by the three eccentricity values. @@ -12158,7 +12161,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConnectionPointEccentricity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConnectionPointEccentricity (IfcPointOrVertexPoint v1_PointOnRelatingElement, IfcPointOrVertexPoint v2_PointOnRelatedElement, IfcLengthMeasure v3_EccentricityInX, IfcLengthMeasure v4_EccentricityInY, IfcLengthMeasure v5_EccentricityInZ); + IfcConnectionPointEccentricity (IfcPointOrVertexPoint v1_PointOnRelatingElement, optional v2_PointOnRelatedElement, optional v3_EccentricityInX, optional v4_EccentricityInY, optional v5_EccentricityInZ); typedef IfcConnectionPointEccentricity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12262,17 +12265,17 @@ public: /// /// Styles are intended to be shared by multiple IfcStyledItem's, assigning the style to occurrences of (subtypes of) IfcGeometricRepresentationItem's. Measures given to a font pattern or a curve width are given in global drawing length units. /// -/// NOTE  global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. +/// NOTE  global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. /// /// The measure values for font pattern and curve width apply to the model space with a target plot scale provided for the correct appearance in the default plot scale.. For different scale and projection dependent curve styles a different instance of IfcCurveStyle needs to be used by IfcPresentationStyleAssignment for different IfcGeometricRepresentationSubContext dependent representations. /// -/// NOTE  the target plot scale is given by IfcGeometricRepresentationSubContext.TargetScale. +/// NOTE  the target plot scale is given by IfcGeometricRepresentationSubContext.TargetScale. /// /// An IfcCurveStyle can be assigned to IfcGeometricRepresentationItem's via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or IfcAnnotationCurveOccurrence. /// -/// NOTE  Corresponding ISO 10303 name: curve_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: curve_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcCurveStyle : public IfcPresentationStyle { public: /// Whether the optional attribute CurveFont is defined for this IfcCurveStyle @@ -12298,7 +12301,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCurveStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCurveStyle (IfcLabel v1_Name, IfcCurveFontOrScaledCurveFontSelect v2_CurveFont, IfcSizeSelect v3_CurveWidth, IfcColour v4_CurveColour); + IfcCurveStyle (optional v1_Name, optional v2_CurveFont, optional v3_CurveWidth, optional v4_CurveColour); typedef IfcCurveStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12348,7 +12351,7 @@ public: /// Axis1 = NIL (defaults to 1.,0.) /// Axis2 = NIL (defaults to 0.,1.) /// LocalOrigin = IfcCartesianPoint(0.,<1/2 YDim) -/// Scale  = 1. +/// Scale  = 1. /// Scale2 = 2. /// /// Note: The ParentProfile has a Position @@ -12408,7 +12411,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDerivedProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDerivedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcProfileDef* v3_ParentProfile, IfcCartesianTransformationOperator2D* v4_Operator, IfcLabel v5_Label); + IfcDerivedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcProfileDef* v3_ParentProfile, IfcCartesianTransformationOperator2D* v4_Operator, optional v5_Label); typedef IfcDerivedProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12423,7 +12426,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDimensionCalloutRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDimensionCalloutRelationship (IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); + IfcDimensionCalloutRelationship (optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); typedef IfcDimensionCalloutRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12438,7 +12441,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDimensionPair (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDimensionPair (IfcLabel v1_Name, IfcText v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); + IfcDimensionPair (optional v1_Name, optional v2_Description, IfcDraughtingCallout* v3_RelatingDraughtingCallout, IfcDraughtingCallout* v4_RelatedDraughtingCallout); typedef IfcDimensionPair* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12465,7 +12468,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDocumentReference (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDocumentReference (IfcLabel v1_Location, IfcIdentifier v2_ItemReference, IfcLabel v3_Name); + IfcDocumentReference (optional v1_Location, optional v2_ItemReference, optional v3_Name); typedef IfcDocumentReference* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12477,9 +12480,9 @@ public: /// /// The ISO 3098-1 font A is the text font as denoted as Letterng A in clause 3 of ISO 3098-1, the ISO 3098-1 font B is the text font as denoted as Letterng B in clause 3 of ISO 3098-1. /// -/// NOTE  The IfcDraughtingPreDefinedTextFont is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 202: Application protocol: Associative draughting. Corresponding ISO 10303 name: draughting_pre_defined_text_font. Please refer to ISO/IS 10303-202:1994 page 196 for the final definition of the formal standard. +/// NOTE  The IfcDraughtingPreDefinedTextFont is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 202: Application protocol: Associative draughting. Corresponding ISO 10303 name: draughting_pre_defined_text_font. Please refer to ISO/IS 10303-202:1994 page 196 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcDraughtingPreDefinedTextFont : public IfcPreDefinedTextFont { public: virtual unsigned int getArgumentCount() const { return 1; } @@ -12536,9 +12539,9 @@ public: /// /// Figure 333 — Edge representation /// -/// NOTE  Corresponding ISO 10303 entity: edge. Please refer to ISO/IS 10303-42:1994, p. 130 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: edge. Please refer to ISO/IS 10303-42:1994, p. 130 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC Release 2.0 +/// HISTORY  New Entity in IFC Release 2.0 /// /// Informal propositions: /// @@ -12581,11 +12584,11 @@ public: /// /// Figure 334 — Edge curve /// -/// NOTE  Corresponding ISO 10303 entity: edge_curve. Please refer to ISO/IS 10303-42:1994, p. 132 +/// NOTE  Corresponding ISO 10303 entity: edge_curve. Please refer to ISO/IS 10303-42:1994, p. 132 /// for the final definition of the formal standard. Due to the general IFC model specification rule not to use multiple inheritance, the subtype relationship to geometric_representation_item is not included. /// ///
> v2_ExtendedProperties, IfcText v3_Description, IfcLabel v4_Name); + IfcExtendedMaterialProperties (IfcMaterial* v1_Material, SHARED_PTR< IfcTemplatedEntityList > v2_ExtendedProperties, optional v3_Description, IfcLabel v4_Name); typedef IfcExtendedMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12705,13 +12708,13 @@ public: /// where Gli is the graph genus of the /// i th loop. /// -/// NOTE  Corresponding ISO 10303 entity: face. No subtypes of face have been incorporated +/// NOTE  Corresponding ISO 10303 entity: face. No subtypes of face have been incorporated /// into this IFC Release. Please refer to ISO/IS 10303-42:1994, p. 140 for the /// final definition of the formal standard. The WR1 has not been incorporated, /// since it is always satisfied, due to the fact that only poly loops exist for /// face bounds. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 /// /// Informal propositions: /// @@ -12741,9 +12744,9 @@ public: }; /// Definition from ISO/CD 10303-42:1992: A face bound is a loop which is intended to be used for bounding a face. /// -/// NOTE  Corresponding ISO 10303 entity: face_bound. Please refer to ISO/IS 10303-42:1994, p. 139 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: face_bound. Please refer to ISO/IS 10303-42:1994, p. 139 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 class IfcFaceBound : public IfcTopologicalRepresentationItem { public: /// The loop which will be used as a face boundary. @@ -12799,13 +12802,13 @@ public: /// all the vertex points and edge curves are contained in the face geometry /// surface. A surface may be referenced by more than one face surface. /// -/// NOTE  Corresponding ISO 10303 entity: +/// NOTE  Corresponding ISO 10303 entity: /// face_surface. Please refer to ISO/IS 10303-42:1994, p. 204 for the final /// definition of the formal standard. Due to the general IFC model specification /// rule not to use multiple inheritance, the subtype relationship to /// geometric_representation_item is not included. /// -/// HISTORY  New class in IFC2x +/// HISTORY  New class in IFC2x /// /// Informal propositions: /// @@ -12889,7 +12892,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFailureConnectionCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFailureConnectionCondition (IfcLabel v1_Name, IfcForceMeasure v2_TensionFailureX, IfcForceMeasure v3_TensionFailureY, IfcForceMeasure v4_TensionFailureZ, IfcForceMeasure v5_CompressionFailureX, IfcForceMeasure v6_CompressionFailureY, IfcForceMeasure v7_CompressionFailureZ); + IfcFailureConnectionCondition (optional v1_Name, optional v2_TensionFailureX, optional v3_TensionFailureY, optional v4_TensionFailureZ, optional v5_CompressionFailureX, optional v6_CompressionFailureY, optional v7_CompressionFailureZ); typedef IfcFailureConnectionCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12900,34 +12903,34 @@ public: /// /// Solid fill for areas and surfaces by only assigning IfcColour to the set of FillStyles. It then provides the background colour for the filled area or surface. /// -/// NOTE  Color information of surfaces for rendering is assigned by using IfcSurfaceStyle, not by using IfcFillAreaStyle. +/// NOTE  Color information of surfaces for rendering is assigned by using IfcSurfaceStyle, not by using IfcFillAreaStyle. /// /// Vector based hatching for areas and surfaces based on a single row of hatch lines by assigning a single instance of IfcFillAreaStyleHatching to the set of FillStyles. If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching. Vector based hatching for areas and surfaces based on two (potentially crossing) rows of hatch lines by assigning two instances of IfcFillAreaStyleHatching to the set of FillStyles. /// /// If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching. /// -/// NOTE  Assigning more then two instances of IfcFillAreaStyleHatching to define three or more rows of hatch lines is not encouraged. +/// NOTE  Assigning more then two instances of IfcFillAreaStyleHatching to define three or more rows of hatch lines is not encouraged. /// /// Tiling for areas and surfaces by assigning a single instance of IfcFillAreaStyleTiles to the set of FillStyles. If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the tiling. /// -/// IFC2x3 NOTE  The use of IfcFillAreaStyleTiles is discouraged., as its definition might change is future releases. +/// IFC2x3 NOTE  The use of IfcFillAreaStyleTiles is discouraged., as its definition might change is future releases. /// /// Externally defined hatch style by assigning a single instance of IfcExternallyDefinedHatchStyle to the set of FillStyles. /// If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching. /// /// Measures given to a hatch or tile pattern are given in global drawing length units. /// -/// NOTE  Global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. +/// NOTE  Global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions. /// /// The measure values for hatch or tile pattern apply to the model space with a target plot scale provided for the correct appearance in the default plot scale. For different scale and projection dependent fill area styles a different instance of IfcFillAreaStyle needs to be used by IfcPresentationStyleAssignment for different IfcGeometricRepresentationSubContext dependent representations. /// -/// NOTE  the target plot scale is given by IfcGeometricRepresentationSubContext.TargetScale. +/// NOTE  the target plot scale is given by IfcGeometricRepresentationSubContext.TargetScale. /// /// An IfcFillAreaStyle can be assigned to IfcFillArea via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or subtype IfcAnnotationFillAreaOccurrence. /// -/// NOTE  Corresponding ISO 10303 name: fill_area_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: fill_area_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcFillAreaStyle : public IfcPresentationStyle { public: /// The set of fill area styles to use in presenting visible curve segments, annotation fill areas or surfaces. @@ -12941,7 +12944,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFillAreaStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFillAreaStyle (IfcLabel v1_Name, IfcEntities v2_FillStyles); + IfcFillAreaStyle (optional v1_Name, IfcEntities v2_FillStyles); typedef IfcFillAreaStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12972,7 +12975,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFuelProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFuelProperties (IfcMaterial* v1_Material, IfcThermodynamicTemperatureMeasure v2_CombustionTemperature, IfcPositiveRatioMeasure v3_CarbonContent, IfcHeatingValueMeasure v4_LowerHeatingValue, IfcHeatingValueMeasure v5_HigherHeatingValue); + IfcFuelProperties (IfcMaterial* v1_Material, optional v2_CombustionTemperature, optional v3_CarbonContent, optional v4_LowerHeatingValue, optional v5_HigherHeatingValue); typedef IfcFuelProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -12999,7 +13002,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGeneralMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGeneralMaterialProperties (IfcMaterial* v1_Material, IfcMolecularWeightMeasure v2_MolecularWeight, IfcNormalisedRatioMeasure v3_Porosity, IfcMassDensityMeasure v4_MassDensity); + IfcGeneralMaterialProperties (IfcMaterial* v1_Material, optional v2_MolecularWeight, optional v3_Porosity, optional v4_MassDensity); typedef IfcGeneralMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13034,7 +13037,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGeneralProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGeneralProfileProperties (IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea); + IfcGeneralProfileProperties (optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea); typedef IfcGeneralProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13060,7 +13063,7 @@ public: /// /// Figure 329 — Geometric representation context true north /// -/// NOTE ÿThe inherited attribute +/// NOTE ÿThe inherited attribute /// ContextType shall have one of the following recognized /// values: 'Sketch', 'Outline', 'Design', 'Detail', /// 'Model', 'Plan', @@ -13081,11 +13084,11 @@ public: /// /// Figure 330 — Geometric representation context use /// -/// NOTE  The definition of this class relates to the ISO 10303 entity geometric_representation_context. Please refer to ISO/IS 10303-42:1994 for the final definition of the formal standard. +/// NOTE  The definition of this class relates to the ISO 10303 entity geometric_representation_context. Please refer to ISO/IS 10303-42:1994 for the final definition of the formal standard. /// -/// HISTORY ÿNew Entity in IFC Release 2.0 +/// HISTORY ÿNew Entity in IFC Release 2.0 /// -/// IFC2x3 CHANGE ÿApplicable values for ContextType are only 'Model',ÿ 'Plan', andÿ'NotDefined'. All other sub contexts are now handled by the new subtype in IFC2x Edition 2 IfcGeometricRepresentationSubContext. Upward compatibility for file based exchange is guaranteed. +/// IFC2x3 CHANGE ÿApplicable values for ContextType are only 'Model',ÿ 'Plan', andÿ'NotDefined'. All other sub contexts are now handled by the new subtype in IFC2x Edition 2 IfcGeometricRepresentationSubContext. Upward compatibility for file based exchange is guaranteed. class IfcGeometricRepresentationContext : public IfcRepresentationContext { public: /// The integer dimension count of the coordinate space modeled in a geometric representation context. @@ -13098,7 +13101,7 @@ public: void setPrecision(double v); /// Establishment of the engineering coordinate system (often referred to as the world coordinate system in CAD) for all representation contexts used by the project. /// - /// Note  it can be used to provide better numeric stability if the placement of the building(s) is far away from the origin. In most cases however it would be set to origin: (0.,0.,0.) and directions x(1.,0.,0.), y(0.,1.,0.), z(0.,0.,1.). + /// Note  it can be used to provide better numeric stability if the placement of the building(s) is far away from the origin. In most cases however it would be set to origin: (0.,0.,0.) and directions x(1.,0.,0.), y(0.,1.,0.), z(0.,0.,1.). IfcAxis2Placement WorldCoordinateSystem(); void setWorldCoordinateSystem(IfcAxis2Placement v); /// Whether the optional attribute TrueNorth is defined for this IfcGeometricRepresentationContext @@ -13115,7 +13118,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGeometricRepresentationContext (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGeometricRepresentationContext (IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, double v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth); + IfcGeometricRepresentationContext (optional v1_ContextIdentifier, optional v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, optional v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth); typedef IfcGeometricRepresentationContext* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13157,15 +13160,15 @@ public: /// /// The IfcGeometricRepresentationSubContext is used to define semantically distinguished representation types for different information content, dependent on the representation view and the target scale. It can be used to control the level of detail of the shape representation that is most applicable to this geometric representation context. addition the sub context is used to control the later appearance of the IfcShapeRepresentation within a plot view. /// -/// NOTE  If the IfcShapeRepresentation using this sub context has IfcStyledItem's assigned to the Items, the presentation style information (e.g. IfcCurveStyle, IfcTextStyle) associated with the IfcStyledItem is given in target plot dimensions. For example, a line thickness (IfcCurveStyle.CurveWidth) is given by a thickness measure relating to the thickness for a plot within the (range of) target scale. +/// NOTE  If the IfcShapeRepresentation using this sub context has IfcStyledItem's assigned to the Items, the presentation style information (e.g. IfcCurveStyle, IfcTextStyle) associated with the IfcStyledItem is given in target plot dimensions. For example, a line thickness (IfcCurveStyle.CurveWidth) is given by a thickness measure relating to the thickness for a plot within the (range of) target scale. /// /// Each IfcProduct can then have several instances of subtypes of IfcRepresentation, each being assigned to a different geometric representation context (IfcGeometricRepresentationContext or IfcGeometricRepresentationSubContext). The application can then choose the most appropriate representation for showing the geometric shape of the product, depending on the target view and scale. /// -/// NOTE  The provision of a model view (IfcGeometricRepresentationContext.ContextType = 'Model') is mandatory. Instances of IfcGeometricRepresentationSubContext relate to it as its ParentContext. +/// NOTE  The provision of a model view (IfcGeometricRepresentationContext.ContextType = 'Model') is mandatory. Instances of IfcGeometricRepresentationSubContext relate to it as its ParentContext. /// -/// EXAMPLE  Instances of IfcGeometricRepresentationSubContext can be used to handle the multi-view blocks or macros, which are used in CAD programs to store several scale and/or view dependent geometric representations of the same object. +/// EXAMPLE  Instances of IfcGeometricRepresentationSubContext can be used to handle the multi-view blocks or macros, which are used in CAD programs to store several scale and/or view dependent geometric representations of the same object. /// -/// HISTORY  New entity in Release IFC 2x2. +/// HISTORY  New entity in Release IFC 2x2. class IfcGeometricRepresentationSubContext : public IfcGeometricRepresentationContext { public: /// Parent context from which the sub context derives its world coordinate system, precision, space coordinate dimension and true north. @@ -13202,7 +13205,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGeometricRepresentationSubContext (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGeometricRepresentationSubContext (IfcLabel v1_ContextIdentifier, IfcLabel v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, double v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth, IfcGeometricRepresentationContext* v7_ParentContext, IfcPositiveRatioMeasure v8_TargetScale, IfcGeometricProjectionEnum::IfcGeometricProjectionEnum v9_TargetView, IfcLabel v10_UserDefinedTargetView); + IfcGeometricRepresentationSubContext (optional v1_ContextIdentifier, optional v2_ContextType, IfcDimensionCount v3_CoordinateSpaceDimension, optional v4_Precision, IfcAxis2Placement v5_WorldCoordinateSystem, IfcDirection* v6_TrueNorth, IfcGeometricRepresentationContext* v7_ParentContext, optional v8_TargetScale, IfcGeometricProjectionEnum::IfcGeometricProjectionEnum v9_TargetView, optional v10_UserDefinedTargetView); typedef IfcGeometricRepresentationSubContext* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13243,14 +13246,14 @@ public: /// PlacementRefDirection = IfcDirection: by the explicitly provided direction information; /// PlacementRefDirection = IfcVirtualGridIntersection: by the tangent between the virtual grid intersection of PlacementLocation and the virtual grid intersection of PlacementRefDirection. Offsets as potentially provided in the IfcVirtualGridIntersection's of PlacementLocation and PlacementRefDirection have to be taken into account. /// -/// The direction of the y-axis of the IfcGridPlacement is the orthogonal complement to the x-axis. The plane defined by the x and y axis shall be co-planar to the xy plane of the local placement of the IfcGrid.ÿ +/// The direction of the y-axis of the IfcGridPlacement is the orthogonal complement to the x-axis. The plane defined by the x and y axis shall be co-planar to the xy plane of the local placement of the IfcGrid.ÿ /// The direction of the z-axis is the orientation of the cross product of the x-axis and the y-axis, i.e. the z-axis of the IfcGridPlacement shall be co-linear to the z-axis of the local placement of the IfcGrid. /// /// NOTE The IfcGrid local placement, that can be provided relative to the local placement of another spatial structure element, has to be taken into account for calculating the absolute placement of the virtual grid intersection. /// /// NOTE The PlacementLocation.OffsetDistances[3] and the PlacementRefDirection.OffsetDistances[3] shall either not be assigned or should have the same z offset value. /// -/// HISTORY ÿNew entity in IFC Release 1.5. The entity name was changed from IfcConstrainedPlacement in IFC Release 2x. +/// HISTORY ÿNew entity in IFC Release 1.5. The entity name was changed from IfcConstrainedPlacement in IFC Release 2x. /// /// IFC2x4 CHANGE Attribute data type of PlacementRefDirection has been changed to IfcGridPlacementDirectionSelect. /// @@ -13368,7 +13371,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcHygroscopicMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcHygroscopicMaterialProperties (IfcMaterial* v1_Material, IfcPositiveRatioMeasure v2_UpperVaporResistanceFactor, IfcPositiveRatioMeasure v3_LowerVaporResistanceFactor, IfcIsothermalMoistureCapacityMeasure v4_IsothermalMoistureCapacity, IfcVaporPermeabilityMeasure v5_VaporPermeability, IfcMoistureDiffusivityMeasure v6_MoistureDiffusivity); + IfcHygroscopicMaterialProperties (IfcMaterial* v1_Material, optional v2_UpperVaporResistanceFactor, optional v3_LowerVaporResistanceFactor, optional v4_IsothermalMoistureCapacity, optional v5_VaporPermeability, optional v6_MoistureDiffusivity); typedef IfcHygroscopicMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13403,11 +13406,11 @@ public: /// /// The Uniform Resource Locator (URL) is a form of an URI and specified in RFC1738 by IETF. It supports resources located on a particular server being accessed by a particular protocol (usually http), and resources located at a local machine. /// -/// NOTE  Exchange files following the ifcZIP convention may include a sub directory structure for image resources to be stored together with the product data set. +/// NOTE  Exchange files following the ifcZIP convention may include a sub directory structure for image resources to be stored together with the product data set. /// -/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. +/// NOTE  The definitions of texturing within this standard have been developed in dependence on the texture component of X3D. See ISO/IEC 19775-1.2:2008 X3D Architecture and base components Edition 2, Part 1, 18 Texturing component for the definitions in the international standard. /// -/// HISTORY  New entity in Release IFC2x2. +/// HISTORY  New entity in Release IFC2x2. class IfcImageTexture : public IfcSurfaceTexture { public: IfcIdentifier UrlReference(); @@ -13443,7 +13446,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcIrregularTimeSeries (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcIrregularTimeSeries (IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit, SHARED_PTR< IfcTemplatedEntityList > v9_Values); + IfcIrregularTimeSeries (IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit, SHARED_PTR< IfcTemplatedEntityList > v9_Values); typedef IfcIrregularTimeSeries* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13484,7 +13487,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSource (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity); + IfcLightSource (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity); typedef IfcLightSource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13506,7 +13509,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSourceAmbient (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSourceAmbient (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity); + IfcLightSourceAmbient (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity); typedef IfcLightSourceAmbient* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13534,7 +13537,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSourceDirectional (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSourceDirectional (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcDirection* v5_Orientation); + IfcLightSourceDirectional (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcDirection* v5_Orientation); typedef IfcLightSourceDirectional* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13576,7 +13579,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSourceGoniometric (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSourceGoniometric (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcAxis2Placement3D* v5_Position, IfcColourRgb* v6_ColourAppearance, IfcThermodynamicTemperatureMeasure v7_ColourTemperature, IfcLuminousFluxMeasure v8_LuminousFlux, IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum v9_LightEmissionSource, IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource); + IfcLightSourceGoniometric (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcAxis2Placement3D* v5_Position, IfcColourRgb* v6_ColourAppearance, IfcThermodynamicTemperatureMeasure v7_ColourTemperature, IfcLuminousFluxMeasure v8_LuminousFlux, IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum v9_LightEmissionSource, IfcLightDistributionDataSourceSelect v10_LightDistributionDataSource); typedef IfcLightSourceGoniometric* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13587,7 +13590,7 @@ public: /// /// Point light node's illumination falls off with distance as specified by three attenuation coefficients. The attenuation factor is /// -/// 1/max(attenuation[0] + attenuation[1] × r + attenuation[2] × r 2 , 1), +/// 1/max(attenuation[0] + attenuation[1] × r + attenuation[2] × r 2 , 1), /// /// where r is the distance from the light to the surface being illuminated. The default is no attenuation. An attenuation value of (0, 0, 0) is identical to (1, 0, 0). Attenuation values shall be greater than or equal to zero. /// @@ -13623,14 +13626,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSourcePositional (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSourcePositional (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation); + IfcLightSourcePositional (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation); typedef IfcLightSourcePositional* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: The light source spot entity is a subtype of light source. Spot light source entities have a light source colour, position, direction, attenuation coefficients, concentration exponent, and spread angle. If a point lies outside the cone of influence of a light source of this type as determined by the light source position, direction and spread angle its colour is not affected by that light source. /// -/// NOTE  The IfcLightSourceSpot adds the BeamWidthAngle which defines the inner cone in which the light source emits light at uniform full intensity. The light source's emission intensity drops off from the inner solid angle (BeamWidthAngle) to the outer solid angle (SpreadAngle). +/// NOTE  The IfcLightSourceSpot adds the BeamWidthAngle which defines the inner cone in which the light source emits light at uniform full intensity. The light source's emission intensity drops off from the inner solid angle (BeamWidthAngle) to the outer solid angle (SpreadAngle). /// /// Definition from ISO/IEC 14772-1:1997: The Spot light node defines a light source that emits light from a specific point along a specific direction vector and constrained within a solid angle. Spot lights may illuminate geometry nodes that respond to light sources and intersect the solid angle defined by the Spot light. Spot light nodes are specified in the local coordinate system and are affected by ancestors' transformations. /// @@ -13638,11 +13641,11 @@ public: /// /// Figure 304 — Light source spot /// -/// NOTE  Corresponding ISO 10303 entity: light_source_spot. Please refer to ISO/IS 10303-46:1994, p. 33 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: light_source_spot. Please refer to ISO/IS 10303-46:1994, p. 33 for the final definition of the formal standard. /// -/// NOTE  In addition to the attributes as defined in ISO10303-46 the additional property from ISO/IEC 14772-1:1997 (VRML) Radius, BeamWidth, and QuadricAttenuation are added to this subtype and the AmbientIntensity and Intensity are inherited from the supertype. +/// NOTE  In addition to the attributes as defined in ISO10303-46 the additional property from ISO/IEC 14772-1:1997 (VRML) Radius, BeamWidth, and QuadricAttenuation are added to this subtype and the AmbientIntensity and Intensity are inherited from the supertype. /// -/// HISTORY  This is a new entity in IFC 2x, renamed and enhanced in IFC2x2. +/// HISTORY  This is a new entity in IFC 2x, renamed and enhanced in IFC2x2. class IfcLightSourceSpot : public IfcLightSourcePositional { public: /// Definition from ISO/CD 10303-46:1992: This is the direction of the axis of the cone of the light source specified in the coordinate space of the representation being projected.. @@ -13670,7 +13673,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightSourceSpot (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightSourceSpot (IfcLabel v1_Name, IfcColourRgb* v2_LightColour, IfcNormalisedRatioMeasure v3_AmbientIntensity, IfcNormalisedRatioMeasure v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation, IfcDirection* v10_Orientation, IfcReal v11_ConcentrationExponent, IfcPositivePlaneAngleMeasure v12_SpreadAngle, IfcPositivePlaneAngleMeasure v13_BeamWidthAngle); + IfcLightSourceSpot (optional v1_Name, IfcColourRgb* v2_LightColour, optional v3_AmbientIntensity, optional v4_Intensity, IfcCartesianPoint* v5_Position, IfcPositiveLengthMeasure v6_Radius, IfcReal v7_ConstantAttenuation, IfcReal v8_DistanceAttenuation, IfcReal v9_QuadricAttenuation, IfcDirection* v10_Orientation, optional v11_ConcentrationExponent, IfcPositivePlaneAngleMeasure v12_SpreadAngle, IfcPositivePlaneAngleMeasure v13_BeamWidthAngle); typedef IfcLightSourceSpot* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13768,9 +13771,9 @@ public: /// where V and El are the number of unique /// vertices and oriented edges in the loop and Gl is the genus /// of the loop. -/// NOTE  Corresponding ISO 10303 entity: loop, the following subtypes have been incorporated into IFC: poly_loop as IfcPolyLoop, vertex_loop as IfcVertexLoop, edge_loop as IfcEdgeLoop. Please refer to ISO/IS 10303-42:1994, p. 136 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: loop, the following subtypes have been incorporated into IFC: poly_loop as IfcPolyLoop, vertex_loop as IfcVertexLoop, edge_loop as IfcEdgeLoop. Please refer to ISO/IS 10303-42:1994, p. 136 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC2x. +/// HISTORY  New Entity in IFC2x. /// Informal propositions: /// /// A loop has a finite extent. @@ -13797,13 +13800,13 @@ public: /// The IfcMappedItem is the inserted instance of a source definition (to be compared with a /// block / shared cell / macro definition). The instance is inserted by applying a Cartesian transformation operator as the MappingTarget. /// -/// EXAMPLE  An IfcMappedItem can reuse other mapped items (ako nested blocks), doing so the IfcRepresentationMap is based on an IfcShapeRepresentation including one or more IfcMappedItem's. +/// EXAMPLE  An IfcMappedItem can reuse other mapped items (ako nested blocks), doing so the IfcRepresentationMap is based on an IfcShapeRepresentation including one or more IfcMappedItem's. /// -/// NOTE   Corresponding ISO 10303 entity: mapped_item. Please refer to ISO/IS +/// NOTE   Corresponding ISO 10303 entity: mapped_item. Please refer to ISO/IS /// 10303-43:1994, for the final definition of the formal standard. The definition of mapping_target (MappingTarget) has been restricted to be of the type cartesian_transformation_operator /// (IfcCartesianTransformationOperator). /// -/// HISTORY  New entity in IFC Release 2x. +/// HISTORY  New entity in IFC Release 2x. /// /// Informal Propositions /// @@ -13832,7 +13835,7 @@ public: }; /// IfcMaterialDefinitionRepresentation defines presentation information relating to IfcMaterial. It allows for multiple presentations of the same material for different geometric representation contexts. /// -/// NOTE  The IfcMaterialDefinitionRepresentation is currently only used +/// NOTE  The IfcMaterialDefinitionRepresentation is currently only used /// to define presentation information to material used at element /// occurrences, defined as subtypes of IfcElement, or at /// element types, defined as subtypes of IfcElementType. The @@ -13849,11 +13852,11 @@ public: /// different presentation styles for different representation contexts, for example, a different style for sketch view, model view or plan view, or for different target scales, /// for each representation context is can apply curve style, fill area style (hatching), symbol, text and surface style. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// -/// IFC2x3 CHANGE  The entity IfcMaterialDefinitionRepresentation has been added. Upward compatibility for file based exchange is guaranteed. +/// IFC2x3 CHANGE  The entity IfcMaterialDefinitionRepresentation has been added. Upward compatibility for file based exchange is guaranteed. /// -/// IFC2x4 CHANGE  The assignment of curve, surface and other styles to an IfcStyledItem has been simplified by IfcStyleAssignmentSelect. The use of intermediate IfcPresentationStyleAssignment is deprecated. +/// IFC2x4 CHANGE  The assignment of curve, surface and other styles to an IfcStyledItem has been simplified by IfcStyleAssignmentSelect. The use of intermediate IfcPresentationStyleAssignment is deprecated. /// /// Use definition /// @@ -13873,7 +13876,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMaterialDefinitionRepresentation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMaterialDefinitionRepresentation (IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations, IfcMaterial* v4_RepresentedMaterial); + IfcMaterialDefinitionRepresentation (optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations, IfcMaterial* v4_RepresentedMaterial); typedef IfcMaterialDefinitionRepresentation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13912,7 +13915,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMechanicalConcreteMaterialProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMechanicalConcreteMaterialProperties (IfcMaterial* v1_Material, IfcDynamicViscosityMeasure v2_DynamicViscosity, IfcModulusOfElasticityMeasure v3_YoungModulus, IfcModulusOfElasticityMeasure v4_ShearModulus, IfcPositiveRatioMeasure v5_PoissonRatio, IfcThermalExpansionCoefficientMeasure v6_ThermalExpansionCoefficient, IfcPressureMeasure v7_CompressiveStrength, IfcPositiveLengthMeasure v8_MaxAggregateSize, IfcText v9_AdmixturesDescription, IfcText v10_Workability, IfcNormalisedRatioMeasure v11_ProtectivePoreRatio, IfcText v12_WaterImpermeability); + IfcMechanicalConcreteMaterialProperties (IfcMaterial* v1_Material, optional v2_DynamicViscosity, optional v3_YoungModulus, optional v4_ShearModulus, optional v5_PoissonRatio, optional v6_ThermalExpansionCoefficient, optional v7_CompressiveStrength, optional v8_MaxAggregateSize, optional v9_AdmixturesDescription, optional v10_Workability, optional v11_ProtectivePoreRatio, optional v12_WaterImpermeability); typedef IfcMechanicalConcreteMaterialProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -13957,7 +13960,7 @@ public: /// It applies the units, representation context and other context /// information to this object definition and all dependent ones. /// -/// EXCEPTION  The link +/// EXCEPTION  The link /// between the uppermost object in the spatial structure tree, that is /// IfcSite or ifcBuilding, and the context provided /// by IfcProject is created using the @@ -13981,14 +13984,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcObjectDefinition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcObjectDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcObjectDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcObjectDefinition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: A one time repeat factor is a vector used in the fill area style hatching and fill area style tiles entities for determining the origin of the repeated hatch line relative to the origin of the previous hatch line, Given the initial position of any hatch line, the one direction repeat factor determines two new positions according to the equation: /// -/// I + k * R    k X{-1,1} +/// I + k * R    k X{-1,1} /// /// NOTE: Corresponding ISO 10303 name: one_direction_repeat_factor. Please refer to ISO/IS 10303-46:1994, p. 112 for the final definition of the formal standard. /// @@ -14037,7 +14040,7 @@ public: /// vertices. The domain of an open shell, if present, contains all edges and /// vertices of its faces. /// -/// NOTE  Note that this is slightly different from the +/// NOTE  Note that this is slightly different from the /// definition of a face domain, which includes none of its bounds. For example, a /// face domain may exclude an isolated point or line segment. An open shell domain /// may not. (See the algorithm for computing below.) @@ -14047,11 +14050,11 @@ public: /// further specification, including the Euler formulas to be satisfied, please /// refer to ISO 10303-42:1994. /// -/// NOTE  Corresponding ISO 10303 entity: +/// NOTE  Corresponding ISO 10303 entity: /// open_shell, please refer to ISO/IS 10303-42:1994, p.148 for the final /// definition of the formal standard. /// -/// HISTORY  New class in IFC2x. +/// HISTORY  New class in IFC2x. /// /// Informal propositions: /// @@ -14087,11 +14090,11 @@ public: }; /// Definition from ISO/CD 10303-42:1992: An oriented edge is an edge constructed from another edge and contains a BOOLEAN direction flag to indicate whether or not the orientation of the constructed edge agrees with the orientation of the original edge. Except for perhaps orientation, the oriented edge is equivalent to the original edge. /// -/// NOTE  A common practice is solid modelling systems is to have an entity that represents the "use" or "traversal" of an edge. This "use" entity explicitly represents the requirement in a manifold solid that each edge must be traversed exactly twice, once in each direction. The "use" functionality is provided by the edge subtype oriented edge. +/// NOTE  A common practice is solid modelling systems is to have an entity that represents the "use" or "traversal" of an edge. This "use" entity explicitly represents the requirement in a manifold solid that each edge must be traversed exactly twice, once in each direction. The "use" functionality is provided by the edge subtype oriented edge. /// -/// NOTE  Corresponding ISO 10303 entity: oriented_edge. Please refer to ISO/IS 10303-42:1994, p. 133 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: oriented_edge. Please refer to ISO/IS 10303-42:1994, p. 133 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC Release 2.0. +/// HISTORY  New Entity in IFC Release 2.0. class IfcOrientedEdge : public IfcEdge { public: /// Edge entity used to construct this oriented edge. @@ -14140,19 +14143,19 @@ public: /// is given; see guidance at IfcProfileDef), or estimate them, or /// simply assume zero values. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x Platform CHANGE  The IfcParameterizedProfileDef +/// IFC2x Platform CHANGE  The IfcParameterizedProfileDef /// is introduced as an intermediate new abstract entity that unifies the /// definition and usage of the position coordinate system for all /// parameterized profiles. The Position attribute has been removed at all /// subtypes (like IfcRectangleProfileDef, IfcCircleProfileDef, /// etc.). /// -/// IFC2x3 CHANGE  All profile origins are now in the center +/// IFC2x3 CHANGE  All profile origins are now in the center /// of the bounding box. /// -/// IFC2x4 CHANGE  Position attribute made optional (default: identity transformation). +/// IFC2x4 CHANGE  Position attribute made optional (default: identity transformation). /// Several radius parameters in subtypes have been changed from optional IfcPositiveLengthMeasure (assumed default: 0.) to optional IfcNonNegativeLengthMeasure (default: unspecified). This change allows to explicitly specify zero radius. Sending systems shall export 0. values if parameters are known to be 0. /// Subtypes IfcCraneRailAShapeProfileDef and IfcCraneRailFShapeProfileDef deleted. Rail profiles shall be modeled as IfcArbitraryClosedProfileDef or as IfcAsymmetricIShapeProfileDef together with appropriate external reference. class IfcParameterizedProfileDef : public IfcProfileDef { @@ -14168,7 +14171,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcParameterizedProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcParameterizedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position); + IfcParameterizedProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position); typedef IfcParameterizedProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14177,9 +14180,9 @@ public: /// /// An individual edge can only be referenced once by an individual path. An edge can be referenced by multiple paths. An edge can exist independently of a path. /// -/// NOTE  Corresponding ISO 10303 entity: path. Please refer to ISO/IS 10303-42:1994, p. 133 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: path. Please refer to ISO/IS 10303-42:1994, p. 133 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC Release 2.0 +/// HISTORY  New Entity in IFC Release 2.0 /// /// Informal proposition: /// @@ -14211,9 +14214,9 @@ public: /// /// A section "Quantity Use Definition" at individual entities as subtypes of IfcBuildingElement gives guidance to the usage of the Name and Discrimination attribute to characterize the complex quantities. /// -/// HISTORY  New entity in IFC2x2 Addendum 1. +/// HISTORY  New entity in IFC2x2 Addendum 1. /// -/// IFC2x2 ADDENDUM 1 CHANGE  The entity IfcPhysicalComplexQuantity has been added. Upward compatibility for file based exchange is guaranteed. +/// IFC2x2 ADDENDUM 1 CHANGE  The entity IfcPhysicalComplexQuantity has been added. Upward compatibility for file based exchange is guaranteed. class IfcPhysicalComplexQuantity : public IfcPhysicalQuantity { public: /// Set of physical quantities that are grouped by this complex physical quantity according to a given discrimination. @@ -14240,7 +14243,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPhysicalComplexQuantity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPhysicalComplexQuantity (IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_HasQuantities, IfcLabel v4_Discrimination, IfcLabel v5_Quality, IfcLabel v6_Usage); + IfcPhysicalComplexQuantity (IfcLabel v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_HasQuantities, IfcLabel v4_Discrimination, optional v5_Quality, optional v6_Usage); typedef IfcPhysicalComplexQuantity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14252,7 +14255,7 @@ public: /// /// The PixelTexture node defines a 2D image-based texture map as an explicit array of pixel values (image field) and parameters controlling tiling repetition of the texture onto geometry. /// Texture maps are defined in a 2D coordinate system (s, t) that ranges from 0.0 to 1.0 in both directions. The bottom edge of the pixel image corresponds to the S-axis of the texture map, and left edge of the pixel image corresponds to the T-axis of the texture map. The lower-left pixel of the pixel image corresponds to s=0.0, t=0.0, and the top-right pixel of the image corresponds to s = 1.0, t = 1.0. -/// The Image field specifies a single uncompressed 2-dimensional pixel image. Image fields contain three integers representing the width, height and number of components in the image, followed by width×height hexadecimal values representing the pixels in the image. Pixel values are limited to 256 levels of intensity (that is, 0x00-0xFF hexadecimal). +/// The Image field specifies a single uncompressed 2-dimensional pixel image. Image fields contain three integers representing the width, height and number of components in the image, followed by width×height hexadecimal values representing the pixels in the image. Pixel values are limited to 256 levels of intensity (that is, 0x00-0xFF hexadecimal). /// /// A one-component image specifies one-byte hexadecimal value representing the intensity of the image. For example, 0xFF is full intensity in hexadecimal (255 in decimal), 0x00 is no intensity (0 in decimal). /// A two-component image specifies the intensity in the first @@ -14276,7 +14279,7 @@ public: void setColourComponents(IfcInteger v); /// Flat list of hexadecimal values, each describing one pixel by 1, 2, 3, or 4 components. /// - /// IFC2x Edition 3 CHANGE  The data type has been changed from STRING to BINARY. + /// IFC2x Edition 3 CHANGE  The data type has been changed from STRING to BINARY. std::vector /*[1:?]*/ Pixel(); void setPixel(std::vector /*[1:?]*/ v); virtual unsigned int getArgumentCount() const { return 8; } @@ -14321,9 +14324,9 @@ public: }; /// The planar extent defines the extent along the two axes of the two-dimensional coordinate system, independently of its position. /// -/// NOTE  Corresponding ISO 10303 name: planar_extent. Please refer to ISO/IS 10303-46:1994, p. 141 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: planar_extent. Please refer to ISO/IS 10303-46:1994, p. 141 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcPlanarExtent : public IfcGeometricRepresentationItem { public: /// The extent in the direction of the x-axis. @@ -14433,11 +14436,11 @@ public: /// by an ordered coplanar collection of points forming the vertices of the /// loop. The loop is composed of straight line segments joining a point in /// the collection to the succeeding point in the collection. The closing -/// segment is from the last to the first point in the collection.  +/// segment is from the last to the first point in the collection.  /// The direction of the loop is in the direction of the line /// segments. /// -/// NOTE  This entity exists primarily to facilitate the efficient communication of faceted B-rep models. +/// NOTE  This entity exists primarily to facilitate the efficient communication of faceted B-rep models. /// /// A poly loop shall conform to the following topological /// constraints: @@ -14450,17 +14453,17 @@ public: /// in the list of Polygon's to the first IfcCartesianPoint. /// Therefore the first point shall not be repeated at the end of the list, /// neither by referencing the same instance, nor by using an additional -/// instance of IfcCartesianPoint having the +/// instance of IfcCartesianPoint having the /// coordinates as the first point. /// -/// NOTE  Corresponding ISO 10303 entity: poly_loop. Please refer to ISO/IS +/// NOTE  Corresponding ISO 10303 entity: poly_loop. Please refer to ISO/IS /// 10303-42:1994, p. 138 for the final definition of the formal standard. /// Due to the general IFC model specification rule not to use multiple /// inheritance, the subtype relationship to geometric_representation_item /// is not included. The derived attribute Dim has been /// added at this level. /// -/// HISTORY   New class in IFC Release 1.0 +/// HISTORY   New class in IFC Release 1.0 /// /// Informal propositions: /// @@ -14490,7 +14493,7 @@ public: /// polygonal boundary. The base /// surface of the half space is positioned by its normal relativeto the /// object coordinate system -/// (as defined at the supertype IfcHalfSpaceSolid), and +/// (as defined at the supertype IfcHalfSpaceSolid), and /// its polygonal (with or without arc segments) boundary is defined in the /// XY plane of the position /// coordinate system established by the Position @@ -14506,9 +14509,9 @@ public: /// one the normal points away from. If the agreement flag is FALSE, then /// the subset is the one the normal points into. /// -/// NOTE  A polygonal bounded half space is not a subtype of IfcSolidModel, half space solids are only useful as operands in Boolean expressions. +/// NOTE  A polygonal bounded half space is not a subtype of IfcSolidModel, half space solids are only useful as operands in Boolean expressions. /// -/// HISTORY  New class in IFC Release 2x. +/// HISTORY  New class in IFC Release 2x. /// /// Informal propositions: /// @@ -14517,7 +14520,7 @@ public: /// shall be closed. /// If the PolygonalBoundary /// is given by an IfcCompositeCurve, it shall only -/// have IfcCompositeCurveSegment's of type IfcPolyline, +/// have IfcCompositeCurveSegment's of type IfcPolyline, /// or IfcTrimmedCurve (having a BasisCurve /// of type IfcLine, or IfcCircle) /// @@ -14547,7 +14550,7 @@ public: void setPosition(IfcAxis2Placement3D* v); /// Two-dimensional polyline bounded curve, defined in the xy plane of the position coordinate system. /// - /// IFC2x Edition 3 CHANGE  The attribute type has been changed from IfcPolyline to its supertype IfcBoundedCurve with upward compatibility for file based exchange. + /// IFC2x Edition 3 CHANGE  The attribute type has been changed from IfcPolyline to its supertype IfcBoundedCurve with upward compatibility for file based exchange. IfcBoundedCurve* PolygonalBoundary(); void setPolygonalBoundary(IfcBoundedCurve* v); virtual unsigned int getArgumentCount() const { return 4; } @@ -14565,9 +14568,9 @@ public: }; /// The pre defined colour determines those qualified names which can be used to identify a colour that is in scope of the current data exchange specification (in contrary to colour specification which defines the colour directly by its colour components). /// -/// NOTE  Corresponding ISO 10303 name: pre_defined_colour. It has been made into an abstract entity in IFC. Please refer to ISO/IS 10303-46:1994, p. 141 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: pre_defined_colour. It has been made into an abstract entity in IFC. Please refer to ISO/IS 10303-46:1994, p. 141 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcPreDefinedColour : public IfcPreDefinedItem { public: virtual unsigned int getArgumentCount() const { return 1; } @@ -14644,9 +14647,9 @@ public: /// /// or the topological representation items for connectivity systems (vertex, edge, face representations) that may include geometric representation items (vertex points, edge curves, face surfaces) /// -/// NOTE  The definition of this entity relates to the ISO 10303 entity product_definition_shape. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard. +/// NOTE  The definition of this entity relates to the ISO 10303 entity product_definition_shape. Please refer to ISO/IS 10303-41:1994 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC Release 1.5 +/// HISTORY  New Entity in IFC Release 1.5 class IfcProductDefinitionShape : public IfcProductRepresentation { public: virtual unsigned int getArgumentCount() const { return 3; } @@ -14659,7 +14662,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProductDefinitionShape (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProductDefinitionShape (IfcLabel v1_Name, IfcText v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations); + IfcProductDefinitionShape (optional v1_Name, optional v2_Description, SHARED_PTR< IfcTemplatedEntityList > v3_Representations); typedef IfcProductDefinitionShape* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14671,7 +14674,7 @@ public: /// and the second value specifying the lower bound. It defines /// a property - value bound (min-max) combination for which /// the property Name, an optional -/// Description,ÿthe optional UpperBoundValue +/// Description,ÿthe optional UpperBoundValue /// with measure type, the optional LowerBoundValue with /// measure type, and the optional Unit is given. /// @@ -14700,7 +14703,7 @@ public: /// LowerBoundValue or the UpperBoundValue is /// included in the interval. /// -/// NOTE  An IfcPropertyBoundedValue may be +/// NOTE  An IfcPropertyBoundedValue may be /// exchanged with no values assigned yet. In this case the /// LowerBoundValue and the UpperBoundValue are /// set to NIL. @@ -14757,11 +14760,11 @@ public: /// /// kg /// -/// HISTORY ÿNew entity in IFC Release 2x. +/// HISTORY ÿNew entity in IFC Release 2x. /// -/// IFC2x2 CHANGE  The attribute type of the attribute UpperBoundValue and LowerBoundValue has been changed from mandatory to optional with upward compatibility for file based exchange. +/// IFC2x2 CHANGE  The attribute type of the attribute UpperBoundValue and LowerBoundValue has been changed from mandatory to optional with upward compatibility for file based exchange. /// -/// IFC2x4 CHANGE  The attribute SetPointValue has been added. +/// IFC2x4 CHANGE  The attribute SetPointValue has been added. /// /// Informal proposition: /// @@ -14793,7 +14796,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyBoundedValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyBoundedValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcValue v3_UpperBoundValue, IfcValue v4_LowerBoundValue, IfcUnit v5_Unit); + IfcPropertyBoundedValue (IfcIdentifier v1_Name, optional v2_Description, optional v3_UpperBoundValue, optional v4_LowerBoundValue, optional v5_Unit); typedef IfcPropertyBoundedValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14820,12 +14823,12 @@ public: /// values, measure types and units, and are associated to an object /// occurrence or object type. /// -/// NOTE 1  The subtype hierarchy of IfcPropertyDefinition also includes statically defined property sets as IfcPreDefinedPropertySet. Those are rarely used collections of fixed attributes combined in an entity definition. The IfcPreDefinedPropertySet can not be determined by an IfcPropertySetTemplate. +/// NOTE 1  The subtype hierarchy of IfcPropertyDefinition also includes statically defined property sets as IfcPreDefinedPropertySet. Those are rarely used collections of fixed attributes combined in an entity definition. The IfcPreDefinedPropertySet can not be determined by an IfcPropertySetTemplate. /// -/// NOTE 2  Individual properties, (subtypes of IfcProperty), are currently not included in the subtype hierarchy of IfcPropertyDefinition. This anomaly is due to upward compatibility reasons with earlier releases of this +/// NOTE 2  Individual properties, (subtypes of IfcProperty), are currently not included in the subtype hierarchy of IfcPropertyDefinition. This anomaly is due to upward compatibility reasons with earlier releases of this /// standard. /// -/// HISTORY  New Entity in IFC2.0 +/// HISTORY  New Entity in IFC2.0 /// /// Relationship use definition /// Property definitions define information that is shared among @@ -14859,7 +14862,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyDefinition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcPropertyDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcPropertyDefinition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14868,11 +14871,11 @@ public: /// value, IfcPropertyEnumeratedValue, defines a property /// object which has a value assigned that is chosen from an /// enumeration. It defines a property - value combination for which -/// theÿproperty Name, an optional Description,ÿthe +/// theÿproperty Name, an optional Description,ÿthe /// optional EnumerationValues /// with measure type and optionally an Unit is given. /// -/// NOTE  Multiple choices from the property enumeration are supported. +/// NOTE  Multiple choices from the property enumeration are supported. /// /// The unit is handled by the Unit attribute of the /// IfcPropertyEnumeration: @@ -14892,18 +14895,18 @@ public: /// (see IfcPropertyEnumeration). This enables applications to /// use an enumeration value as a property within a property set /// (IfcPropertySet) including the allowed list of -/// values.ÿ +/// values.ÿ /// -/// NOTE  An IfcPropertyEnumeratedValue may be exchanged with no values assigned yet. In this case the EnumerationValues are set to NIL. +/// NOTE  An IfcPropertyEnumeratedValue may be exchanged with no values assigned yet. In this case the EnumerationValues are set to NIL. /// /// Examples of a property with enumerated value are: /// -/// Nameÿ +/// Nameÿ /// Value (EnumerationValue) /// Type (through /// IfcValue) /// ref.IfcPropertyEnumeration -/// (Name)ÿ +/// (Name)ÿ /// /// BladeAction /// Opposed @@ -14936,7 +14939,7 @@ public: /// referenced by multiple instances of /// IfcPropertyEnumeratedValue. /// -/// HISTORY ÿNew Entity in IFC Release 2.0, capabilities enhanced in IFC2x. The entity has +/// HISTORY ÿNew Entity in IFC Release 2.0, capabilities enhanced in IFC2x. The entity has /// been renamed from IfcEnumeratedProperty in IFC2x. /// /// IFC2x4 CHANGE Attribute EnumerationValues has been made OPTIONAL with upward @@ -14945,7 +14948,7 @@ class IfcPropertyEnumeratedValue : public IfcSimpleProperty { public: /// Enumeration values, which shall be listed in the referenced IfcPropertyEnumeration, if such a reference is provided. /// - /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. SHARED_PTR< IfcTemplatedEntityList > EnumerationValues(); void setEnumerationValues(SHARED_PTR< IfcTemplatedEntityList > v); /// Whether the optional attribute EnumerationReference is defined for this IfcPropertyEnumeratedValue @@ -14961,7 +14964,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyEnumeratedValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyEnumeratedValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_EnumerationValues, IfcPropertyEnumeration* v4_EnumerationReference); + IfcPropertyEnumeratedValue (IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_EnumerationValues, IfcPropertyEnumeration* v4_EnumerationReference); typedef IfcPropertyEnumeratedValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -14969,9 +14972,9 @@ public: /// An IfcPropertyListValue /// defines a property that has several (numeric or /// descriptive) values assigned, these values are given by an -/// ordered list.ÿIt defines a property - list value +/// ordered list.ÿIt defines a property - list value /// combination for which the property Name, an optional -/// Description,ÿthe optional ListValues with measure +/// Description,ÿthe optional ListValues with measure /// type and optionally an Unit is given. /// /// An IfcPropertyListValue is a list of values. The @@ -15028,14 +15031,14 @@ public: /// /// - /// -/// HISTORY  New Entity in Release IFC 2x Edition 2. +/// HISTORY  New Entity in Release IFC 2x Edition 2. /// -/// IFC2x4 CHANGE  Attribute ListValues has been made OPTIONAL with upward compatibility for file based exchange. +/// IFC2x4 CHANGE  Attribute ListValues has been made OPTIONAL with upward compatibility for file based exchange. class IfcPropertyListValue : public IfcSimpleProperty { public: /// List of property values. /// - /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. SHARED_PTR< IfcTemplatedEntityList > ListValues(); void setListValues(SHARED_PTR< IfcTemplatedEntityList > v); /// Whether the optional attribute Unit is defined for this IfcPropertyListValue @@ -15051,7 +15054,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyListValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyListValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_ListValues, IfcUnit v4_Unit); + IfcPropertyListValue (IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_ListValues, optional v4_Unit); typedef IfcPropertyListValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15064,11 +15067,11 @@ public: /// entities to be used as value references are given by the /// IfcObjectReferenceSelect. /// -/// HISTORY  New entity in IFC +/// HISTORY  New entity in IFC /// Release 1.5. Entity has been renamed from /// IfcObjectReference in IFC Release 2x. /// -/// IFC2x4 CHANGE  Attribute +/// IFC2x4 CHANGE  Attribute /// PropertyReference has been made OPTIONAL with upward /// compatibility for file based exchange. class IfcPropertyReferenceValue : public IfcSimpleProperty { @@ -15080,7 +15083,7 @@ public: void setUsageName(IfcLabel v); /// Reference to another property entity through one of the select types in the IfcObjectReferenceSelect. /// - /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. IfcObjectReferenceSelect PropertyReference(); void setPropertyReference(IfcObjectReferenceSelect v); virtual unsigned int getArgumentCount() const { return 4; } @@ -15091,7 +15094,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyReferenceValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyReferenceValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcLabel v3_UsageName, IfcObjectReferenceSelect v4_PropertyReference); + IfcPropertyReferenceValue (IfcIdentifier v1_Name, optional v2_Description, optional v3_UsageName, IfcObjectReferenceSelect v4_PropertyReference); typedef IfcPropertyReferenceValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15117,9 +15120,9 @@ public: /// the meaning of the properties is defined by the name and data type /// of the explicit attribute representing it. /// -/// HISTORY  New Entity in IFC Release 2x +/// HISTORY  New Entity in IFC Release 2x /// -/// IFC2x4 CHANGE  The subtype IfcPreDefinedPropertySet has been added. +/// IFC2x4 CHANGE  The subtype IfcPreDefinedPropertySet has been added. /// /// Relationship use definition /// Property set definitions define information that is shared among @@ -15137,7 +15140,7 @@ public: /// IfcRelDefinesByProperties that applies the property set, /// with all included properties, to the object occurrence. /// -/// NOTE  Properties assigned to object occurrences may override properties assigned to the object type. See IfcRelDefinesByType for further information. +/// NOTE  Properties assigned to object occurrences may override properties assigned to the object type. See IfcRelDefinesByType for further information. class IfcPropertySetDefinition : public IfcPropertyDefinition { public: virtual unsigned int getArgumentCount() const { return 4; } @@ -15150,7 +15153,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertySetDefinition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertySetDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcPropertySetDefinition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcPropertySetDefinition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15159,7 +15162,7 @@ public: /// IfcPropertySingleValue defines a property object which has /// a single (numeric or descriptive) value assigned. It defines a /// property - single value combination for which the property -/// Name, an optional Description,ÿand an optional +/// Name, an optional Description,ÿand an optional /// NominalValue with measure type is provided. In addition, /// the default unit as specified within the project unit context can /// be overriden by assigning an Unit. @@ -15196,18 +15199,18 @@ public: /// IfcThermalTransmittanceMeasure /// W/(m2K) /// -/// HISTORY ÿNew entity in IFC Release 1.0. The entity has been renamed from IfcSimpleProperty in IFC Release 2x. +/// HISTORY ÿNew entity in IFC Release 1.0. The entity has been renamed from IfcSimpleProperty in IFC Release 2x. /// -/// IFC2x3 CHANGE ÿAttribute NominalValue has been made OPTIONAL with upward compatibility for file based exchange. +/// IFC2x3 CHANGE ÿAttribute NominalValue has been made OPTIONAL with upward compatibility for file based exchange. class IfcPropertySingleValue : public IfcSimpleProperty { public: /// Whether the optional attribute NominalValue is defined for this IfcPropertySingleValue bool hasNominalValue(); /// Value and measure type of this property. /// - /// NOTE  By virtue of the defined data type, that is selected from the SELECT IfcValue, the appropriate unit can be found within the IfcUnitAssignment, defined for the project if no value for the unit attribute is given. + /// NOTE  By virtue of the defined data type, that is selected from the SELECT IfcValue, the appropriate unit can be found within the IfcUnitAssignment, defined for the project if no value for the unit attribute is given. /// - /// IFC2x3 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x3 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. IfcValue NominalValue(); void setNominalValue(IfcValue v); /// Whether the optional attribute Unit is defined for this IfcPropertySingleValue @@ -15223,7 +15226,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertySingleValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertySingleValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcValue v3_NominalValue, IfcUnit v4_Unit); + IfcPropertySingleValue (IfcIdentifier v1_Name, optional v2_Description, optional v3_NominalValue, optional v4_Unit); typedef IfcPropertySingleValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15296,7 +15299,7 @@ public: /// /// dB /// -/// ÿ +/// ÿ /// /// 200 /// @@ -15306,11 +15309,11 @@ public: /// /// IfcNumericMeasure /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// /// 400 /// @@ -15320,11 +15323,11 @@ public: /// /// IfcNumericMeasure /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// /// 800 /// @@ -15334,11 +15337,11 @@ public: /// /// IfcNumericMeasure /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// /// 1600 /// @@ -15348,11 +15351,11 @@ public: /// /// IfcNumericMeasure /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// /// 3200 /// @@ -15362,13 +15365,13 @@ public: /// /// IfcNumericMeasure /// -/// ÿ +/// ÿ /// -/// ÿ +/// ÿ /// /// HISTORY: New entity in IFC2x. /// -/// IFC2x4 CHANGE  Attributes DefiningValues and DefinedValues have been made OPTIONAL with upward compatibility for file based exchange. The attribute CurveInterpolation has been added.. +/// IFC2x4 CHANGE  Attributes DefiningValues and DefinedValues have been made OPTIONAL with upward compatibility for file based exchange. The attribute CurveInterpolation has been added.. /// /// Informal propositions: /// @@ -15378,12 +15381,12 @@ class IfcPropertyTableValue : public IfcSimpleProperty { public: /// List of defining values, which determine the defined values. This list shall have unique values only. /// - /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. SHARED_PTR< IfcTemplatedEntityList > DefiningValues(); void setDefiningValues(SHARED_PTR< IfcTemplatedEntityList > v); /// Defined values which are applicable for the scope as defined by the defining values. /// - /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. + /// IFC2x4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange. SHARED_PTR< IfcTemplatedEntityList > DefinedValues(); void setDefinedValues(SHARED_PTR< IfcTemplatedEntityList > v); /// Whether the optional attribute Expression is defined for this IfcPropertyTableValue @@ -15409,7 +15412,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertyTableValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertyTableValue (IfcIdentifier v1_Name, IfcText v2_Description, IfcEntities v3_DefiningValues, IfcEntities v4_DefinedValues, IfcText v5_Expression, IfcUnit v6_DefiningUnit, IfcUnit v7_DefinedUnit); + IfcPropertyTableValue (IfcIdentifier v1_Name, optional v2_Description, IfcEntities v3_DefiningValues, IfcEntities v4_DefinedValues, optional v5_Expression, optional v6_DefiningUnit, optional v7_DefinedUnit); typedef IfcPropertyTableValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15464,7 +15467,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRectangleProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRectangleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim); + IfcRectangleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim); typedef IfcRectangleProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15490,7 +15493,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRegularTimeSeries (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRegularTimeSeries (IfcLabel v1_Name, IfcText v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, IfcLabel v7_UserDefinedDataOrigin, IfcUnit v8_Unit, IfcTimeMeasure v9_TimeStep, SHARED_PTR< IfcTemplatedEntityList > v10_Values); + IfcRegularTimeSeries (IfcLabel v1_Name, optional v2_Description, IfcDateTimeSelect v3_StartTime, IfcDateTimeSelect v4_EndTime, IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum v5_TimeSeriesDataType, IfcDataOriginEnum::IfcDataOriginEnum v6_DataOrigin, optional v7_UserDefinedDataOrigin, optional v8_Unit, IfcTimeMeasure v9_TimeStep, SHARED_PTR< IfcTemplatedEntityList > v10_Values); typedef IfcRegularTimeSeries* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15539,7 +15542,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReinforcementDefinitionProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReinforcementDefinitionProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_DefinitionType, SHARED_PTR< IfcTemplatedEntityList > v6_ReinforcementSectionDefinitions); + IfcReinforcementDefinitionProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_DefinitionType, SHARED_PTR< IfcTemplatedEntityList > v6_ReinforcementSectionDefinitions); typedef IfcReinforcementDefinitionProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15562,16 +15565,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelationship (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelationship (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcRelationship (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcRelationship* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcRoundedRectangleProfileDef defines a rectangle with equally rounded corners as the profile definition used by the swept surface geometry or the swept area solid. It is given by the X extent, the Y extent, and the radius for the rounded corners, and placed within the 2D position coordinate system, established by the Position attribute. It is placed centric within the position coordinate system, that is, in the center of the bounding box. /// -/// HISTORY  New class in IFC2x. +/// HISTORY  New class in IFC2x. /// -/// IFC2x PLATFORM CHANGE  The IfcRoundedRectangleProfileDef is now subtyped from IfcRectangleProfileDef. The XDim and YDim attributes have been removed (now inherited from supertype). +/// IFC2x PLATFORM CHANGE  The IfcRoundedRectangleProfileDef is now subtyped from IfcRectangleProfileDef. The XDim and YDim attributes have been removed (now inherited from supertype). /// /// Figure 324 illustrates parameters of the rounded rectangle profile definition. /// @@ -15617,7 +15620,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRoundedRectangleProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRoundedRectangleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_RoundingRadius); + IfcRoundedRectangleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_RoundingRadius); typedef IfcRoundedRectangleProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15721,7 +15724,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcServiceLifeFactor (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcServiceLifeFactor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum v5_PredefinedType, IfcMeasureValue v6_UpperValue, IfcMeasureValue v7_MostUsedValue, IfcMeasureValue v8_LowerValue); + IfcServiceLifeFactor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum v5_PredefinedType, optional v6_UpperValue, IfcMeasureValue v7_MostUsedValue, optional v8_LowerValue); typedef IfcServiceLifeFactor* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15789,7 +15792,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSlippageConnectionCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSlippageConnectionCondition (IfcLabel v1_Name, IfcLengthMeasure v2_SlippageX, IfcLengthMeasure v3_SlippageY, IfcLengthMeasure v4_SlippageZ); + IfcSlippageConnectionCondition (optional v1_Name, optional v2_SlippageX, optional v3_SlippageY, optional v4_SlippageZ); typedef IfcSlippageConnectionCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15831,7 +15834,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSoundProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSoundProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcBoolean v5_IsAttenuating, IfcSoundScaleEnum::IfcSoundScaleEnum v6_SoundScale, SHARED_PTR< IfcTemplatedEntityList > v7_SoundValues); + IfcSoundProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcBoolean v5_IsAttenuating, optional v6_SoundScale, SHARED_PTR< IfcTemplatedEntityList > v7_SoundValues); typedef IfcSoundProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15856,7 +15859,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSoundValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSoundValue (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcTimeSeries* v5_SoundLevelTimeSeries, IfcFrequencyMeasure v6_Frequency, IfcDerivedMeasureValue v7_SoundLevelSingleValue); + IfcSoundValue (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcTimeSeries* v5_SoundLevelTimeSeries, IfcFrequencyMeasure v6_Frequency, optional v7_SoundLevelSingleValue); typedef IfcSoundValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15903,7 +15906,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpaceThermalLoadProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpaceThermalLoadProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveRatioMeasure v5_ApplicableValueRatio, IfcThermalLoadSourceEnum::IfcThermalLoadSourceEnum v6_ThermalLoadSource, IfcPropertySourceEnum::IfcPropertySourceEnum v7_PropertySource, IfcText v8_SourceDescription, IfcPowerMeasure v9_MaximumValue, IfcPowerMeasure v10_MinimumValue, IfcTimeSeries* v11_ThermalLoadTimeSeriesValues, IfcLabel v12_UserDefinedThermalLoadSource, IfcLabel v13_UserDefinedPropertySource, IfcThermalLoadTypeEnum::IfcThermalLoadTypeEnum v14_ThermalLoadType); + IfcSpaceThermalLoadProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableValueRatio, IfcThermalLoadSourceEnum::IfcThermalLoadSourceEnum v6_ThermalLoadSource, IfcPropertySourceEnum::IfcPropertySourceEnum v7_PropertySource, optional v8_SourceDescription, IfcPowerMeasure v9_MaximumValue, optional v10_MinimumValue, IfcTimeSeries* v11_ThermalLoadTimeSeriesValues, optional v12_UserDefinedThermalLoadSource, optional v13_UserDefinedPropertySource, IfcThermalLoadTypeEnum::IfcThermalLoadTypeEnum v14_ThermalLoadType); typedef IfcSpaceThermalLoadProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15953,7 +15956,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadLinearForce (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadLinearForce (IfcLabel v1_Name, IfcLinearForceMeasure v2_LinearForceX, IfcLinearForceMeasure v3_LinearForceY, IfcLinearForceMeasure v4_LinearForceZ, IfcLinearMomentMeasure v5_LinearMomentX, IfcLinearMomentMeasure v6_LinearMomentY, IfcLinearMomentMeasure v7_LinearMomentZ); + IfcStructuralLoadLinearForce (optional v1_Name, optional v2_LinearForceX, optional v3_LinearForceY, optional v4_LinearForceZ, optional v5_LinearMomentX, optional v6_LinearMomentY, optional v7_LinearMomentZ); typedef IfcStructuralLoadLinearForce* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -15988,7 +15991,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadPlanarForce (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadPlanarForce (IfcLabel v1_Name, IfcPlanarForceMeasure v2_PlanarForceX, IfcPlanarForceMeasure v3_PlanarForceY, IfcPlanarForceMeasure v4_PlanarForceZ); + IfcStructuralLoadPlanarForce (optional v1_Name, optional v2_PlanarForceX, optional v3_PlanarForceY, optional v4_PlanarForceZ); typedef IfcStructuralLoadPlanarForce* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16038,7 +16041,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadSingleDisplacement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadSingleDisplacement (IfcLabel v1_Name, IfcLengthMeasure v2_DisplacementX, IfcLengthMeasure v3_DisplacementY, IfcLengthMeasure v4_DisplacementZ, IfcPlaneAngleMeasure v5_RotationalDisplacementRX, IfcPlaneAngleMeasure v6_RotationalDisplacementRY, IfcPlaneAngleMeasure v7_RotationalDisplacementRZ); + IfcStructuralLoadSingleDisplacement (optional v1_Name, optional v2_DisplacementX, optional v3_DisplacementY, optional v4_DisplacementZ, optional v5_RotationalDisplacementRX, optional v6_RotationalDisplacementRY, optional v7_RotationalDisplacementRZ); typedef IfcStructuralLoadSingleDisplacement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16061,7 +16064,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadSingleDisplacementDistortion (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadSingleDisplacementDistortion (IfcLabel v1_Name, IfcLengthMeasure v2_DisplacementX, IfcLengthMeasure v3_DisplacementY, IfcLengthMeasure v4_DisplacementZ, IfcPlaneAngleMeasure v5_RotationalDisplacementRX, IfcPlaneAngleMeasure v6_RotationalDisplacementRY, IfcPlaneAngleMeasure v7_RotationalDisplacementRZ, IfcCurvatureMeasure v8_Distortion); + IfcStructuralLoadSingleDisplacementDistortion (optional v1_Name, optional v2_DisplacementX, optional v3_DisplacementY, optional v4_DisplacementZ, optional v5_RotationalDisplacementRX, optional v6_RotationalDisplacementRY, optional v7_RotationalDisplacementRZ, optional v8_Distortion); typedef IfcStructuralLoadSingleDisplacementDistortion* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16112,7 +16115,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadSingleForce (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadSingleForce (IfcLabel v1_Name, IfcForceMeasure v2_ForceX, IfcForceMeasure v3_ForceY, IfcForceMeasure v4_ForceZ, IfcTorqueMeasure v5_MomentX, IfcTorqueMeasure v6_MomentY, IfcTorqueMeasure v7_MomentZ); + IfcStructuralLoadSingleForce (optional v1_Name, optional v2_ForceX, optional v3_ForceY, optional v4_ForceZ, optional v5_MomentX, optional v6_MomentY, optional v7_MomentZ); typedef IfcStructuralLoadSingleForce* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16140,7 +16143,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadSingleForceWarping (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadSingleForceWarping (IfcLabel v1_Name, IfcForceMeasure v2_ForceX, IfcForceMeasure v3_ForceY, IfcForceMeasure v4_ForceZ, IfcTorqueMeasure v5_MomentX, IfcTorqueMeasure v6_MomentY, IfcTorqueMeasure v7_MomentZ, IfcWarpingMomentMeasure v8_WarpingMoment); + IfcStructuralLoadSingleForceWarping (optional v1_Name, optional v2_ForceX, optional v3_ForceY, optional v4_ForceZ, optional v5_MomentX, optional v6_MomentY, optional v7_MomentZ, optional v8_WarpingMoment); typedef IfcStructuralLoadSingleForceWarping* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16219,7 +16222,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralProfileProperties (IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea, IfcMomentOfInertiaMeasure v8_TorsionalConstantX, IfcMomentOfInertiaMeasure v9_MomentOfInertiaYZ, IfcMomentOfInertiaMeasure v10_MomentOfInertiaY, IfcMomentOfInertiaMeasure v11_MomentOfInertiaZ, IfcWarpingConstantMeasure v12_WarpingConstant, IfcLengthMeasure v13_ShearCentreZ, IfcLengthMeasure v14_ShearCentreY, IfcAreaMeasure v15_ShearDeformationAreaZ, IfcAreaMeasure v16_ShearDeformationAreaY, IfcSectionModulusMeasure v17_MaximumSectionModulusY, IfcSectionModulusMeasure v18_MinimumSectionModulusY, IfcSectionModulusMeasure v19_MaximumSectionModulusZ, IfcSectionModulusMeasure v20_MinimumSectionModulusZ, IfcSectionModulusMeasure v21_TorsionalSectionModulus, IfcLengthMeasure v22_CentreOfGravityInX, IfcLengthMeasure v23_CentreOfGravityInY); + IfcStructuralProfileProperties (optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea, optional v8_TorsionalConstantX, optional v9_MomentOfInertiaYZ, optional v10_MomentOfInertiaY, optional v11_MomentOfInertiaZ, optional v12_WarpingConstant, optional v13_ShearCentreZ, optional v14_ShearCentreY, optional v15_ShearDeformationAreaZ, optional v16_ShearDeformationAreaY, optional v17_MaximumSectionModulusY, optional v18_MinimumSectionModulusY, optional v19_MaximumSectionModulusZ, optional v20_MinimumSectionModulusZ, optional v21_TorsionalSectionModulus, optional v22_CentreOfGravityInX, optional v23_CentreOfGravityInY); typedef IfcStructuralProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16250,7 +16253,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralSteelProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralSteelProfileProperties (IfcLabel v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, IfcMassPerLengthMeasure v3_PhysicalWeight, IfcPositiveLengthMeasure v4_Perimeter, IfcPositiveLengthMeasure v5_MinimumPlateThickness, IfcPositiveLengthMeasure v6_MaximumPlateThickness, IfcAreaMeasure v7_CrossSectionArea, IfcMomentOfInertiaMeasure v8_TorsionalConstantX, IfcMomentOfInertiaMeasure v9_MomentOfInertiaYZ, IfcMomentOfInertiaMeasure v10_MomentOfInertiaY, IfcMomentOfInertiaMeasure v11_MomentOfInertiaZ, IfcWarpingConstantMeasure v12_WarpingConstant, IfcLengthMeasure v13_ShearCentreZ, IfcLengthMeasure v14_ShearCentreY, IfcAreaMeasure v15_ShearDeformationAreaZ, IfcAreaMeasure v16_ShearDeformationAreaY, IfcSectionModulusMeasure v17_MaximumSectionModulusY, IfcSectionModulusMeasure v18_MinimumSectionModulusY, IfcSectionModulusMeasure v19_MaximumSectionModulusZ, IfcSectionModulusMeasure v20_MinimumSectionModulusZ, IfcSectionModulusMeasure v21_TorsionalSectionModulus, IfcLengthMeasure v22_CentreOfGravityInX, IfcLengthMeasure v23_CentreOfGravityInY, IfcAreaMeasure v24_ShearAreaZ, IfcAreaMeasure v25_ShearAreaY, IfcPositiveRatioMeasure v26_PlasticShapeFactorY, IfcPositiveRatioMeasure v27_PlasticShapeFactorZ); + IfcStructuralSteelProfileProperties (optional v1_ProfileName, IfcProfileDef* v2_ProfileDefinition, optional v3_PhysicalWeight, optional v4_Perimeter, optional v5_MinimumPlateThickness, optional v6_MaximumPlateThickness, optional v7_CrossSectionArea, optional v8_TorsionalConstantX, optional v9_MomentOfInertiaYZ, optional v10_MomentOfInertiaY, optional v11_MomentOfInertiaZ, optional v12_WarpingConstant, optional v13_ShearCentreZ, optional v14_ShearCentreY, optional v15_ShearDeformationAreaZ, optional v16_ShearDeformationAreaY, optional v17_MaximumSectionModulusY, optional v18_MinimumSectionModulusY, optional v19_MaximumSectionModulusZ, optional v20_MinimumSectionModulusZ, optional v21_TorsionalSectionModulus, optional v22_CentreOfGravityInX, optional v23_CentreOfGravityInY, optional v24_ShearAreaZ, optional v25_ShearAreaY, optional v26_PlasticShapeFactorY, optional v27_PlasticShapeFactorZ); typedef IfcStructuralSteelProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16262,9 +16265,9 @@ public: /// The domain of the subedge is formally defined to be the domain of the parent edge, as trimmed by the subedge start vertex and subedge end vertex. /// The start vertex and end vertex shall be within the union of the domains of the vertices of the parent edge and the domain of the parent edge. /// -/// NOTE  Corresponding ISO 10303 entity: subedge. Please refer to ISO/DIS 10303-42:1999(E), p. 194 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: subedge. Please refer to ISO/DIS 10303-42:1999(E), p. 194 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcSubedge : public IfcEdge { public: /// The Edge, or Subedge, which contains the Subedge. @@ -16411,7 +16414,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSurfaceStyleRendering (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSurfaceStyleRendering (IfcColourRgb* v1_SurfaceColour, IfcNormalisedRatioMeasure v2_Transparency, IfcColourOrFactor v3_DiffuseColour, IfcColourOrFactor v4_TransmissionColour, IfcColourOrFactor v5_DiffuseTransmissionColour, IfcColourOrFactor v6_ReflectionColour, IfcColourOrFactor v7_SpecularColour, IfcSpecularHighlightSelect v8_SpecularHighlight, IfcReflectanceMethodEnum::IfcReflectanceMethodEnum v9_ReflectanceMethod); + IfcSurfaceStyleRendering (IfcColourRgb* v1_SurfaceColour, optional v2_Transparency, optional v3_DiffuseColour, optional v4_TransmissionColour, optional v5_DiffuseTransmissionColour, optional v6_ReflectionColour, optional v7_SpecularColour, optional v8_SpecularHighlight, IfcReflectanceMethodEnum::IfcReflectanceMethodEnum v9_ReflectanceMethod); typedef IfcSurfaceStyleRendering* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16485,15 +16488,15 @@ public: /// and end default to start and end of the bounded curve of the /// Directrix /// -/// NOTE  Although the example shows a Directrix as a composite curve on a planar reference surface, the definition of IfcSweptDiskSolid is not restricted to be based on planer curves. However view definitions or implementer agreements may provide restrictions. +/// NOTE  Although the example shows a Directrix as a composite curve on a planar reference surface, the definition of IfcSweptDiskSolid is not restricted to be based on planer curves. However view definitions or implementer agreements may provide restrictions. /// /// Figure 272 — Swept disk solid geometry /// -/// NOTE  Corresponding ISO 10303-42 entity: swept_disk_solid. Please refer to ISO/FDIS 10303-42:2002, p. 282 for the definition of the formal standard. +/// NOTE  Corresponding ISO 10303-42 entity: swept_disk_solid. Please refer to ISO/FDIS 10303-42:2002, p. 282 for the definition of the formal standard. /// -/// HISTORY  New entity in IFC Release 2x2. +/// HISTORY  New entity in IFC Release 2x2. /// -/// IFC2x4 CHANGE  The attribute StartParam and EndParam have been made optional. +/// IFC2x4 CHANGE  The attribute StartParam and EndParam have been made optional. /// /// Informal proposition /// @@ -16523,12 +16526,12 @@ public: void setInnerRadius(IfcPositiveLengthMeasure v); /// The parameter value on the Directrix at which the sweeping operation commences. If no value is provided the start of the sweeping operation is at the start of the Directrix.. /// - /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. + /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. IfcParameterValue StartParam(); void setStartParam(IfcParameterValue v); /// The parameter value on the Directrix at which the sweeping operation ends. If no value is provided the end of the sweeping operation is at the end of the Directrix.. /// - /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. + /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. IfcParameterValue EndParam(); void setEndParam(IfcParameterValue v); virtual unsigned int getArgumentCount() const { return 5; } @@ -16539,7 +16542,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSweptDiskSolid (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSweptDiskSolid (IfcCurve* v1_Directrix, IfcPositiveLengthMeasure v2_Radius, IfcPositiveLengthMeasure v3_InnerRadius, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam); + IfcSweptDiskSolid (IfcCurve* v1_Directrix, IfcPositiveLengthMeasure v2_Radius, optional v3_InnerRadius, IfcParameterValue v4_StartParam, IfcParameterValue v5_EndParam); typedef IfcSweptDiskSolid* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16577,11 +16580,11 @@ public: /// the following illustration. The centre of the position coordinate /// system is in the profile's centre of the bounding box. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. +/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. /// -/// IFC2x4 CHANGE  Type of FilletRadius, FlangeEdgeRadius, and WebEdgeRadius relaxed to allow for zero radius. Trailing attribute CentreOfGravityInY deleted, use respective property in IfcExtendedProfileProperties instead. +/// IFC2x4 CHANGE  Type of FilletRadius, FlangeEdgeRadius, and WebEdgeRadius relaxed to allow for zero radius. Trailing attribute CentreOfGravityInY deleted, use respective property in IfcExtendedProfileProperties instead. /// /// Figure 326 illustrates parameters of the T-shape profile definition. /// @@ -16649,7 +16652,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_FlangeEdgeRadius, IfcPositiveLengthMeasure v10_WebEdgeRadius, IfcPlaneAngleMeasure v11_WebSlope, IfcPlaneAngleMeasure v12_FlangeSlope, IfcPositiveLengthMeasure v13_CentreOfGravityInY); + IfcTShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_FlangeEdgeRadius, optional v10_WebEdgeRadius, optional v11_WebSlope, optional v12_FlangeSlope, optional v13_CentreOfGravityInY); typedef IfcTShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16666,21 +16669,21 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTerminatorSymbol (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTerminatorSymbol (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve); + IfcTerminatorSymbol (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve); typedef IfcTerminatorSymbol* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The text literal is a geometric representation item which describes a text string using a string literal and additional position and path information. /// -/// NOTE  The IfcTextLiteral is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange. +/// NOTE  The IfcTextLiteral is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange. /// -/// NOTE  Corresponding ISO 10303 name: text_literal. Please refer to ISO/IS 10303-46:1994 for the +/// NOTE  Corresponding ISO 10303 name: text_literal. Please refer to ISO/IS 10303-46:1994 for the /// final definition of the formal standard. The attributes font and alignment have been removed as those should be handled by the text style. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The IfcTextLiteral has been changed by removing Font and Alignment. +/// IFC2x3 CHANGE  The IfcTextLiteral has been changed by removing Font and Alignment. class IfcTextLiteral : public IfcGeometricRepresentationItem { public: /// The text literal to be presented. @@ -16708,13 +16711,13 @@ public: }; /// The text literal with extent is a text literal with the additional explicit information of the planar extent (or surrounding text box). An alignment attribute defines, how the text box is aligned to the placement and how it may expand. /// -/// NOTE  The IfcTextLiteralWithExtent is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. +/// NOTE  The IfcTextLiteralWithExtent is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46: Integrated generic resources: Visual presentation. /// -/// NOTE  Corresponding ISO 10303 name: text_literal_with_extent. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: text_literal_with_extent. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The IfcTextLiteralWithExtent has been changed by adding BoxAlignment. +/// IFC2x3 CHANGE  The IfcTextLiteralWithExtent has been changed by adding BoxAlignment. class IfcTextLiteralWithExtent : public IfcTextLiteral { public: /// The extent in the x and y direction of the text literal. @@ -16738,7 +16741,7 @@ public: }; /// IfcTrapeziumProfileDef defines a trapezium as the profile definition used by the swept surface geometry or the swept area solid. It is given by its Top X and Bottom X extent and its Y extent as well as by the offset of the Top X extend, and placed within the 2D position coordinate system, established by the Position attribute. It is placed centric within the position coordinate system, that is, in the center of the bounding box. /// -/// HISTORY  New class in IFC 1.5. The use definition has changed in IFC2x. +/// HISTORY  New class in IFC 1.5. The use definition has changed in IFC2x. /// /// Figure 325 illustrates parameters of the trapezium profile definition. /// @@ -16796,7 +16799,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTrapeziumProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTrapeziumProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_BottomXDim, IfcPositiveLengthMeasure v5_TopXDim, IfcPositiveLengthMeasure v6_YDim, IfcLengthMeasure v7_TopXOffset); + IfcTrapeziumProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_BottomXDim, IfcPositiveLengthMeasure v5_TopXDim, IfcPositiveLengthMeasure v6_YDim, IfcLengthMeasure v7_TopXOffset); typedef IfcTrapeziumProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16804,7 +16807,7 @@ public: /// Definition from ISO/CD 10303-46:1992: A two direction repeat factor combines two vectors which are used in the fill area style tiles entity for determining the shape and relative location of tiles. Given the initial position of any tile, the two direction repeat factor determines eight new positions according to the equation: /// /// k1* R1 + k2* R2 -///      k X{-1,1}  +///      k X{-1,1}  /// /// NOTE Corresponding ISO 10303 name: two_direction_repeat_factor. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// @@ -16875,7 +16878,7 @@ public: bool hasHasPropertySets(); /// Set list of unique property sets, that are associated with the object type and are common to all object occurrences referring to this object type. /// - /// IFC2x3 CHANGE  The attribute aggregate type has been changed from LIST to SET. + /// IFC2x3 CHANGE  The attribute aggregate type has been changed from LIST to SET. SHARED_PTR< IfcTemplatedEntityList > HasPropertySets(); void setHasPropertySets(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 6; } @@ -16887,7 +16890,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTypeObject (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTypeObject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets); + IfcTypeObject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets); typedef IfcTypeObject* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16896,29 +16899,29 @@ public: /// definition of a product without being already inserted into a /// project structure (without having a placement), and not being /// included into the geometric representation context of the -/// project.ÿIt is used to define a product specification, that is, the +/// project.ÿIt is used to define a product specification, that is, the /// specific product information that is common to all occurrences /// of that product type. /// /// An IfcTypeProduct may have a list of property set /// attached and an optional set of product representations. Values /// of these properties and the representation maps are common to all -/// occurrencesÿof that product type.ÿThe type occurrence +/// occurrencesÿof that product type.ÿThe type occurrence /// relationship is realized using the objectified relationship /// IfcRelDefinesByType. /// -/// NOTE 1ÿ The product representations are +/// NOTE 1ÿ The product representations are /// defined as representation maps, which gets assigned by a product /// instance through the representation item(s) being an /// IfcShapeRepresentation and having Items of -/// typeÿIfcMappedItem. -/// NOTE 2 ÿThe representations at the occurrence +/// typeÿIfcMappedItem. +/// NOTE 2 ÿThe representations at the occurrence /// level (represented by subtypes of IfcProduct) can override -/// the specific representations at the type level, ÿ +/// the specific representations at the type level, ÿ /// /// for geometric representations: a Cartesian /// transformation operator can be applied at the occurrence level, -/// andÿ +/// andÿ /// for property sets: A property within an occurrence /// property set, assigned at the product occurrence, overrides the /// same property assigned to the product type. @@ -16978,7 +16981,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTypeProduct (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTypeProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag); + IfcTypeProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag); typedef IfcTypeProduct* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -16990,11 +16993,11 @@ public: /// according to the following illustration. The centre of the position /// coordinate system is in the profile's centre of the bounding box. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. +/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. /// -/// IFC2x4 CHANGE  Type of FilletRadius and EdgeRadius relaxed to allow for zero radius. +/// IFC2x4 CHANGE  Type of FilletRadius and EdgeRadius relaxed to allow for zero radius. /// Trailing attribute CentreOfGravityInX deleted, use respective property in IfcExtendedProfileProperties instead. /// /// Figure 327 illustrates parameters of the U-shape profile definition. @@ -17052,7 +17055,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcUShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcUShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_EdgeRadius, IfcPlaneAngleMeasure v10_FlangeSlope, IfcPositiveLengthMeasure v11_CentreOfGravityInX); + IfcUShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_EdgeRadius, optional v10_FlangeSlope, optional v11_CentreOfGravityInX); typedef IfcUShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17094,9 +17097,9 @@ public: /// A vertex loop has zero extent and dimensionality. /// The vertex loop has genus 0. /// -/// NOTE  Corresponding ISO 10303 entity: vertex_loop. Please refer to ISO/IS 10303-42:1994, p. 121 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: vertex_loop. Please refer to ISO/IS 10303-42:1994, p. 121 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC2x2. +/// HISTORY  New Entity in IFC2x2. class IfcVertexLoop : public IfcLoop { public: /// The vertex which defines the entire loop. @@ -17121,7 +17124,7 @@ public: /// casements. The parameter of the IfcWindowLiningProperties /// define the geometrically relevant parameter of the lining. /// -/// NOTEÿ The IfcWindowLiningProperties +/// NOTEÿ The IfcWindowLiningProperties /// shall only be applied to construct the 3D shape of a window, if /// the attribute IfcWindowStyle.ParameterTakesPrecedence is /// set TRUE. @@ -17135,7 +17138,7 @@ public: /// HISTORY New Entity in IFC Release 2.0. Has been renamed from IfcWindowLining in /// IFC Release 2x. /// -/// IFC2x4 CHANGEÿ The following attributes have been added LiningOffset, +/// IFC2x4 CHANGEÿ The following attributes have been added LiningOffset, /// LiningToPanelOffsetX, LiningToPanelOffsetY. The /// attribute ShapeAspectStyle is deprecated and shall no /// longer be used. Supertype changed to new @@ -17270,7 +17273,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWindowLiningProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWindowLiningProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_LiningDepth, IfcPositiveLengthMeasure v6_LiningThickness, IfcPositiveLengthMeasure v7_TransomThickness, IfcPositiveLengthMeasure v8_MullionThickness, IfcNormalisedRatioMeasure v9_FirstTransomOffset, IfcNormalisedRatioMeasure v10_SecondTransomOffset, IfcNormalisedRatioMeasure v11_FirstMullionOffset, IfcNormalisedRatioMeasure v12_SecondMullionOffset, IfcShapeAspect* v13_ShapeAspectStyle); + IfcWindowLiningProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_LiningDepth, optional v6_LiningThickness, optional v7_TransomThickness, optional v8_MullionThickness, optional v9_FirstTransomOffset, optional v10_SecondTransomOffset, optional v11_FirstMullionOffset, optional v12_SecondMullionOffset, IfcShapeAspect* v13_ShapeAspectStyle); typedef IfcWindowLiningProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17353,7 +17356,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWindowPanelProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWindowPanelProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, IfcPositiveLengthMeasure v7_FrameDepth, IfcPositiveLengthMeasure v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle); + IfcWindowPanelProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, optional v7_FrameDepth, optional v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle); typedef IfcWindowPanelProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17398,7 +17401,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWindowStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWindowStyle (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum v9_ConstructionType, IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum v10_OperationType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable); + IfcWindowStyle (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum v9_ConstructionType, IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum v10_OperationType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable); typedef IfcWindowStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17410,9 +17413,9 @@ public: /// the following illustration. The centre of the position coordinate /// system is in the profile's centre of the bounding box. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x Edition 4 CHANGE  Type of FilletRadius and EdgeRadius relaxed to allow for zero radius. +/// IFC2x Edition 4 CHANGE  Type of FilletRadius and EdgeRadius relaxed to allow for zero radius. /// /// Figure 328 illustrates parameters of the Z-shape profile definition. /// @@ -17460,7 +17463,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcZShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcZShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_EdgeRadius); + IfcZShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_FlangeWidth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, optional v9_EdgeRadius); typedef IfcZShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17475,7 +17478,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationCurveOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationCurveOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcAnnotationCurveOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcAnnotationCurveOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17488,7 +17491,7 @@ public: /// /// Figure 300 — Annotation fill area /// -/// NOTE  Corresponding ISO 10303 name: annotation_fill_area. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: annotation_fill_area. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. /// /// The IfcAnnotationFillArea defines an area by a definite OuterBoundary, that might include InnerBoundaries. The areas defined by the InnerBoundaries are excluded from applying the fill area style. /// @@ -17497,21 +17500,21 @@ public: /// Any curve that describes an inner boundary shall not intersect with, nor include, another curve defining an inner boundary. /// The curve defining the outer boundary shall not intersect with any curve defining an inner boundary, nor shall it be surrounded by a curve defining an inner boundary. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The two attributes OuterBoundary and InnerBoundaries are added and replace the previous single boundary. +/// IFC2x3 CHANGE  The two attributes OuterBoundary and InnerBoundaries are added and replace the previous single boundary. class IfcAnnotationFillArea : public IfcGeometricRepresentationItem { public: /// A closed curve that defines the outer boundary of the fill area. The areas defined by the outer boundary (minus potentially defined inner boundaries) is filled by the fill area style. /// - /// IFC2x Edition 3 CHANGE  The two new attributes OuterBoundary and InnerBoundaries replace the old single attribute Boundaries. + /// IFC2x Edition 3 CHANGE  The two new attributes OuterBoundary and InnerBoundaries replace the old single attribute Boundaries. IfcCurve* OuterBoundary(); void setOuterBoundary(IfcCurve* v); /// Whether the optional attribute InnerBoundaries is defined for this IfcAnnotationFillArea bool hasInnerBoundaries(); /// A set of inner curves that define the inner boundaries of the fill area. The areas defined by the inner boundaries are excluded from applying the fill area style. /// - /// IFC2x Edition 3 CHANGE  The two new attributes OuterBoundary and InnerBoundaries replace the old single attribute Boundaries. + /// IFC2x Edition 3 CHANGE  The two new attributes OuterBoundary and InnerBoundaries replace the old single attribute Boundaries. SHARED_PTR< IfcTemplatedEntityList > InnerBoundaries(); void setInnerBoundaries(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 2; } @@ -17522,7 +17525,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationFillArea (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationFillArea (IfcCurve* v1_OuterBoundary, SHARED_PTR< IfcTemplatedEntityList > v2_InnerBoundaries); + IfcAnnotationFillArea (IfcCurve* v1_OuterBoundary, optional >> v2_InnerBoundaries); typedef IfcAnnotationFillArea* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17545,7 +17548,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotationFillAreaOccurrence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotationFillAreaOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcPoint* v4_FillStyleTarget, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v5_GlobalOrLocal); + IfcAnnotationFillAreaOccurrence (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcPoint* v4_FillStyleTarget, optional v5_GlobalOrLocal); typedef IfcAnnotationFillAreaOccurrence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17573,9 +17576,9 @@ public: }; /// Definition from ISO/CD 10303-42:1992: The direction and location in three dimensional space of a single axis. An axis1_placement is defined in terms of a locating point (inherited from placement supertype) and an axis direction: this is either the direction of axis or defaults to (0.0,0.0,1.0). The actual direction for the axis placement is given by the derived attribute z (Z). /// -/// NOTE  Corresponding ISO 10303 name: axis1_placement, please refer to ISO/IS 10303-42:1994, p. 28 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: axis1_placement, please refer to ISO/IS 10303-42:1994, p. 28 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC Release 1.5 +/// HISTORY  New entity in IFC Release 1.5 /// /// Figure 274 illustrates the definition of the IfcAxis1Placement within the three-dimensional coordinate system. /// @@ -17604,9 +17607,9 @@ public: /// /// If the RefDirection attribute is not given, the placement defaults to P[1] (x-axis) as [1.,0.] and P[2] (y-axis) as [0.,1.]. /// -/// NOTE  Corresponding ISO 10303 name: axis2_placement_2d, please refer to ISO/IS 10303-42:1994, p. 28 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: axis2_placement_2d, please refer to ISO/IS 10303-42:1994, p. 28 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. /// /// Figure 275 illustrates the definition of the IfcAxis2Placement2D within the two-dimensional coordinate system. /// @@ -17637,9 +17640,9 @@ public: /// are not given, the placement defaults to P[1] (x-axis) as [1.,0.,0.], /// P[2] (y-axis) as [0.,1.,0.] and P[3] (z-axis) as [0.,0.,1.]. /// -/// NOTE  Corresponding ISO 10303 name: axis2_placement_3d, please refer to ISO/IS 10303-42:1994 for the final definition of the formal standard. The WR5 is added to ensure that either both attributes Axis and RefDirection are given, or both are omitted. +/// NOTE  Corresponding ISO 10303 name: axis2_placement_3d, please refer to ISO/IS 10303-42:1994 for the final definition of the formal standard. The WR5 is added to ensure that either both attributes Axis and RefDirection are given, or both are omitted. /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. /// /// Figure 276 illustrates the definition of the IfcAxis2Placement3D within the three-dimensional coordinate system. /// @@ -17796,7 +17799,7 @@ public: }; /// Definition from ISO/CD 10303-42:1992: This entity is a subtype of the half space solid which is trimmed by a surrounding rectangular box. The box has its edges parallel to the coordinate axes of the geometric coordinate system. /// -/// NOTE  The purpose of the box is to facilitate CSG computations by producing a solid of finite size. +/// NOTE  The purpose of the box is to facilitate CSG computations by producing a solid of finite size. /// /// The IfcBoxedHalfSpace is /// used (as its supertype IfcHalfSpaceSolid) only within @@ -17815,9 +17818,9 @@ public: /// /// NOTE Corresponding ISO 10303-42 entity: boxed_half_space, please refer to ISO/IS 10303-42:1994, p. 185 for the final definition of the formal standard. The IFC class IfcBoundingBox is used for the definition of the enclosure, providing the same definition as box_domain. /// -/// HISTORY  New entity in IFC Release 1.5.1, improved documentation available in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5.1, improved documentation available in IFC Release 2x. /// -/// IFC2x4 CHANGE  Usage correct, position coordinate system for Enclosure is the object coordinate system. +/// IFC2x4 CHANGE  Usage correct, position coordinate system for Enclosure is the object coordinate system. /// /// The IfcBoundingBox (relating to ISO 10303-42:1994 box_domain) that provides the enclosure is given for the convenience of the receiving application to enable the use of size box comparison for efficiency (for example, to check first whether size boxes intersect, if not no calculations has to be done to check whether the solids of the entities intersect). /// @@ -17850,11 +17853,11 @@ public: /// illustration. The centre of the position coordinate system is in the /// profile's centre of the bounding box. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. +/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. /// -/// IFC2x4 CHANGE  Type of InternalFilletRadius relaxed to allow for zero radius. +/// IFC2x4 CHANGE  Type of InternalFilletRadius relaxed to allow for zero radius. /// Trailing attribute CentreOfGravityInX deleted, use respective property in IfcExtendedProfileProperties instead. /// /// Figure 315 illustrates parameters of the C-shape profile definition. The parameterized profile defines its own position coordinate system. The underlying coordinate system is defined by the swept area solid that uses the profile definition. It is the xy plane of: @@ -17895,7 +17898,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_Girth, IfcPositiveLengthMeasure v8_InternalFilletRadius, IfcPositiveLengthMeasure v9_CentreOfGravityInX); + IfcCShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_Girth, optional v8_InternalFilletRadius, optional v9_CentreOfGravityInX); typedef IfcCShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -17983,7 +17986,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCartesianTransformationOperator (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCartesianTransformationOperator (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale); + IfcCartesianTransformationOperator (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale); typedef IfcCartesianTransformationOperator* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18003,7 +18006,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCartesianTransformationOperator2D (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCartesianTransformationOperator2D (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale); + IfcCartesianTransformationOperator2D (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale); typedef IfcCartesianTransformationOperator2D* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18033,7 +18036,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCartesianTransformationOperator2DnonUniform (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCartesianTransformationOperator2DnonUniform (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, double v5_Scale2); + IfcCartesianTransformationOperator2DnonUniform (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, optional v5_Scale2); typedef IfcCartesianTransformationOperator2DnonUniform* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18058,7 +18061,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCartesianTransformationOperator3D (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCartesianTransformationOperator3D (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, IfcDirection* v5_Axis3); + IfcCartesianTransformationOperator3D (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, IfcDirection* v5_Axis3); typedef IfcCartesianTransformationOperator3D* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18094,14 +18097,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCartesianTransformationOperator3DnonUniform (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCartesianTransformationOperator3DnonUniform (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, double v4_Scale, IfcDirection* v5_Axis3, double v6_Scale2, double v7_Scale3); + IfcCartesianTransformationOperator3DnonUniform (IfcDirection* v1_Axis1, IfcDirection* v2_Axis2, IfcCartesianPoint* v3_LocalOrigin, optional v4_Scale, IfcDirection* v5_Axis3, optional v6_Scale2, optional v7_Scale3); typedef IfcCartesianTransformationOperator3DnonUniform* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcCircleProfileDef defines a circle as the profile definition used by the swept surface geometry or by the swept area solid. It is given by its Radius attribute and placed within the 2D position coordinate system, established by the Position attribute. /// -/// HISTORY  New class in IFC 1.5. +/// HISTORY  New class in IFC 1.5. /// /// Figure 313 illustrates parameters for the circle profile definition. The parameterized profile defines its own position coordinate system. The underlying coordinate system is defined by the swept surface or swept area solid that uses the profile definition. It is the xy plane of either: /// @@ -18124,7 +18127,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCircleProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCircleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius); + IfcCircleProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius); typedef IfcCircleProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18148,14 +18151,14 @@ public: /// with a closed shell is a closed, orientable manifold. The domain of a closed /// shell, if present, is a connected, closed, oriented 2-manifold. It is always /// topologically equivalent to an H-fold torus for some H -/// ³ 0. The number H is referred to as the +/// ³ 0. The number H is referred to as the /// surface genus of the shell. If a shell of genus H has a domain within /// coordinate space R3, then the finite region of space inside /// it is topologically equivalent to a solid ball with H tunnels drilled /// through it. /// The Euler equation (7) applies with B=0, because in this case /// there are no holes. As in the case of open shells, the surface genus H -/// may not be known a priori, but shall be an integer ³ 0. Thus a necessary, but not sufficient, condition +/// may not be known a priori, but shall be an integer ³ 0. Thus a necessary, but not sufficient, condition /// for a well-formed closed shell is the following: /// /// In the current IFC Release only poly loops @@ -18164,7 +18167,7 @@ public: /// /// NOTE: Corresponding ISO 10303 entity: closed_shell, please refer to ISO/IS 10303-42:1994, p.149 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 /// /// Informal propositions: /// @@ -18207,7 +18210,7 @@ public: void setTransition(IfcTransitionCode::IfcTransitionCode v); /// An indicator of whether or not the sense of the segment agrees with, or opposes, that of the parent curve. If SameSense is false, the point with highest parameter value is taken as the first point of the segment. /// - /// NOTE  If the datatype of ParentCurve is IfcTrimmedCurve, the value of SameSense overrides the value of IfcTrimmedCurve.SenseAgreement + /// NOTE  If the datatype of ParentCurve is IfcTrimmedCurve, the value of SameSense overrides the value of IfcTrimmedCurve.SenseAgreement bool SameSense(); void setSameSense(bool v); /// The bounded curve which defines the geometry of the segment. @@ -18265,7 +18268,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCraneRailAShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCraneRailAShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_BaseWidth2, IfcPositiveLengthMeasure v6_Radius, IfcPositiveLengthMeasure v7_HeadWidth, IfcPositiveLengthMeasure v8_HeadDepth2, IfcPositiveLengthMeasure v9_HeadDepth3, IfcPositiveLengthMeasure v10_WebThickness, IfcPositiveLengthMeasure v11_BaseWidth4, IfcPositiveLengthMeasure v12_BaseDepth1, IfcPositiveLengthMeasure v13_BaseDepth2, IfcPositiveLengthMeasure v14_BaseDepth3, IfcPositiveLengthMeasure v15_CentreOfGravityInY); + IfcCraneRailAShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_BaseWidth2, optional v6_Radius, IfcPositiveLengthMeasure v7_HeadWidth, IfcPositiveLengthMeasure v8_HeadDepth2, IfcPositiveLengthMeasure v9_HeadDepth3, IfcPositiveLengthMeasure v10_WebThickness, IfcPositiveLengthMeasure v11_BaseWidth4, IfcPositiveLengthMeasure v12_BaseDepth1, IfcPositiveLengthMeasure v13_BaseDepth2, IfcPositiveLengthMeasure v14_BaseDepth3, optional v15_CentreOfGravityInY); typedef IfcCraneRailAShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18302,16 +18305,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCraneRailFShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCraneRailFShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_HeadWidth, IfcPositiveLengthMeasure v6_Radius, IfcPositiveLengthMeasure v7_HeadDepth2, IfcPositiveLengthMeasure v8_HeadDepth3, IfcPositiveLengthMeasure v9_WebThickness, IfcPositiveLengthMeasure v10_BaseDepth1, IfcPositiveLengthMeasure v11_BaseDepth2, IfcPositiveLengthMeasure v12_CentreOfGravityInY); + IfcCraneRailFShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallHeight, IfcPositiveLengthMeasure v5_HeadWidth, optional v6_Radius, IfcPositiveLengthMeasure v7_HeadDepth2, IfcPositiveLengthMeasure v8_HeadDepth3, IfcPositiveLengthMeasure v9_WebThickness, IfcPositiveLengthMeasure v10_BaseDepth1, IfcPositiveLengthMeasure v11_BaseDepth2, optional v12_CentreOfGravityInY); typedef IfcCraneRailFShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcCsgPrimitive3D is an abstract supertype of all three dimensional primitives used as either tree root item, or as Boolean results within a CSG solid model. All 3D CSG primitives are defined within a three-dimensional placement coordinate system. /// -/// NOTEÿ No directly corresponding ISO 10303-42 entity, the select type primitive_3d covers the same individual 3D CSG primitives, the position attribute has been added to apply equally to all subtypes. Please refer to ISO/IS 10303-42:1994, p. 234 for the final definition of the formal standard. +/// NOTEÿ No directly corresponding ISO 10303-42 entity, the select type primitive_3d covers the same individual 3D CSG primitives, the position attribute has been added to apply equally to all subtypes. Please refer to ISO/IS 10303-42:1994, p. 234 for the final definition of the formal standard. /// -/// HISTORYÿ New entity in IFC2x3. +/// HISTORYÿ New entity in IFC2x3. class IfcCsgPrimitive3D : public IfcGeometricRepresentationItem { public: /// The placement coordinate system to which the parameters of each individual CSG primitive apply. @@ -18423,7 +18426,7 @@ public: /// /// NOTE Corresponding ISO 10303 entity curve_bounded_surface has been changed to meet the specific requirements of an easy representation of curve bounded planes. /// -/// HISTORY  New entity in IFC Release 1.5 +/// HISTORY  New entity in IFC Release 1.5 /// /// IFC2x PLATFORM CHANGE: The data type of the attribute OuterBoundary and InnerBoundaries has been changed from Ifc2DCompositeCurve to its supertype IfcCurve with upward compatibility for file based exchange. class IfcCurveBoundedPlane : public IfcBoundedSurface { @@ -18489,7 +18492,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDimensionCurve (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDimensionCurve (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcDimensionCurve (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcDimensionCurve* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18506,7 +18509,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDimensionCurveTerminator (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDimensionCurveTerminator (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve, IfcDimensionExtentUsage::IfcDimensionExtentUsage v5_Role); + IfcDimensionCurveTerminator (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name, IfcAnnotationCurveOccurrence* v4_AnnotatedCurve, IfcDimensionExtentUsage::IfcDimensionExtentUsage v5_Role); typedef IfcDimensionCurveTerminator* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18542,7 +18545,7 @@ public: /// (IfcDoorLiningProperties) define the geometrically /// relevant parameter of the lining. /// -/// NOTEÿ The IfcDoorLiningProperties +/// NOTEÿ The IfcDoorLiningProperties /// shall only be applied to construct the 3D shape of a door, if the /// attribute IfcDoorStyle.ParameterTakesPrecedence is set /// TRUE. @@ -18555,7 +18558,7 @@ public: /// /// HISTORY New entity in IFC Release 2.0. Has been renamed from IfcDoorLining in IFC Release 2x. /// -/// IFC2x4 CHANGEÿ The following attributes have been added LiningToPanelOffsetX, LiningToPanelOffsetY. The attribute ShapeAspectStyle is deprecated and shall no longer be used. Supertype changed to new IfcPreDefinedPropertySet. +/// IFC2x4 CHANGEÿ The following attributes have been added LiningToPanelOffsetX, LiningToPanelOffsetY. The attribute ShapeAspectStyle is deprecated and shall no longer be used. Supertype changed to new IfcPreDefinedPropertySet. /// /// Geometry use definitions /// The IfcDoorLiningProperties does not hold its own @@ -18589,7 +18592,7 @@ public: /// LiningOffset : given if lining edge has an offset to /// the x axis of the local placement. /// -/// NOTE ÿIn addition to theÿLiningOffset, +/// NOTE ÿIn addition to theÿLiningOffset, /// the local placement of the IfcDoor can already have an /// offset to the wall edge and thereby shift the lining along the y /// axis. The actual position of the lining is calculated from the @@ -18698,7 +18701,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDoorLiningProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDoorLiningProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_LiningDepth, IfcPositiveLengthMeasure v6_LiningThickness, IfcPositiveLengthMeasure v7_ThresholdDepth, IfcPositiveLengthMeasure v8_ThresholdThickness, IfcPositiveLengthMeasure v9_TransomThickness, IfcLengthMeasure v10_TransomOffset, IfcLengthMeasure v11_LiningOffset, IfcLengthMeasure v12_ThresholdOffset, IfcPositiveLengthMeasure v13_CasingThickness, IfcPositiveLengthMeasure v14_CasingDepth, IfcShapeAspect* v15_ShapeAspectStyle); + IfcDoorLiningProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_LiningDepth, optional v6_LiningThickness, optional v7_ThresholdDepth, optional v8_ThresholdThickness, optional v9_TransomThickness, optional v10_TransomOffset, optional v11_LiningOffset, optional v12_ThresholdOffset, optional v13_CasingThickness, optional v14_CasingDepth, IfcShapeAspect* v15_ShapeAspectStyle); typedef IfcDoorLiningProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18724,7 +18727,7 @@ public: /// included in the same list of the IfcDoorStyle using the /// IfcPropertySet for dynamic extensions. /// -/// HISTORYÿ New Entity in IFC Release 2.0. +/// HISTORYÿ New Entity in IFC Release 2.0. /// /// IFC2x4 CHANGE Supertype changed to new IfcPreDefinedPropertySet. /// @@ -18781,7 +18784,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDoorPanelProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDoorPanelProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPositiveLengthMeasure v5_PanelDepth, IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum v6_PanelOperation, IfcNormalisedRatioMeasure v7_PanelWidth, IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum v8_PanelPosition, IfcShapeAspect* v9_ShapeAspectStyle); + IfcDoorPanelProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_PanelDepth, IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum v6_PanelOperation, optional v7_PanelWidth, IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum v8_PanelPosition, IfcShapeAspect* v9_ShapeAspectStyle); typedef IfcDoorPanelProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18793,7 +18796,7 @@ public: /// is related by the inverse relationship IsDefinedBy pointing to IfcRelDefinedByType. The IfcDoorStyle /// also defines the particular attributes for the lining, IfcDoorLiningProperties, and panels, IfcDoorPanelProperties. /// -/// HISTORYÿNew entity in IFC Release 2x. +/// HISTORYÿNew entity in IFC Release 2x. /// /// IFC2x4 CHANGE The entity is deprecated and shall not be used. The new entity /// IfcDoorType shall be used instead. @@ -18809,7 +18812,7 @@ public: /// The IfcDoorStyleOperationTypeEnum defines the general layout of the door style. Depending on the enumerator, the /// appropriate instances of IfcDoorLiningProperties and IfcDoorPanelProperties are attached in the list of /// HasPropertySets. The IfcDoorStyleOperationTypeEnum mainly determines the hinge side (left hung, or right hung), the -/// operation (swinging, sliding, folding, etc.)ÿand the number of panels. +/// operation (swinging, sliding, folding, etc.)ÿand the number of panels. /// /// See geometry use definitions at IfcDoorStyleOperationTypeEnum for the correct usage of opening symbols for different operation types. class IfcDoorStyle : public IfcTypeProduct { @@ -18834,7 +18837,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDoorStyle (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDoorStyle (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum v9_OperationType, IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum v10_ConstructionType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable); + IfcDoorStyle (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum v9_OperationType, IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum v10_ConstructionType, bool v11_ParameterTakesPrecedence, bool v12_Sizeable); typedef IfcDoorStyle* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -18870,7 +18873,7 @@ public: /// 'white', /// 'by layer' /// -/// NOTE ÿThe IfcDraughtingPreDefinedColour is an entity that had been adopted from ISO 10303-202, Industrial automation systems and integration—Product data representation and exchange, Part 202: Application protocol: Associative draughting. +/// NOTE ÿThe IfcDraughtingPreDefinedColour is an entity that had been adopted from ISO 10303-202, Industrial automation systems and integration—Product data representation and exchange, Part 202: Application protocol: Associative draughting. /// /// The following table states the RGB values associated with the names given by the IfcDraughtingPreDefinedColour. /// @@ -18923,9 +18926,9 @@ public: /// colour values obtained from /// IfcPresentationLayerWithStyle. /// -/// NOTE ÿCorresponding ISO 10303 name: draughting_pre_defined_colour. Please refer to ISO/IS 10303-202:1994 page 194 for the final definition of the formal standard. +/// NOTE ÿCorresponding ISO 10303 name: draughting_pre_defined_colour. Please refer to ISO/IS 10303-202:1994 page 194 for the final definition of the formal standard. /// -/// HISTORY ÿNew entity in IFC2x2. +/// HISTORY ÿNew entity in IFC2x2. /// /// Informal proposition /// @@ -18947,17 +18950,17 @@ public: }; /// The draughting predefined curve font type defines a selection of widely used curve fonts for draughting purposes by name. /// -/// NOTE  The IfcDraughtingPreDefinedCurveFont is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46 Technical Corrigendum 2: Integrated generic resources: Visual presentation. +/// NOTE  The IfcDraughtingPreDefinedCurveFont is an entity that had been adopted from ISO 10303, Industrial automation systems and integration—Product data representation and exchange, Part 46 Technical Corrigendum 2: Integrated generic resources: Visual presentation. /// /// Figure 291 (from ISO 10303-46 TC2) illustrates predefined curve fonts. /// /// Figure 291 — Draughting predefined curve font /// -/// NOTE  If the IfcDraughtingPreDefinedCurveFont is used within an IfcCurveStyleFontAndScaling then the segment and space lengths that are given in the table are as such for the scale factor 1.0 +/// NOTE  If the IfcDraughtingPreDefinedCurveFont is used within an IfcCurveStyleFontAndScaling then the segment and space lengths that are given in the table are as such for the scale factor 1.0 /// -/// NOTE  Corresponding ISO 10303 name: pre_defined_curve_font. Please refer to ISO/IS 10303-46:1994 TC2, page 12 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: pre_defined_curve_font. Please refer to ISO/IS 10303-46:1994 TC2, page 12 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcDraughtingPreDefinedCurveFont : public IfcPreDefinedCurveFont { public: virtual unsigned int getArgumentCount() const { return 1; } @@ -18981,9 +18984,9 @@ public: /// The Euler formula shall be satisfied:(number of vertices) + genus - (number of edges) = 1; /// No edge may be referenced more than once by the same IfcEdgeLoop with the same sense. For this purpose, an edge which is not an oriented edge is considered to be referenced with the sense TRUE. /// -/// NOTE  Corresponding ISO 10303 entity: edge_loop. Please refer to ISO/IS 10303-42:1994, p. 122 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: edge_loop. Please refer to ISO/IS 10303-42:1994, p. 122 for the final definition of the formal standard. /// -/// HISTORY  New Entity in IFC2x2. +/// HISTORY  New Entity in IFC2x2. class IfcEdgeLoop : public IfcLoop { public: /// A list of oriented edge entities which are concatenated together to form this path. @@ -19032,13 +19035,13 @@ public: /// /// EXAMPLE1 To exchange the net floor area of spaces in /// the German region (as IfcSpace), the name might be -/// 'Netto-Grundfläche' (net floor area), and the method of +/// 'Netto-Grundfläche' (net floor area), and the method of /// measurement might be accordingly 'DIN277-2' (German industry norm /// no. 277 edition 2) /// /// EXAMPLE2 The same instance of IfcSpace may have /// a different area measure assigned in the German region according -/// to a housing regulation, the name would be 'Wohnfläche' and +/// to a housing regulation, the name would be 'Wohnfläche' and /// the method of measurement would be '2.BV'. It would be attached /// to the IfcSpace by a separate /// IfcRelDefinesByProperties relationship. @@ -19099,7 +19102,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElementQuantity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElementQuantity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_MethodOfMeasurement, SHARED_PTR< IfcTemplatedEntityList > v6_Quantities); + IfcElementQuantity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_MethodOfMeasurement, SHARED_PTR< IfcTemplatedEntityList > v6_Quantities); typedef IfcElementQuantity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19141,7 +19144,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19172,7 +19175,7 @@ public: /// IfcEllipseProfileDef defines an ellipse as the profile definition used by the swept surface geometry /// or the swept area solid. It is given by its semi axis attributes and placed within the 2D position coordinate system, established by the Position attribute. /// -/// HISTORY  New entity in IFC2x +/// HISTORY  New entity in IFC2x /// /// Figure 317 illustrates parameters for the ellipse profile definition. The parameterized profile defines its own position coordinate system. /// The underlying coordinate system is defined by the swept surface or swept area solid that uses the profile definition. It is the xy plane of either: @@ -19182,7 +19185,7 @@ public: /// /// Or in case of sectioned spines it is the xy plane of each list member of IfcSectionedSpine.CrossSectionPositions. By using offsets of the position location, the parameterized profile can be positioned centric (using x,y offsets = 0.), or at any position relative to the profile. Explicit coordinate offsets are used to define cardinal points (for example, upper-left bound). The location of the position coordinate system defines the center of the ellipse. The SemiAxis1 attribute defines the first radius of the ellipse in the direction of the X axis, the SemiAxis2 attribute defines the second radius of the ellipse in the direction of the Y axis. /// -/// NOTE  The semi axes of the ellipse are rectangular to each other by definition. +/// NOTE  The semi axes of the ellipse are rectangular to each other by definition. /// /// Figure 317 — Ellipse profile class IfcEllipseProfileDef : public IfcParameterizedProfileDef { @@ -19201,7 +19204,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEllipseProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEllipseProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_SemiAxis1, IfcPositiveLengthMeasure v5_SemiAxis2); + IfcEllipseProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_SemiAxis1, IfcPositiveLengthMeasure v5_SemiAxis2); typedef IfcEllipseProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19224,7 +19227,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEnergyProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEnergyProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcEnergySequenceEnum::IfcEnergySequenceEnum v5_EnergySequence, IfcLabel v6_UserDefinedEnergySequence); + IfcEnergyProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_EnergySequence, optional v6_UserDefinedEnergySequence); typedef IfcEnergyProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19261,9 +19264,9 @@ public: /// /// Figure 255 — Extruded area solid geometry /// -/// NOTE  Corresponding ISO 10303-42 entity: extruded_area_solid. Please refer to ISO/IS 10303-42:1994, p. 183 for the final definition of the formal standard. The data type of the inherited SweptArea attribute is different, i.e. of type IfcProfileDef. The Position attribute has been added to position the cross section used for the linear extrusion. +/// NOTE  Corresponding ISO 10303-42 entity: extruded_area_solid. Please refer to ISO/IS 10303-42:1994, p. 183 for the final definition of the formal standard. The data type of the inherited SweptArea attribute is different, i.e. of type IfcProfileDef. The Position attribute has been added to position the cross section used for the linear extrusion. /// -/// HISTORY  New entity in IFC Release 1.5, capabilities of this entity have been enhanced in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5, capabilities of this entity have been enhanced in IFC Release 2x. /// /// Texture use definition /// For side faces, textures are aligned facing upright continuously @@ -19353,13 +19356,13 @@ public: /// /// The IfcFillAreaStyleHatching is used to define simple, vector-based hatching patterns, based on styled straight lines. The curve font, color and thickness is given by the HatchLineAppearance, the angle by the HatchLineAngle and the distance to the next hatch line by StartOfNextHatchLine, being either an offset distance or a vector. /// -/// NOTE  If the hatch pattern involves two (potentially crossing) rows of hatch lines, then two instances of IfcFillAreaStyleHatching should be assigned to the IfcFillAreaStyle. Both share the same (virtual) point of origin of the hatching that is used by the reference hatch line (or the PointOfReferenceHatchLine if there is an offset). +/// NOTE  If the hatch pattern involves two (potentially crossing) rows of hatch lines, then two instances of IfcFillAreaStyleHatching should be assigned to the IfcFillAreaStyle. Both share the same (virtual) point of origin of the hatching that is used by the reference hatch line (or the PointOfReferenceHatchLine if there is an offset). /// -/// For better control of the hatching appearance, when using hatch lines with other fonts then continuous, the PatternStart allows to offset the start of the curve font pattern along the reference hatch line (if not given, the PatternStart is at zero distance from the virtual point of origin). If the reference hatch line does not go through the origin (of the virtual hatching coordinate system), it can be offset by using the PatternStart PointOfReferenceHatchLine. +/// For better control of the hatching appearance, when using hatch lines with other fonts then continuous, the PatternStart allows to offset the start of the curve font pattern along the reference hatch line (if not given, the PatternStart is at zero distance from the virtual point of origin). If the reference hatch line does not go through the origin (of the virtual hatching coordinate system), it can be offset by using the PatternStart PointOfReferenceHatchLine. /// -/// NOTE  The coordinates of the PatternStart and the PointOfReferenceHatchLine are given relative to the assumed 0., 0. virtual point of origin at which the hatch pattern is later positioned by the FillStyleTarget point at IfcAnnotationFillAreaOccurrence. The measure values are given in global drawing length units and apply to the target plot scale for the scale depended representation subcontext. +/// NOTE  The coordinates of the PatternStart and the PointOfReferenceHatchLine are given relative to the assumed 0., 0. virtual point of origin at which the hatch pattern is later positioned by the FillStyleTarget point at IfcAnnotationFillAreaOccurrence. The measure values are given in global drawing length units and apply to the target plot scale for the scale depended representation subcontext. /// -/// NOTE  The use of PointOfReferenceHatchLine is deprecated. +/// NOTE  The use of PointOfReferenceHatchLine is deprecated. /// /// Figure 292 illustrates hatch attributes. /// @@ -19391,11 +19394,11 @@ public: /// /// Figure 292 — Fill area style hatching /// -/// NOTE  Corresponding ISO 10303 name: fill_area_style_hatching. Please refer to ISO/IS 10303-46:1994, p. 108 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 name: fill_area_style_hatching. Please refer to ISO/IS 10303-46:1994, p. 108 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  The IfcFillAreaStyleHatching has been changed by making the attributes PatternStart and PointOfReferenceHatchLine OPTIONAL. The attribute StartOfNextHatchLine has changed to a SELECT with the additional choice of IfcPositiveLengthMeasure. Upward compatibility for file based exchange is guaranteed. +/// IFC2x3 CHANGE  The IfcFillAreaStyleHatching has been changed by making the attributes PatternStart and PointOfReferenceHatchLine OPTIONAL. The attribute StartOfNextHatchLine has changed to a SELECT with the additional choice of IfcPositiveLengthMeasure. Upward compatibility for file based exchange is guaranteed. class IfcFillAreaStyleHatching : public IfcGeometricRepresentationItem { public: /// The curve style of the hatching lines. Any curve style pattern shall start at the origin of each hatch line. @@ -19403,7 +19406,7 @@ public: void setHatchLineAppearance(IfcCurveStyle* v); /// A repetition factor that determines the distance between adjacent hatch lines. /// - /// IFC2x Edition 3 CHANGE  The attribute type of StartOfNextHatchLine has changed to a SELECT of IfcPositiveLengthMeasure (new) and IfcOneDirectionRepeatFactor. + /// IFC2x Edition 3 CHANGE  The attribute type of StartOfNextHatchLine has changed to a SELECT of IfcPositiveLengthMeasure (new) and IfcOneDirectionRepeatFactor. IfcHatchLineDistanceSelect StartOfNextHatchLine(); void setStartOfNextHatchLine(IfcHatchLineDistanceSelect v); /// Whether the optional attribute PointOfReferenceHatchLine is defined for this IfcFillAreaStyleHatching @@ -19411,7 +19414,7 @@ public: /// A Cartesian point which defines the offset of the reference hatch line from the origin of the (virtual) hatching coordinate system. The origin is used for mapping the fill area style hatching onto an annotation fill area or surface. The reference hatch line would then appear with this offset from the fill style target point. /// If not given the reference hatch lines goes through the origin of the (virtual) hatching coordinate system. /// - /// IFC2x Edition 3 CHANGE  The usage of the attribute PointOfReferenceHatchLine has changed to not provide the Cartesian point which is the origin for mapping, but to provide an offset to the origin for the mapping. The attribute has been made OPTIONAL. + /// IFC2x Edition 3 CHANGE  The usage of the attribute PointOfReferenceHatchLine has changed to not provide the Cartesian point which is the origin for mapping, but to provide an offset to the origin for the mapping. The attribute has been made OPTIONAL. IfcCartesianPoint* PointOfReferenceHatchLine(); void setPointOfReferenceHatchLine(IfcCartesianPoint* v); /// Whether the optional attribute PatternStart is defined for this IfcFillAreaStyleHatching @@ -19562,7 +19565,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFluidFlowProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFluidFlowProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPropertySourceEnum::IfcPropertySourceEnum v5_PropertySource, IfcTimeSeries* v6_FlowConditionTimeSeries, IfcTimeSeries* v7_VelocityTimeSeries, IfcTimeSeries* v8_FlowrateTimeSeries, IfcMaterial* v9_Fluid, IfcTimeSeries* v10_PressureTimeSeries, IfcLabel v11_UserDefinedPropertySource, IfcThermodynamicTemperatureMeasure v12_TemperatureSingleValue, IfcThermodynamicTemperatureMeasure v13_WetBulbTemperatureSingleValue, IfcTimeSeries* v14_WetBulbTemperatureTimeSeries, IfcTimeSeries* v15_TemperatureTimeSeries, IfcDerivedMeasureValue v16_FlowrateSingleValue, IfcPositiveRatioMeasure v17_FlowConditionSingleValue, IfcLinearVelocityMeasure v18_VelocitySingleValue, IfcPressureMeasure v19_PressureSingleValue); + IfcFluidFlowProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPropertySourceEnum::IfcPropertySourceEnum v5_PropertySource, IfcTimeSeries* v6_FlowConditionTimeSeries, IfcTimeSeries* v7_VelocityTimeSeries, IfcTimeSeries* v8_FlowrateTimeSeries, IfcMaterial* v9_Fluid, IfcTimeSeries* v10_PressureTimeSeries, optional v11_UserDefinedPropertySource, optional v12_TemperatureSingleValue, optional v13_WetBulbTemperatureSingleValue, IfcTimeSeries* v14_WetBulbTemperatureTimeSeries, IfcTimeSeries* v15_TemperatureTimeSeries, optional v16_FlowrateSingleValue, optional v17_FlowConditionSingleValue, optional v18_VelocitySingleValue, optional v19_PressureSingleValue); typedef IfcFluidFlowProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19573,7 +19576,7 @@ public: /// product representations. It is used to define an element /// specification (i.e. the specific product information, that is /// common to all occurrences of that product type). -/// NOTEÿ The product representations are defined +/// NOTEÿ The product representations are defined /// as representation maps (at the level of the supertype /// IfcTypeProduct, which gets assigned by an element /// occurrence instance through the @@ -19588,7 +19591,7 @@ public: /// The occurrences of the IfcFurnishingElementType are /// represented by instances of IfcFurnishingElement (or its /// subtypes). -/// HISTORYÿNew entity in +/// HISTORYÿNew entity in /// Release IFC2x Edition 2. /// IFC2x3 CHANGE The entity has been /// made non-abstract @@ -19605,7 +19608,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFurnishingElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFurnishingElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFurnishingElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFurnishingElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19660,7 +19663,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFurnitureType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFurnitureType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v10_AssemblyPlace); + IfcFurnitureType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v10_AssemblyPlace); typedef IfcFurnitureType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19702,9 +19705,9 @@ public: /// external document or library. See IfcProfileDef for guidance on /// external references for profile definitions. /// -/// HISTORY  New entity in IFC2x. +/// HISTORY  New entity in IFC2x. /// -/// IFC2x4 CHANGE  Type of FilletRadius relaxed to allow for zero radius. +/// IFC2x4 CHANGE  Type of FilletRadius relaxed to allow for zero radius. /// /// Figure 318 illustrates parameters of the I-shape profile definition. /// @@ -19777,7 +19780,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcIShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcIShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius); + IfcIShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius); typedef IfcIShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -19793,11 +19796,11 @@ public: /// position coordinate system is in the profiles centre /// of the bounding box. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. +/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. /// -/// IFC2x4 CHANGE  Width changed from OPTIONAL to mandatory. The previously informal rule that the longer leg is the Depth has been formalized. Types of FilletRadius and EdgeRadius were relaxed to allow for zero values. Trailing attributes CentreOfGravityInX and CentreOfGravityInY deleted, use respective properties in IfcExtendedProfileProperties instead. WHERE rule which required Width <= Depth removed. +/// IFC2x4 CHANGE  Width changed from OPTIONAL to mandatory. The previously informal rule that the longer leg is the Depth has been formalized. Types of FilletRadius and EdgeRadius were relaxed to allow for zero values. Trailing attributes CentreOfGravityInX and CentreOfGravityInY deleted, use respective properties in IfcExtendedProfileProperties instead. WHERE rule which required Width <= Depth removed. /// /// Figure 319 illustrates parameters of equal-sided and non-equal sided L-shaped section definitions. /// @@ -19826,8 +19829,8 @@ public: /// are: /// /// Location = IfcCartesianPoint( -///               +|CentreOfGravityInX|, -///               +|CentreOfGravityInY|) +///               +|CentreOfGravityInX|, +///               +|CentreOfGravityInY|) /// RefDirection = NIL (defaults to 1.,0.) /// /// In the illustrated example, the x and y value of Position.Location, i.e. the measures |CentreOfGravityInX| and |CentreOfGravityInY| are both positive. On the other hand, the properties named 'CentreOfGravityInX' and 'CentreOfGravityInY' in IfcExtendedProfileProperties, if provided, must both be set to 0 now because the centre of gravity of the resulting profile definition is located in the coordinate origin. @@ -19877,7 +19880,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, IfcPositiveLengthMeasure v5_Width, IfcPositiveLengthMeasure v6_Thickness, IfcPositiveLengthMeasure v7_FilletRadius, IfcPositiveLengthMeasure v8_EdgeRadius, IfcPlaneAngleMeasure v9_LegSlope, IfcPositiveLengthMeasure v10_CentreOfGravityInX, IfcPositiveLengthMeasure v11_CentreOfGravityInY); + IfcLShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Depth, optional v5_Width, IfcPositiveLengthMeasure v6_Thickness, optional v7_FilletRadius, optional v8_EdgeRadius, optional v9_LegSlope, optional v10_CentreOfGravityInX, optional v11_CentreOfGravityInY); typedef IfcLShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20095,7 +20098,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcObject (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcObject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcObject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcObject* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20239,21 +20242,21 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPermeableCoveringProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPermeableCoveringProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, IfcPositiveLengthMeasure v7_FrameDepth, IfcPositiveLengthMeasure v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle); + IfcPermeableCoveringProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum v5_OperationType, IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum v6_PanelPosition, optional v7_FrameDepth, optional v8_FrameThickness, IfcShapeAspect* v9_ShapeAspectStyle); typedef IfcPermeableCoveringProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from ISO/CD 10303-46:1992: A planar box specifies an arbitrary rectangular box and its location in a two dimensional Cartesian coordinate system. /// -/// NOTE  Corresponding ISO 10303 name: planar_box. Please refer to +/// NOTE  Corresponding ISO 10303 name: planar_box. Please refer to /// ISO/IS 10303-46:1994, p. 141 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. class IfcPlanarBox : public IfcPlanarExtent { public: /// The IfcAxis2Placement positions a local coordinate system for the definition of the rectangle. The origin of this local coordinate system serves as the lower left corner of the rectangular box. - /// NOTE  In case of a 3D placement by IfcAxisPlacement3D the IfcPlanarBox is defined within the xy plane of the definition coordinate system. + /// NOTE  In case of a 3D placement by IfcAxisPlacement3D the IfcPlanarBox is defined within the xy plane of the definition coordinate system. IfcAxis2Placement Placement(); void setPlacement(IfcAxis2Placement v); virtual unsigned int getArgumentCount() const { return 3; } @@ -20373,7 +20376,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProcess (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProcess (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcProcess (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcProcess* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20490,7 +20493,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProduct (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); + IfcProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); typedef IfcProduct* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20507,9 +20510,9 @@ public: /// the precision used within the geometric representations, and /// optionally the indication of the true north relative to the world coordinate system /// -/// HISTORY  New Entity in IFC Release 1.0 +/// HISTORY  New Entity in IFC Release 1.0 /// -/// IFC2x4 CHANGE  The attributes RepresentationContexts and UnitsInContext are made optional and are promoted to supertype IfcContext. +/// IFC2x4 CHANGE  The attributes RepresentationContexts and UnitsInContext are made optional and are promoted to supertype IfcContext. /// /// Relationship use definition /// The IfcProject is used to reference the root of the spatial structure of a building (that serves as the primary project breakdown and is required to be hierarchical). The spatial structure elements are linked together, and to the IfcProject, by using the objectified relationship IfcRelAggregates. The IfcProject references them by its inverse relationship: @@ -20525,10 +20528,10 @@ public: /// The IfcProject is also the context for other information about the construction project such as a work plan. Non-product structures are assigned by their first level object to IfcProject using the IfcRelDeclares relationship. /// /// The IfcProject provides the context for spatial elements and the associated products, and for work plans (or other non-product based) descriptions of the construction project. It is handled by two distinct relationship objects as shown in Figure 3. -/// NOTE   The spatial structure and the schedule structure can be decomposed. For example the IfcBuilding can be decomposed into IfcBuildingStorey's, and the IfcWorkPlan can be decomposed into IfcWorkSchedule's. -/// NOTE   The products and tasks can be decomposed further. For example the IfcCurtainWall can be decomposed into IfcMember and IfcPlate, the IfcTask can be decomposed into other IfcTask's. -/// NOTE   The products and tasks can have direct linking relationships. For example the IfcCurtainWall can be assigned to a IfcTask as an input or output for a construction schedule. -/// NOTE   The anomaly to use the composition structure through IfcRelAggregates for assigning the uppermost spatial container to IfcProject is due to upward compatibility reasons with earlier releases of this standard. +/// NOTE   The spatial structure and the schedule structure can be decomposed. For example the IfcBuilding can be decomposed into IfcBuildingStorey's, and the IfcWorkPlan can be decomposed into IfcWorkSchedule's. +/// NOTE   The products and tasks can be decomposed further. For example the IfcCurtainWall can be decomposed into IfcMember and IfcPlate, the IfcTask can be decomposed into other IfcTask's. +/// NOTE   The products and tasks can have direct linking relationships. For example the IfcCurtainWall can be assigned to a IfcTask as an input or output for a construction schedule. +/// NOTE   The anomaly to use the composition structure through IfcRelAggregates for assigning the uppermost spatial container to IfcProject is due to upward compatibility reasons with earlier releases of this standard. /// /// Figure 3 — Project spatial and work plan structure /// @@ -20561,7 +20564,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProject (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLabel v6_LongName, IfcLabel v7_Phase, SHARED_PTR< IfcTemplatedEntityList > v8_RepresentationContexts, IfcUnitAssignment* v9_UnitsInContext); + IfcProject (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_LongName, optional v7_Phase, SHARED_PTR< IfcTemplatedEntityList > v8_RepresentationContexts, IfcUnitAssignment* v9_UnitsInContext); typedef IfcProject* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20576,7 +20579,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProjectionCurve (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProjectionCurve (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, IfcLabel v3_Name); + IfcProjectionCurve (IfcRepresentationItem* v1_Item, SHARED_PTR< IfcTemplatedEntityList > v2_Styles, optional v3_Name); typedef IfcProjectionCurve* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20595,11 +20598,11 @@ public: /// and the individual properties that maybe included can be assigned /// using the property set template. /// -/// NOTE  See IfcRelDefinesByType for how to override property sets assigned to an object type within the object occurrence. +/// NOTE  See IfcRelDefinesByType for how to override property sets assigned to an object type within the object occurrence. /// -/// HISTORY  New Entity in IFC Release 1.0 +/// HISTORY  New Entity in IFC Release 1.0 /// -/// IFC2x4 CHANGE  All statically defined property set entities are no longer subtypes of +/// IFC2x4 CHANGE  All statically defined property set entities are no longer subtypes of /// IfcPropertySet. /// /// Relationship use definition @@ -20622,7 +20625,7 @@ public: /// Instances of IfcPropertySet are used to assign named /// sets of individual properties (complex or single properties). Each /// individual property has a significant name string. Some property -/// sets are included in the IFC specification and have a +/// sets are included in the IFC specification and have a /// predefined set of properties indicated by assigning a significant /// name. These property sets are listed under "property sets" main /// menu item within this specification and from the object @@ -20647,7 +20650,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPropertySet (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPropertySet (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_HasProperties); + IfcPropertySet (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_HasProperties); typedef IfcPropertySet* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20656,18 +20659,18 @@ public: /// /// The ProxyType may give an indication to which high level semantic breakdown of object the semantic definition of the proxy relates to. the Tag attribute may be used to assign a human or system interpretable identifier (such as a serial number or bar code). /// -/// NOTE 1  Given that only a +/// NOTE 1  Given that only a /// limited number of semantic constructs can be formally defined within /// IFC (and it will never be possible to define all), there has to be a /// mechanism for capturing those constructs that are not (yet) defined by /// IFC. /// -/// NOTE 2  Product proxies are a +/// NOTE 2  Product proxies are a /// mechanism that allows to exchange data that is part of the project but /// not necessarily part of the IFC model. Those proxies may have geometric /// representations assigned. /// -/// HISTORY  New entity in IFC Release 1.5. +/// HISTORY  New entity in IFC Release 1.5. class IfcProxy : public IfcProduct { public: /// High level (and only) semantic meaning attached to the IfcProxy, defining the basic construct type behind the Proxy, e.g. Product or Process. @@ -20686,16 +20689,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProxy (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProxy (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcObjectTypeEnum::IfcObjectTypeEnum v8_ProxyType, IfcLabel v9_Tag); + IfcProxy (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcObjectTypeEnum::IfcObjectTypeEnum v8_ProxyType, optional v9_Tag); typedef IfcProxy* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// IfcRectangleHollowProfileDef defines a section profile that provides the defining parameters of a rectangular (or square) hollow section to be used by the swept surface geometry or the swept area solid. Its parameters and orientation relative to the position coordinate system are according to the following illustration. A square hollow section can be defined by equal values for h and b. The centre of the position coordinate system is in the profiles centre of the bounding box (for symmetric profiles identical with the centre of gravity). Normally, the longer sides are parallel to the y-axis, the shorter sides parallel to the x-axis. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x4 CHANGE  Types of InnerFilletRadius and OuterFilletRadius relaxed to allow for zero values. +/// IFC2x4 CHANGE  Types of InnerFilletRadius and OuterFilletRadius relaxed to allow for zero values. /// /// Figure 322 illustrates parameters of a rectangular or square hollow profile definition. /// @@ -20734,7 +20737,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRectangleHollowProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRectangleHollowProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_WallThickness, IfcPositiveLengthMeasure v7_InnerFilletRadius, IfcPositiveLengthMeasure v8_OuterFilletRadius); + IfcRectangleHollowProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_XDim, IfcPositiveLengthMeasure v5_YDim, IfcPositiveLengthMeasure v6_WallThickness, optional v7_InnerFilletRadius, optional v8_OuterFilletRadius); typedef IfcRectangleHollowProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20748,7 +20751,7 @@ public: /// location and orientation of the pyramid: /// /// SELF\IfcCsgPrimitive3D.Position: The location and -/// orientation of the axis system for the primitive.  +/// orientation of the axis system for the primitive.  /// SELF\IfcCsgPrimitive3D.Position.Location: The center /// of the circular area being the bottom face of the cone. /// SELF\IfcCsgPrimitive3D.Position.Position[3]: The @@ -20762,9 +20765,9 @@ public: /// /// Figure 260 — Rectangular pyramid geometry /// -/// NOTE  Corresponding ISO 10303 entity: right_circular_cone, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. No semi_angle attribute, and the radius defines the bottom radius, since only a non-truncated cone is in scope. Please refer to ISO/IS 10303-42:1994, p. 176 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: right_circular_cone, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. No semi_angle attribute, and the radius defines the bottom radius, since only a non-truncated cone is in scope. Please refer to ISO/IS 10303-42:1994, p. 176 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x3 +/// HISTORY  New entity in IFC2x3 /// /// Texture use definition /// @@ -20921,7 +20924,7 @@ public: /// Whether the optional attribute RelatedObjectsType is defined for this IfcRelAssigns bool hasRelatedObjectsType(); /// Particular type of the assignment relationship. It can constrain the applicable object types, used within the role of RelatedObjects. - /// IFC2x4 CHANGE  The attribute is deprecated and shall no longer be used. A NIL value should always be assigned. + /// IFC2x4 CHANGE  The attribute is deprecated and shall no longer be used. A NIL value should always be assigned. IfcObjectTypeEnum::IfcObjectTypeEnum RelatedObjectsType(); void setRelatedObjectsType(IfcObjectTypeEnum::IfcObjectTypeEnum v); virtual unsigned int getArgumentCount() const { return 6; } @@ -20932,7 +20935,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssigns (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssigns (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType); + IfcRelAssigns (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType); typedef IfcRelAssigns* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -20964,16 +20967,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToActor (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToActor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole); + IfcRelAssignsToActor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole); typedef IfcRelAssignsToActor* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The objectified relationship IfcRelAssignsToControl handles the assignment of a control (represented by subtypes of IfcControl) to other objects (represented by subtypes of IfcObject, with the exception of controls). /// -/// EXAMPLEÿ The assignment of a performance history (as subtype of IfcControl) for a building service element (as subtype of IfcObject) is an application of this generic relationship. +/// EXAMPLEÿ The assignment of a performance history (as subtype of IfcControl) for a building service element (as subtype of IfcObject) is an application of this generic relationship. /// -/// HISTORYÿ New Entity in IFC Release 2.0. Has been renamed from IfcRelControls in IFC Release 2x. +/// HISTORYÿ New Entity in IFC Release 2.0. Has been renamed from IfcRelControls in IFC Release 2x. class IfcRelAssignsToControl : public IfcRelAssigns { public: /// Reference to the IfcControl that applies a control upon objects. @@ -20987,7 +20990,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToControl (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl); + IfcRelAssignsToControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl); typedef IfcRelAssignsToControl* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21018,7 +21021,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToGroup (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcGroup* v7_RelatingGroup); + IfcRelAssignsToGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcGroup* v7_RelatingGroup); typedef IfcRelAssignsToGroup* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21065,19 +21068,19 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToProcess (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToProcess (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcProcess* v7_RelatingProcess, IfcMeasureWithUnit* v8_QuantityInProcess); + IfcRelAssignsToProcess (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcProcess* v7_RelatingProcess, IfcMeasureWithUnit* v8_QuantityInProcess); typedef IfcRelAssignsToProcess* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; -/// The objectified relationshipÿIfcRelAssignsToProduct handles the assignment of objects (subtypes of IfcObject) to a product (subtypes of IfcProduct). The Name attribute should be used to classify the usage of the IfcRelAssignsToProduct objectified relationship. The following Name values are proposed: +/// The objectified relationshipÿIfcRelAssignsToProduct handles the assignment of objects (subtypes of IfcObject) to a product (subtypes of IfcProduct). The Name attribute should be used to classify the usage of the IfcRelAssignsToProduct objectified relationship. The following Name values are proposed: /// -/// 'Context' : Assignment of a context specific representation, such as of structural members to a different context representation (with potentially different decomposition breakdown) such as of building elementsÿfor a specificÿcontext specific representation.ÿ +/// 'Context' : Assignment of a context specific representation, such as of structural members to a different context representation (with potentially different decomposition breakdown) such as of building elementsÿfor a specificÿcontext specific representation.ÿ /// 'View' : Assignment of a product (via RelatingProduct) that is decomposed according to a discipline view, to another product (via RelatedObjects) that is decomposed according to a different discipline view. An example is the assignment of the architectural slab to a different decomposition of the pre manufactured sections of a slab (under a precast concrete discipline view). /// /// HISTORY New Entity in IFC Release 2x /// -/// IFC2x3 CHANGE ÿThe reference of a product within a spatial structure is now handled by a new relationship object IfcRelReferencedInSpatialStructure. The IfcRelAssignsToProduct shall not be used to represent this relation from IFC2x3 onwards. +/// IFC2x3 CHANGE ÿThe reference of a product within a spatial structure is now handled by a new relationship object IfcRelReferencedInSpatialStructure. The IfcRelAssignsToProduct shall not be used to represent this relation from IFC2x3 onwards. class IfcRelAssignsToProduct : public IfcRelAssigns { public: /// Reference to the product or product type to which the objects are assigned to. @@ -21093,7 +21096,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToProduct (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcProduct* v7_RelatingProduct); + IfcRelAssignsToProduct (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcProduct* v7_RelatingProduct); typedef IfcRelAssignsToProduct* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21108,7 +21111,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToProjectOrder (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToProjectOrder (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl); + IfcRelAssignsToProjectOrder (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl); typedef IfcRelAssignsToProjectOrder* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21134,7 +21137,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsToResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsToResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcResource* v7_RelatingResource); + IfcRelAssignsToResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcResource* v7_RelatingResource); typedef IfcRelAssignsToResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21184,7 +21187,7 @@ class IfcRelAssociates : public IfcRelationship { public: /// Set of object or property definitions to which the external references or information is associated. It includes object and type objects, property set templates, property templates and property sets and contexts. /// - /// IFC2x4 CHANGE  The attribute datatype has been changed from IfcRoot to IfcDefinitionSelect. + /// IFC2x4 CHANGE  The attribute datatype has been changed from IfcRoot to IfcDefinitionSelect. SHARED_PTR< IfcTemplatedEntityList > RelatedObjects(); void setRelatedObjects(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 5; } @@ -21195,7 +21198,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociates (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociates (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects); + IfcRelAssociates (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects); typedef IfcRelAssociates* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21212,7 +21215,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesAppliedValue (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesAppliedValue (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcAppliedValue* v6_RelatingAppliedValue); + IfcRelAssociatesAppliedValue (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcAppliedValue* v6_RelatingAppliedValue); typedef IfcRelAssociatesAppliedValue* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21233,7 +21236,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesApproval (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesApproval (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcApproval* v6_RelatingApproval); + IfcRelAssociatesApproval (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcApproval* v6_RelatingApproval); typedef IfcRelAssociatesApproval* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21252,7 +21255,7 @@ public: /// classification system, or /// a reference to the classification system itself /// -/// NOTE  The reference to a classification item +/// NOTE  The reference to a classification item /// includes a link to the classification system within which the item /// is declared. It assigns the meaning of the classification item to /// the object (ocurrence or type). The reference to the classification @@ -21281,7 +21284,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesClassification (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesClassification (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcClassificationNotationSelect v6_RelatingClassification); + IfcRelAssociatesClassification (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcClassificationNotationSelect v6_RelatingClassification); typedef IfcRelAssociatesClassification* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21305,7 +21308,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesConstraint (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesConstraint (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLabel v6_Intent, IfcConstraint* v7_RelatingConstraint); + IfcRelAssociatesConstraint (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLabel v6_Intent, IfcConstraint* v7_RelatingConstraint); typedef IfcRelAssociatesConstraint* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21330,7 +21333,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesDocument (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesDocument (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcDocumentSelect v6_RelatingDocument); + IfcRelAssociatesDocument (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcDocumentSelect v6_RelatingDocument); typedef IfcRelAssociatesDocument* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21355,7 +21358,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesLibrary (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesLibrary (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLibrarySelect v6_RelatingLibrary); + IfcRelAssociatesLibrary (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcLibrarySelect v6_RelatingLibrary); typedef IfcRelAssociatesLibrary* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21467,7 +21470,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesMaterial (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesMaterial (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcMaterialSelect v6_RelatingMaterial); + IfcRelAssociatesMaterial (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcMaterialSelect v6_RelatingMaterial); typedef IfcRelAssociatesMaterial* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21492,7 +21495,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssociatesProfileProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssociatesProfileProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcProfileProperties* v6_RelatingProfileProperties, IfcShapeAspect* v7_ProfileSectionLocation, IfcOrientationSelect v8_ProfileOrientation); + IfcRelAssociatesProfileProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcProfileProperties* v6_RelatingProfileProperties, IfcShapeAspect* v7_ProfileSectionLocation, optional v8_ProfileOrientation); typedef IfcRelAssociatesProfileProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21510,7 +21513,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnects (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnects (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description); + IfcRelConnects (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description); typedef IfcRelConnects* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21558,7 +21561,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsElements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement); + IfcRelConnectsElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement); typedef IfcRelConnectsElements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21589,9 +21592,9 @@ public: /// /// Figure 116 illustrates using the IfcRelConnectsPathElements for a "T" type connection between two instances of IfcWallStandardCase. /// Figure 117 illustrates using the IfcRelConnectsPathElements for a "L" type connection between two instances of IfcWallStandardCase. -/// NOTE  The two wall axes connect in each case. +/// NOTE  The two wall axes connect in each case. /// -/// ÿ +/// ÿ /// /// Figure 116 — Path connection T-Type /// Figure 117 — Path connection L-Type @@ -21617,7 +21620,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsPathElements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsPathElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, std::vector /*[0:?]*/ v8_RelatingPriorities, std::vector /*[0:?]*/ v9_RelatedPriorities, IfcConnectionTypeEnum::IfcConnectionTypeEnum v10_RelatedConnectionType, IfcConnectionTypeEnum::IfcConnectionTypeEnum v11_RelatingConnectionType); + IfcRelConnectsPathElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, std::vector /*[0:?]*/ v8_RelatingPriorities, std::vector /*[0:?]*/ v9_RelatedPriorities, IfcConnectionTypeEnum::IfcConnectionTypeEnum v10_RelatedConnectionType, IfcConnectionTypeEnum::IfcConnectionTypeEnum v11_RelatingConnectionType); typedef IfcRelConnectsPathElements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21643,9 +21646,9 @@ public: /// IfcDistributionElement for examples and port use /// definition sections. /// -/// HISTORY  New +/// HISTORY  New /// entity in Release IFC2x Edition 2. -/// IFC2x4 CHANGE  The +/// IFC2x4 CHANGE  The /// definition has been extended to include element types. class IfcRelConnectsPortToElement : public IfcRelConnects { public: @@ -21665,7 +21668,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsPortToElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsPortToElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPort* v5_RelatingPort, IfcElement* v6_RelatedElement); + IfcRelConnectsPortToElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPort* v5_RelatingPort, IfcElement* v6_RelatedElement); typedef IfcRelConnectsPortToElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21704,7 +21707,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsPorts (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsPorts (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcPort* v5_RelatingPort, IfcPort* v6_RelatedPort, IfcElement* v7_RealizingElement); + IfcRelConnectsPorts (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcPort* v5_RelatingPort, IfcPort* v6_RelatedPort, IfcElement* v7_RealizingElement); typedef IfcRelConnectsPorts* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21728,7 +21731,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsStructuralActivity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsStructuralActivity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralActivityAssignmentSelect v5_RelatingElement, IfcStructuralActivity* v6_RelatedStructuralActivity); + IfcRelConnectsStructuralActivity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralActivityAssignmentSelect v5_RelatingElement, IfcStructuralActivity* v6_RelatedStructuralActivity); typedef IfcRelConnectsStructuralActivity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21747,14 +21750,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsStructuralElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsStructuralElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingElement, IfcStructuralMember* v6_RelatedStructuralMember); + IfcRelConnectsStructuralElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingElement, IfcStructuralMember* v6_RelatedStructuralMember); typedef IfcRelConnectsStructuralElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// The entity IfcRelConnectsStructuralMember defines all needed properties describing the connection between structural members and structural connection objects (nodes or supports). /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Use Definition /// @@ -21812,16 +21815,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsStructuralMember (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsStructuralMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, IfcLengthMeasure v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem); + IfcRelConnectsStructuralMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, optional v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem); typedef IfcRelConnectsStructuralMember* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from IAI: The entity IfcRelConnectsWithEccentricity adds the definition of eccentricity to the connection between a structural member and a structural connection (representing either a node or support). /// -/// NOTE  Another eccentricity model is available independently of eccentric connection specification: The section profile of a curve member may be inserted eccentrically with respect to the member's reference curve, see definitions at IfcStructuralCurveMember. Whether one or the other or both eccentricity models may be used is subject to information requirements and local agreements. +/// NOTE  Another eccentricity model is available independently of eccentric connection specification: The section profile of a curve member may be inserted eccentrically with respect to the member's reference curve, see definitions at IfcStructuralCurveMember. Whether one or the other or both eccentricity models may be used is subject to information requirements and local agreements. /// -/// HISTORY  New entity in IFC 2x3. +/// HISTORY  New entity in IFC 2x3. /// Use definitions changed in IFC 2x4 to always require two topology items. /// /// Use Definition @@ -21847,7 +21850,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsWithEccentricity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsWithEccentricity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, IfcLengthMeasure v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem, IfcConnectionGeometry* v11_ConnectionConstraint); + IfcRelConnectsWithEccentricity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcStructuralMember* v5_RelatingStructuralMember, IfcStructuralConnection* v6_RelatedStructuralConnection, IfcBoundaryCondition* v7_AppliedCondition, IfcStructuralConnectionCondition* v8_AdditionalConditions, optional v9_SupportedLength, IfcAxis2Placement3D* v10_ConditionCoordinateSystem, IfcConnectionGeometry* v11_ConnectionConstraint); typedef IfcRelConnectsWithEccentricity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21893,7 +21896,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelConnectsWithRealizingElements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelConnectsWithRealizingElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, SHARED_PTR< IfcTemplatedEntityList > v8_RealizingElements, IfcLabel v9_ConnectionType); + IfcRelConnectsWithRealizingElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcConnectionGeometry* v5_ConnectionGeometry, IfcElement* v6_RelatingElement, IfcElement* v7_RelatedElement, SHARED_PTR< IfcTemplatedEntityList > v8_RealizingElements, optional v9_ConnectionType); typedef IfcRelConnectsWithRealizingElements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -21957,14 +21960,14 @@ public: /// Containment Use Definition /// Figure 39 shows the use of IfcRelContainedInSpatialStructure to assign a stair and two walls to two different levels within the spatial structure. /// -/// ÿ +/// ÿ /// /// Figure 39 — Relationship for spatial structure containment class IfcRelContainedInSpatialStructure : public IfcRelConnects { public: /// Set of elements products, which are contained within this level of the spatial structure hierarchy. /// - /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcElement to IfcProduct with upward compatibility + /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcElement to IfcProduct with upward compatibility SHARED_PTR< IfcTemplatedEntityList > RelatedElements(); void setRelatedElements(SHARED_PTR< IfcTemplatedEntityList > v); /// Spatial structure element, within which the element is contained. Any element can only be contained within one element of the project spatial structure. @@ -21978,7 +21981,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelContainedInSpatialStructure (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelContainedInSpatialStructure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure); + IfcRelContainedInSpatialStructure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure); typedef IfcRelContainedInSpatialStructure* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22017,13 +22020,13 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelCoversBldgElements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelCoversBldgElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingBuildingElement, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings); + IfcRelCoversBldgElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingBuildingElement, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings); typedef IfcRelCoversBldgElements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from IAI: The objectified relationship, -/// IfcRelCoversSpace, relatesÿa space object to one or +/// IfcRelCoversSpace, relatesÿa space object to one or /// many coverings, which faces (or is assigned to) the space. /// /// NOTE Particularly floorings, ceilings and wall @@ -22046,7 +22049,7 @@ public: /// NOTE View definition may determine the necessity /// to use either of the two relationship elements /// -/// HISTORYÿ New Entity in Release +/// HISTORYÿ New Entity in Release /// IFC 2x Edition 3. class IfcRelCoversSpaces : public IfcRelConnects { public: @@ -22063,7 +22066,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelCoversSpaces (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelCoversSpaces (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSpace* v5_RelatedSpace, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings); + IfcRelCoversSpaces (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSpace* v5_RelatedSpace, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedCoverings); typedef IfcRelCoversSpaces* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22112,7 +22115,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelDecomposes (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelDecomposes (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); + IfcRelDecomposes (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); typedef IfcRelDecomposes* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22123,7 +22126,7 @@ public: /// assign a property set to an object instance /// assign a property set template to a property set /// -/// EXAMPLE ÿSeveral instances of windows within +/// EXAMPLE ÿSeveral instances of windows within /// the IFC project model may be of the same (catalogue or /// manufacturer) type. Thereby they share the same properties. This /// relationship is established by the subtype @@ -22131,7 +22134,7 @@ public: /// assigning an IfcWindowStyle to multiple occurrences /// IfcWindow. /// -/// EXAMPLE ÿThe (same) property set, e.g.ÿ +/// EXAMPLE ÿThe (same) property set, e.g.ÿ /// Pset_ProductManufacturerInfo, keeping the manufacturer name, /// label and production year of a product, can be assigned to one, /// or many instances of furnishing. This relationship is established @@ -22156,7 +22159,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelDefines (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelDefines (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects); + IfcRelDefines (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects); typedef IfcRelDefines* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22189,7 +22192,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelDefinesByProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelDefinesByProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition); + IfcRelDefinesByProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition); typedef IfcRelDefinesByProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22252,18 +22255,18 @@ public: /// /// Pset_WallCommon /// Pset_WallCommon -/// ÿ +/// ÿ /// -/// ÿ-ÿExtendToStructure = TRUE -/// ÿ +/// ÿ-ÿExtendToStructure = TRUE +/// ÿ /// TRUE /// -/// ÿ -/// ÿ-ÿThermalTransmittance = 0.375 +/// ÿ +/// ÿ-ÿThermalTransmittance = 0.375 /// 0.375 /// -/// ÿ-ÿExtendToStructure = FALSE -/// ÿ-ÿExtendToStructure = TRUE +/// ÿ-ÿExtendToStructure = FALSE +/// ÿ-ÿExtendToStructure = TRUE /// FALSE class IfcRelDefinesByType : public IfcRelDefines { public: @@ -22278,7 +22281,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelDefinesByType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelDefinesByType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcTypeObject* v6_RelatingType); + IfcRelDefinesByType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcTypeObject* v6_RelatingType); typedef IfcRelDefinesByType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22310,7 +22313,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelFillsElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelFillsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcOpeningElement* v5_RelatingOpeningElement, IfcElement* v6_RelatedBuildingElement); + IfcRelFillsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcOpeningElement* v5_RelatingOpeningElement, IfcElement* v6_RelatedBuildingElement); typedef IfcRelFillsElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22338,7 +22341,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelFlowControlElements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelFlowControlElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedControlElements, IfcDistributionFlowElement* v6_RelatingFlowElement); + IfcRelFlowControlElements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedControlElements, IfcDistributionFlowElement* v6_RelatingFlowElement); typedef IfcRelFlowControlElements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22369,7 +22372,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelInteractionRequirements (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelInteractionRequirements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcCountMeasure v5_DailyInteraction, IfcNormalisedRatioMeasure v6_ImportanceRating, IfcSpatialStructureElement* v7_LocationOfInteraction, IfcSpaceProgram* v8_RelatedSpaceProgram, IfcSpaceProgram* v9_RelatingSpaceProgram); + IfcRelInteractionRequirements (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_DailyInteraction, optional v6_ImportanceRating, IfcSpatialStructureElement* v7_LocationOfInteraction, IfcSpaceProgram* v8_RelatedSpaceProgram, IfcSpaceProgram* v9_RelatingSpaceProgram); typedef IfcRelInteractionRequirements* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22409,7 +22412,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelNests (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelNests (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); + IfcRelNests (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); typedef IfcRelNests* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22424,7 +22427,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelOccupiesSpaces (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelOccupiesSpaces (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole); + IfcRelOccupiesSpaces (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcActor* v7_RelatingActor, IfcActorRole* v8_ActingRole); typedef IfcRelOccupiesSpaces* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22441,7 +22444,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelOverridesProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelOverridesProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition, SHARED_PTR< IfcTemplatedEntityList > v7_OverridingProperties); + IfcRelOverridesProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcPropertySetDefinition* v6_RelatingPropertyDefinition, SHARED_PTR< IfcTemplatedEntityList > v7_OverridingProperties); typedef IfcRelOverridesProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22456,7 +22459,7 @@ public: /// relationship between the main element and a sub ordinary addition /// feature. /// -/// NOTE  In contrary the +/// NOTE  In contrary the /// IfcRelAggregates relationship established an aggregation /// of equal parts to a whole. /// @@ -22476,7 +22479,7 @@ public: /// /// HISTORY New entity in /// Release IFC2x Edition 2. -/// IFC2x4 CHANGE  +/// IFC2x4 CHANGE  /// Supertype changed to IfcRelDecomposes. class IfcRelProjectsElement : public IfcRelConnects { public: @@ -22494,7 +22497,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelProjectsElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelProjectsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingElement, IfcFeatureElementAddition* v6_RelatedFeatureElement); + IfcRelProjectsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingElement, IfcFeatureElementAddition* v6_RelatedFeatureElement); typedef IfcRelProjectsElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22502,14 +22505,14 @@ public: /// The objectified relationship, /// IfcRelReferencedInSpatialStructure is used to /// assign elements in addition to those levels of the project -/// spatialÿstructure, in which they are referenced, but not -/// primarily contained.ÿ +/// spatialÿstructure, in which they are referenced, but not +/// primarily contained.ÿ /// -/// NOTE ÿThe primary containment relationship between +/// NOTE ÿThe primary containment relationship between /// an element and the spatial structure is handled -/// byÿIfcRelContainsInSpatialStructure. +/// byÿIfcRelContainsInSpatialStructure. /// -/// Any element can be referencedÿto zero, one or several +/// Any element can be referencedÿto zero, one or several /// levels of the spatial structure. Whereas the /// IfcRelContainsInSpatialStructure relationship is /// required to be hierarchical (an element can only be @@ -22542,21 +22545,21 @@ public: /// structure elements depending on the context. /// /// HISTORY New entity -/// inÿRelease IFC2x Edition 3. +/// inÿRelease IFC2x Edition 3. /// /// Use Definition -/// Figure 41 shows the use of IfcRelContainedInSpatialStructure and IfcRelReferencedInSpatialStructure to assign an IfcCurtainWallÿto two different levels within the spatial structure. It is primarily contained within the ground floor, and additionally referenced within the first and second floor. +/// Figure 41 shows the use of IfcRelContainedInSpatialStructure and IfcRelReferencedInSpatialStructure to assign an IfcCurtainWallÿto two different levels within the spatial structure. It is primarily contained within the ground floor, and additionally referenced within the first and second floor. /// /// Figure 41 — Relationship for spatial structure referencing class IfcRelReferencedInSpatialStructure : public IfcRelConnects { public: /// Set of products, which are referenced within this level of the spatial structure hierarchy. - /// NOTE  Referenced elements are contained elsewhere within the spatial structure, they are referenced additionally by this spatial structure element, e.g., because they span several stories. + /// NOTE  Referenced elements are contained elsewhere within the spatial structure, they are referenced additionally by this spatial structure element, e.g., because they span several stories. SHARED_PTR< IfcTemplatedEntityList > RelatedElements(); void setRelatedElements(SHARED_PTR< IfcTemplatedEntityList > v); /// Spatial structure element, within which the element is referenced. Any element can be contained within zero, one or many elements of the project spatial and zoning structure. /// - /// IFC2x Edition 4 CHANGE  The attribute relatingStructure as been promoted to the new supertype IfcSpatialElement with upward compatibility for file based exchange. + /// IFC2x Edition 4 CHANGE  The attribute relatingStructure as been promoted to the new supertype IfcSpatialElement with upward compatibility for file based exchange. IfcSpatialStructureElement* RelatingStructure(); void setRelatingStructure(IfcSpatialStructureElement* v); virtual unsigned int getArgumentCount() const { return 6; } @@ -22567,7 +22570,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelReferencedInSpatialStructure (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelReferencedInSpatialStructure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure); + IfcRelReferencedInSpatialStructure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedElements, IfcSpatialStructureElement* v6_RelatingStructure); typedef IfcRelReferencedInSpatialStructure* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22582,7 +22585,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelSchedulesCostItems (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelSchedulesCostItems (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl); + IfcRelSchedulesCostItems (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl); typedef IfcRelSchedulesCostItems* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22601,9 +22604,9 @@ public: /// relationship; therefore it assigns one predecessor to one /// successor. /// -/// HISTORY  New entity in IFC 1.0. +/// HISTORY  New entity in IFC 1.0. /// -/// IFC2x4 CHANGE  Relocated to IfcProcessExtension schema. +/// IFC2x4 CHANGE  Relocated to IfcProcessExtension schema. /// TimeLag and SequenceType made optional. /// USERDEFINED added to the IfcSequenceType /// enumeration. UserDefinedSequenceType attribute @@ -22665,7 +22668,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelSequence (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelSequence (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcProcess* v5_RelatingProcess, IfcProcess* v6_RelatedProcess, IfcTimeMeasure v7_TimeLag, IfcSequenceEnum::IfcSequenceEnum v8_SequenceType); + IfcRelSequence (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcProcess* v5_RelatingProcess, IfcProcess* v6_RelatedProcess, IfcTimeMeasure v7_TimeLag, IfcSequenceEnum::IfcSequenceEnum v8_SequenceType); typedef IfcRelSequence* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22684,12 +22687,12 @@ public: /// HISTORY New entity in IFC /// Release 1.0 /// -/// IFC2x PLATFORM CHANGEÿ The +/// IFC2x PLATFORM CHANGEÿ The /// data type of the attributeRelatedBuildings has been /// changed from IfcBuilding to its supertype /// IfcSpatialStructureElement with upward compatibility /// for file based exchange. The name -/// IfcRelServicesBuildings is a knownÿanomaly, as the +/// IfcRelServicesBuildings is a knownÿanomaly, as the /// relationship is not restricted to buildings anymore. class IfcRelServicesBuildings : public IfcRelConnects { public: @@ -22698,9 +22701,9 @@ public: void setRelatingSystem(IfcSystem* v); /// Spatial structure elements (including site, building, storeys) that are serviced by the system. /// - /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcBuilding to IfcSpatialStructureElement with upward compatibility for file based exchange. + /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcBuilding to IfcSpatialStructureElement with upward compatibility for file based exchange. /// - /// IFC2x Edition 4 CHANGE  The data type has been changed from IfcSpatialStructureElement to IfcSpatialElement with upward compatibility for file based exchange. + /// IFC2x Edition 4 CHANGE  The data type has been changed from IfcSpatialStructureElement to IfcSpatialElement with upward compatibility for file based exchange. SHARED_PTR< IfcTemplatedEntityList > RelatedBuildings(); void setRelatedBuildings(SHARED_PTR< IfcTemplatedEntityList > v); virtual unsigned int getArgumentCount() const { return 6; } @@ -22711,7 +22714,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelServicesBuildings (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelServicesBuildings (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSystem* v5_RelatingSystem, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedBuildings); + IfcRelServicesBuildings (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSystem* v5_RelatingSystem, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedBuildings); typedef IfcRelServicesBuildings* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22887,16 +22890,16 @@ public: bool hasRelatedBuildingElement(); /// Reference to Building Element, that defines the Space Boundaries. /// - /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcBuildingElement to IfcElement with upward compatibility for file based exchange. + /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcBuildingElement to IfcElement with upward compatibility for file based exchange. /// - /// IFC2x4 CHANGE  The attribute has been changed to be mandatory. + /// IFC2x4 CHANGE  The attribute has been changed to be mandatory. IfcElement* RelatedBuildingElement(); void setRelatedBuildingElement(IfcElement* v); /// Whether the optional attribute ConnectionGeometry is defined for this IfcRelSpaceBoundary bool hasConnectionGeometry(); /// Physical representation of the space boundary. Provided as a curve or surface given within the LCS of the space. /// - /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcConnectionSurfaceGeometry to IfcConnectionGeometry with upward compatibility for file based exchange. + /// IFC2x PLATFORM CHANGE  The data type has been changed from IfcConnectionSurfaceGeometry to IfcConnectionGeometry with upward compatibility for file based exchange. IfcConnectionGeometry* ConnectionGeometry(); void setConnectionGeometry(IfcConnectionGeometry* v); /// Defines, whether the Space Boundary is physical (Physical) or virtual (Virtual). @@ -22913,7 +22916,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelSpaceBoundary (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelSpaceBoundary (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcSpace* v5_RelatingSpace, IfcElement* v6_RelatedBuildingElement, IfcConnectionGeometry* v7_ConnectionGeometry, IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum v8_PhysicalOrVirtualBoundary, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v9_InternalOrExternalBoundary); + IfcRelSpaceBoundary (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcSpace* v5_RelatingSpace, IfcElement* v6_RelatedBuildingElement, IfcConnectionGeometry* v7_ConnectionGeometry, IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum v8_PhysicalOrVirtualBoundary, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v9_InternalOrExternalBoundary); typedef IfcRelSpaceBoundary* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22939,7 +22942,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelVoidsElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelVoidsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcElement* v5_RelatingBuildingElement, IfcFeatureElementSubtraction* v6_RelatedOpeningElement); + IfcRelVoidsElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcElement* v5_RelatingBuildingElement, IfcFeatureElementSubtraction* v6_RelatedOpeningElement); typedef IfcRelVoidsElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -22968,7 +22971,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23004,9 +23007,9 @@ public: /// /// Figure 262 — Revolved area solid geometry /// -/// NOTE  Corresponding ISO 10303-42 entity: revolved_area_solid. Please refer to ISO/IS 10303-42:1994, p. 184 for the final definition of the formal standard. The data type of the inherited SweptArea attribute is different, i.e. of type IfcProfileDef. The position attribute has been added to position the cross section used for the revolution. +/// NOTE  Corresponding ISO 10303-42 entity: revolved_area_solid. Please refer to ISO/IS 10303-42:1994, p. 184 for the final definition of the formal standard. The data type of the inherited SweptArea attribute is different, i.e. of type IfcProfileDef. The position attribute has been added to position the cross section used for the revolution. /// -/// HISTORY  New entity in IFC Release 1.5, capabilities of this entity have been enhanced in IFC Release 2x. +/// HISTORY  New entity in IFC Release 1.5, capabilities of this entity have been enhanced in IFC Release 2x. /// /// Informal propositions: /// @@ -23016,7 +23019,7 @@ public: /// The AxisLine shall not intersect the interior of the /// SweptArea (as defined at supertype /// IfcSweptAreaSolid). -/// The Angle shall be between 0° and 360°, or 0 +/// The Angle shall be between 0° and 360°, or 0 /// and 2π (depending on the unit type for /// IfcPlaneAngleMeasure). /// @@ -23079,7 +23082,7 @@ public: /// location and orientation of the cone: /// /// SELF\IfcCsgPrimitive3D.Position: The location and -/// orientation of the axis system for the primitive.  +/// orientation of the axis system for the primitive.  /// SELF\IfcCsgPrimitive3D.Position.Location: The center /// of the circular area being the bottom face of the cone. /// SELF\IfcCsgPrimitive3D.Position.Position[3]: The @@ -23093,9 +23096,9 @@ public: /// /// Figure 264 — Right circular cone geometry /// -/// NOTE  Corresponding ISO 10303 entity: right_circular_cone, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. No semi_angle attribute, and the radius defines the bottom radius, since only a non-truncated cone is in scope. Please refer to ISO/IS 10303-42:1994, p. 176 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: right_circular_cone, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. No semi_angle attribute, and the radius defines the bottom radius, since only a non-truncated cone is in scope. Please refer to ISO/IS 10303-42:1994, p. 176 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x3 +/// HISTORY  New entity in IFC2x3 /// /// Texture use definition /// On the circular side, textures are aligned facing upright with @@ -23186,9 +23189,9 @@ public: /// /// Figure 266 — Right circular cylinder geometry /// -/// NOTE  Corresponding ISO 10303 entity: right_circular_cyclinder, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO/IS 10303-42:1994, p. 177 for the definition in the international standard. +/// NOTE  Corresponding ISO 10303 entity: right_circular_cyclinder, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO/IS 10303-42:1994, p. 177 for the definition in the international standard. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// /// Texture use definition /// On the circular side, textures are aligned facing upright with @@ -23355,7 +23358,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpatialStructureElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpatialStructureElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType); + IfcSpatialStructureElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType); typedef IfcSpatialStructureElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23368,7 +23371,7 @@ public: /// specification (i.e. the specific element information, that /// is common to all occurrences of that element type). /// -/// NOTE ÿThe product representations are defined as +/// NOTE ÿThe product representations are defined as /// representation maps (at the level of the supertype /// IfcTypeProduct, which gets assigned by an element /// occurrence instance through the @@ -23377,22 +23380,22 @@ public: /// /// A spatial structure element type is used to define the /// common properties of a certain type of a spatial structure -/// element that may be applied to many instances of thatÿtype +/// element that may be applied to many instances of thatÿtype /// to assign a specific style. Spatial structure element types /// (i.e. the instantiable subtypes) may be exchanged without /// being already assigned to occurrences. /// -/// NOTE ÿThe spatial structure element types are +/// NOTE ÿThe spatial structure element types are /// often used to represent catalogues of predefined spatial /// types for shared attributes, less so for sharing a common /// representation map. /// /// The occurrences of subtypes of the -/// abstractÿIfcSpatialStructureElementType are +/// abstractÿIfcSpatialStructureElementType are /// represented by instances of subtypes of /// IfcSpatialStructureElement. /// -/// HISTORY ÿNew entity in +/// HISTORY ÿNew entity in /// Release IFC2x Edition 3. class IfcSpatialStructureElementType : public IfcElementType { public: @@ -23404,7 +23407,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpatialStructureElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpatialStructureElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcSpatialStructureElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcSpatialStructureElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23416,7 +23419,7 @@ public: /// and provides: /// /// SELF\IfcCsgPrimitive3D.Position: The location and -/// orientation of the axis system for the primitive.  +/// orientation of the axis system for the primitive.  /// SELF\IfcCsgPrimitive3D.Position.Location: The center /// of the sphere. /// SELF\IfcCsgPrimitive3D.Position.Position[3]: The z @@ -23433,9 +23436,9 @@ public: /// /// Figure 270 — Sphere geometry /// -/// NOTE  Corresponding STEP entity: sphere, the position attribute, including the centre point,  has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO/IS 10303-42:1994, p. 175 for the final definition of the formal standard. +/// NOTE  Corresponding STEP entity: sphere, the position attribute, including the centre point,  has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO/IS 10303-42:1994, p. 175 for the final definition of the formal standard. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// /// Texture Use Definition /// Textures are aligned facing upright with origin at the back (+Y direction) revolving counter-clockwise. Textures are stretched or repeated to the extent of the circumference at the equator according to RepeatS and RepeatT. @@ -23481,9 +23484,9 @@ public: /// /// The differentiation between actions and reactions is realized by instantiating objects either from subclasses of IfcStructuralAction or IfcStructuralReaction respectively. They inherit commonly needed attributes from the abstract superclass IfcStructuralActivity, notably the relationship which connects actions or reactions with connections, analysis members, or elements (subtypes of IfcStructuralItem or IfcElement). /// -/// NOTE  Instances of IfcStructuralActivity which are connected with an IfcElement are subject to agreements outside the scope of this specification. +/// NOTE  Instances of IfcStructuralActivity which are connected with an IfcElement are subject to agreements outside the scope of this specification. /// -/// NOTE  The semantics of IfcStructuralActivity are only fully defined +/// NOTE  The semantics of IfcStructuralActivity are only fully defined /// if an activity instance is connected with exactly one structural item. The inverse attribute /// AssignedToStructuralItem can only be empty in incomplete models or in conceptual models /// which are not yet ready for analysis. @@ -23557,7 +23560,7 @@ public: /// RepresentationIdentifier: 'Reference' /// RepresentationType: 'Edge' /// -/// NOTE  While an IfcEdge (or IfcOrientedEdge with underlying IfcEdge) does not provide an explicit underlying curve geometry, it may be used to imply an underlying straight line as reference curve with the origin of the curve parameter at the start vertex point. +/// NOTE  While an IfcEdge (or IfcOrientedEdge with underlying IfcEdge) does not provide an explicit underlying curve geometry, it may be used to imply an underlying straight line as reference curve with the origin of the curve parameter at the start vertex point. /// /// Instances of IfcStructuralActivity which act on a single point on a curve or surface item shall have a topology representation given by an IfcVertexPoint, which should be the single item of IfcTopologyRepresentation.Items. The point geometry shall be compatible with the curve or surface geometry of the connected item. The local coordinate system of the activity is oriented by the curve or surface geometry of the connected item as described above for activities with edge or face topology. /// @@ -23605,7 +23608,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralActivity (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralActivity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); + IfcStructuralActivity (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); typedef IfcStructuralActivity* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23657,7 +23660,7 @@ public: /// RepresentationIdentifier: 'Reference' /// RepresentationType: 'Edge' /// -/// NOTE  While an IfcEdge (or IfcOrientedEdge with underlying +/// NOTE  While an IfcEdge (or IfcOrientedEdge with underlying /// IfcEdge) does not provide an explicit underlying curve geometry, it may be used to imply an /// underlying straight line as reference curve with the origin of the curve parameter at the start vertex /// point. @@ -23694,9 +23697,9 @@ public: /// /// The ObjectPlacements of all structural items which are grouped into the same instance of IfcStructuralAnalysisModel shall refer to the same instance of IfcObjectPlacement. /// -/// NOTE  This rule is necessary to achieve consistent topology representations. The topology representations of structural items in an analysis model are meant to share vertices and edges und must therefore have the same object placement. +/// NOTE  This rule is necessary to achieve consistent topology representations. The topology representations of structural items in an analysis model are meant to share vertices and edges und must therefore have the same object placement. /// -/// NOTE  A structural item may be grouped into more than one analysis model. In this case, all these models must use the same instance of IfcObjectPlacement. +/// NOTE  A structural item may be grouped into more than one analysis model. In this case, all these models must use the same instance of IfcObjectPlacement. class IfcStructuralItem : public IfcProduct { public: virtual unsigned int getArgumentCount() const { return 7; } @@ -23708,7 +23711,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralItem (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralItem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); + IfcStructuralItem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); typedef IfcStructuralItem* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23729,7 +23732,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralMember (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); + IfcStructuralMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); typedef IfcStructuralMember* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23738,7 +23741,7 @@ public: /// structural action imposed to a structural item or building element. Examples are support reactions, /// internal forces, and deflections. /// -/// HISTORY  New entity in IFC 2x2. +/// HISTORY  New entity in IFC 2x2. /// /// IFC 2x4 change: Inverse attribute Causes deleted; use IfcRelAssignsToProduct via HasAssignments instead. /// @@ -23765,7 +23768,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralReaction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralReaction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); + IfcStructuralReaction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); typedef IfcStructuralReaction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23808,14 +23811,14 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralSurfaceMember (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralSurfaceMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, IfcPositiveLengthMeasure v9_Thickness); + IfcStructuralSurfaceMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, optional v9_Thickness); typedef IfcStructuralSurfaceMember* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from IAI: Describes surface members with varying section properties. The properties are provided by means of a property set and IfcRelDefinesByProperties or by means of aggregation: An instance of IfcStructuralSurfaceMemberVarying may be composed of two or more instances of IfcStructuralSurfaceMember with differing section properties. These subordinate members relate to the instance of IfcStructuralSurfaceMemberVarying by IfcRelAggregates. /// -/// NOTE  It is recommended that structural activities (actions or reactions) are not connected with aggregated IfcStructuralSurfaceMemberVarying but only with the IfcStructuralSurfaceMembers in the aggregation. That way, difficulties in interpretation of local coordinates are avoided. +/// NOTE  It is recommended that structural activities (actions or reactions) are not connected with aggregated IfcStructuralSurfaceMemberVarying but only with the IfcStructuralSurfaceMembers in the aggregation. That way, difficulties in interpretation of local coordinates are avoided. /// /// HISTORY: New entity in IFC 2x2. /// Use definition changed and attributes deleted in IFC 2x4. @@ -23845,7 +23848,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralSurfaceMemberVarying (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralSurfaceMemberVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, IfcPositiveLengthMeasure v9_Thickness, std::vector /*[2:?]*/ v10_SubsequentThickness, IfcShapeAspect* v11_VaryingThicknessLocation); + IfcStructuralSurfaceMemberVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum v8_PredefinedType, optional v9_Thickness, std::vector /*[2:?]*/ v10_SubsequentThickness, IfcShapeAspect* v11_VaryingThicknessLocation); typedef IfcStructuralSurfaceMemberVarying* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -23907,7 +23910,7 @@ public: /// transformation matrix T(u), which varies with the /// Directrix parameter u. /// -/// NOTE  The +/// NOTE  The /// geometric shape of the solid is not dependent upon the curve /// parameterization; the volume depends upon the area swept and the /// length of the Directrix. @@ -23918,9 +23921,9 @@ public: /// and the ReferenceSurface are positioned within the 3D /// Position coordinate system. /// -/// NOTE  Corresponding ISO 10303-42 entity: surface_curve_swept_area_solid. Please refer to ISO 10303-42 ed.2:1999, p. 274 for the definition in the international standard. +/// NOTE  Corresponding ISO 10303-42 entity: surface_curve_swept_area_solid. Please refer to ISO 10303-42 ed.2:1999, p. 274 for the definition in the international standard. /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Informal propositions: /// @@ -23934,12 +23937,12 @@ public: void setDirectrix(IfcCurve* v); /// The parameter value on the Directrix at which the sweeping operation commences. If no value is provided the start of the sweeping operation is at the start of the Directrix.. /// - /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. + /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. IfcParameterValue StartParam(); void setStartParam(IfcParameterValue v); /// The parameter value on the Directrix at which the sweeping operation ends. If no value is provided the end of the sweeping operation is at the end of the Directrix.. /// - /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. + /// IFC2x4 CHANGE  The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange. IfcParameterValue EndParam(); void setEndParam(IfcParameterValue v); /// The surface containing the Directrix. @@ -23962,7 +23965,7 @@ public: /// /// V = ExtrusionAxis /// -/// The parameterization range for v is -Â¥ < v < Â¥ and for u it is defined by the curve parameterization. +/// The parameterization range for v is -¥ < v < ¥ and for u it is defined by the curve parameterization. /// /// NOTE: Corresponding ISO 10303 entity: surface_of_linear_extrusion. Please refer to ISO/IS 10303-42:1994, p.76 for the final definition of the formal standard. The following adaption has been made. The ExtrusionAxis and the Direction are defined as two separate attributes in correlation to the definition of the extruded_area_solid, and not as a single vector attribute. The vector is derived as ExtrusionAxis. /// @@ -24067,7 +24070,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSystemFurnitureElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSystemFurnitureElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcSystemFurnitureElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcSystemFurnitureElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24082,9 +24085,9 @@ public: /// design, construction and operation related activities as /// well. /// -/// HISTORY  New entity in IFC 1.0. Renamed from IfcWorkTask in IFC 2x. +/// HISTORY  New entity in IFC 1.0. Renamed from IfcWorkTask in IFC 2x. /// -/// IFC2x4 CHANGE  Attributes TaskTime and PredefinedType added. IfcMove and IfcOrderRequest has been removed in IFC2x4 and are now represented by IfcTask. Further information can be found in the description below. +/// IFC2x4 CHANGE  Attributes TaskTime and PredefinedType added. IfcMove and IfcOrderRequest has been removed in IFC2x4 and are now represented by IfcTask. Further information can be found in the description below. /// /// Type use definition /// @@ -24363,7 +24366,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTask (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTask (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority); + IfcTask (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority); typedef IfcTask* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24444,7 +24447,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTransportElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTransportElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v10_PredefinedType); + IfcTransportElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v10_PredefinedType); typedef IfcTransportElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24478,7 +24481,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcActor (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcActor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_TheActor); + IfcActor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcActorSelect v6_TheActor); typedef IfcActor* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24667,7 +24670,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAnnotation (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAnnotation (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); + IfcAnnotation (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); typedef IfcAnnotation* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24695,11 +24698,11 @@ public: /// to an external document or library should be provided to further define the /// profile as described at IfcProfileDef. /// -/// HISTORY  New entity in Release IFC2x Edition 2. +/// HISTORY  New entity in Release IFC2x Edition 2. /// -/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. The attribute CentreOfGravityInY has been made OPTIONAL. +/// IFC2x3 CHANGE  All profile origins are now in the center of the bounding box. The attribute CentreOfGravityInY has been made OPTIONAL. /// -/// IFC2x4 CHANGE  Bottom flange is not necessarily wider than top flange. TopFlangeThickness changed from OPTIONAL to mandatory. Type of TopFlangeFilletRadius relaxed to allow for zero radius. Trailing attribute CentreOfGravityInY deleted, use respective property in IfcExtendedProfileProperties instead. +/// IFC2x4 CHANGE  Bottom flange is not necessarily wider than top flange. TopFlangeThickness changed from OPTIONAL to mandatory. Type of TopFlangeFilletRadius relaxed to allow for zero radius. Trailing attribute CentreOfGravityInY deleted, use respective property in IfcExtendedProfileProperties instead. /// /// Figure 310 illustrates parameters of the asymmetric I-shaped section definition. The parameterized profile defines its own position coordinate system. The underlying coordinate system is defined by the swept area solid that uses the profile definition. It is the xy plane of: /// @@ -24736,7 +24739,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAsymmetricIShapeProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAsymmetricIShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, IfcPositiveLengthMeasure v8_FilletRadius, IfcPositiveLengthMeasure v9_TopFlangeWidth, IfcPositiveLengthMeasure v10_TopFlangeThickness, IfcPositiveLengthMeasure v11_TopFlangeFilletRadius, IfcPositiveLengthMeasure v12_CentreOfGravityInY); + IfcAsymmetricIShapeProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_OverallWidth, IfcPositiveLengthMeasure v5_OverallDepth, IfcPositiveLengthMeasure v6_WebThickness, IfcPositiveLengthMeasure v7_FlangeThickness, optional v8_FilletRadius, IfcPositiveLengthMeasure v9_TopFlangeWidth, optional v10_TopFlangeThickness, optional v11_TopFlangeFilletRadius, optional v12_CentreOfGravityInY); typedef IfcAsymmetricIShapeProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -24769,9 +24772,9 @@ public: /// /// Figure 250 — Block geometry /// -/// NOTE  Corresponding ISO 10303-42 entity: block, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO 10303-42:1994, p. 244 for the definition in the international standard. +/// NOTE  Corresponding ISO 10303-42 entity: block, the position attribute has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO 10303-42:1994, p. 244 for the definition in the international standard. /// -/// HISTORY  New entity in IFC2x3. +/// HISTORY  New entity in IFC2x3. /// /// Texture use definition /// On each side face, textures are aligned facing upright. On the @@ -24984,13 +24987,13 @@ public: /// IfcBuilding.IsDecomposedBy -- referencing /// (IfcBuilding || IfcBuildingStorey) by /// IfcRelAggregates.RelatedObjects. If it refers to another -/// instance ofÿIfcBuilding, the referenced IfcBuilding +/// instance ofÿIfcBuilding, the referenced IfcBuilding /// needs to have a different and lower CompositionType, i.e. ELEMENT /// (if the other IfcBuilding has COMPLEX), or PARTIAL (if the /// other IfcBuilding has ELEMENT). /// /// If there are building elements and/or other elements directly -/// related to the IfcBuildingÿ(like a curtain wall spanning +/// related to the IfcBuildingÿ(like a curtain wall spanning /// several stories), they are associated with the IfcBuilding /// by using the objectified relationship /// IfcRelContainedInSpatialStructure. The IfcBuilding @@ -25024,7 +25027,7 @@ public: /// total height of building, also referred to as ridge height (top of roof structure, e.g the ridge against terrain): provided by BaseQuantity with Name="TotalHeight" /// eaves height of building (base of roof structure, e.g the eaves against terrain): provided by BaseQuantity with Name="EavesHeight" /// -/// ÿ +/// ÿ /// Figure 21 — Building elevations /// /// Geometry Use Definitions @@ -25108,7 +25111,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuilding (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuilding (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcLengthMeasure v10_ElevationOfRefHeight, IfcLengthMeasure v11_ElevationOfTerrain, IfcPostalAddress* v12_BuildingAddress); + IfcBuilding (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_ElevationOfRefHeight, optional v11_ElevationOfTerrain, IfcPostalAddress* v12_BuildingAddress); typedef IfcBuilding* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25152,7 +25155,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcBuildingElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcBuildingElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25214,7 +25217,7 @@ public: /// IfcBuildingStorey.Decomposes -- referencing /// (IfcBuilding || IfcBuildingStorey) by /// IfcRelAggregates.RelatingObject, If it refers to another -/// instance ofÿIfcBuildingStorey, the referenced +/// instance ofÿIfcBuildingStorey, the referenced /// IfcBuildingStorey needs to have a different and higher /// CompositionType, i.e. COMPLEX (if the other /// IfcBuildingStorey has ELEMENT), or ELEMENT (if the other @@ -25222,7 +25225,7 @@ public: /// IfcBuildingStorey.IsDecomposedBy -- referencing /// (IfcBuildingStorey || IfcSpace) by /// IfcRelAggregates.RelatedObjects. If it refers to another -/// instance ofÿIfcBuildingStorey, the referenced +/// instance ofÿIfcBuildingStorey, the referenced /// IfcBuildingStorey needs to have a different and lower /// CompositionType, i.e. ELEMENT (if the other /// IfcBuildingStorey has COMPLEX), or PARTIAL (if the other @@ -25349,7 +25352,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingStorey (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingStorey (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcLengthMeasure v10_Elevation); + IfcBuildingStorey (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_Elevation); typedef IfcBuildingStorey* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25363,7 +25366,7 @@ public: /// profile's centre of the bounding box (for symmetric profiles identical /// with the centre of gravity). /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// /// Figure 312 illustrates parameters of the circular hollow profile definition. The parameterized profile defines its own position coordinate system. The underlying coordinate system is defined by the swept area solid that uses the profile definition. It is the xy plane of: /// @@ -25385,7 +25388,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCircleHollowProfileDef (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCircleHollowProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, IfcLabel v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius, IfcPositiveLengthMeasure v5_WallThickness); + IfcCircleHollowProfileDef (IfcProfileTypeEnum::IfcProfileTypeEnum v1_ProfileType, optional v2_ProfileName, IfcAxis2Placement2D* v3_Position, IfcPositiveLengthMeasure v4_Radius, IfcPositiveLengthMeasure v5_WallThickness); typedef IfcCircleHollowProfileDef* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25501,7 +25504,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcColumnType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcColumnType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcColumnTypeEnum::IfcColumnTypeEnum v10_PredefinedType); + IfcColumnType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcColumnTypeEnum::IfcColumnTypeEnum v10_PredefinedType); typedef IfcColumnType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25623,9 +25626,9 @@ public: /// represents a pool of items having limited availability such as general labor or an equipment fleet. A resource can represent either a generic resource pool (not having any task assignment) or a task-specific resource allocation (having an IfcTask /// assignment). /// -/// HISTORY  New entity in IFC2x2. +/// HISTORY  New entity in IFC2x2. /// -/// IFC2x4 CHANGE  Modified in to promote ResourceIdentifer and ResourceGroup (renamed to LongDescription) to supertype IfcResource and add attributes as described. +/// IFC2x4 CHANGE  Modified in to promote ResourceIdentifer and ResourceGroup (renamed to LongDescription) to supertype IfcResource and add attributes as described. /// /// Type use definition /// IfcConstructionResource defines the occurrence of any construction resource; common information about construction resource types is handled by IfcConstructionResourceType. The IfcConstructionResourceType (if present) may establish the common type name, common properties, common cost rates, and common productivities applied to specific task types. The IfcConstructionResourceType is attached using the IfcRelDefinesByType.RelatingType objectified relationship and is accessible by the inverse IsTypedBy attribute as shown in Figure 186. @@ -25715,7 +25718,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstructionResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstructionResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); + IfcConstructionResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); typedef IfcConstructionResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25741,7 +25744,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcControl (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcControl* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25792,7 +25795,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCostItem (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCostItem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcCostItem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcCostItem* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25874,7 +25877,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCostSchedule (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCostSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_SubmittedBy, IfcActorSelect v7_PreparedBy, IfcDateTimeSelect v8_SubmittedOn, IfcLabel v9_Status, IfcEntities v10_TargetUsers, IfcDateTimeSelect v11_UpdateDate, IfcIdentifier v12_ID, IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum v13_PredefinedType); + IfcCostSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_SubmittedBy, optional v7_PreparedBy, optional v8_SubmittedOn, optional v9_Status, optional v10_TargetUsers, optional v11_UpdateDate, IfcIdentifier v12_ID, IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum v13_PredefinedType); typedef IfcCostSchedule* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25971,7 +25974,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCoveringType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCoveringType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoveringTypeEnum::IfcCoveringTypeEnum v10_PredefinedType); + IfcCoveringType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoveringTypeEnum::IfcCoveringTypeEnum v10_PredefinedType); typedef IfcCoveringType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -25996,7 +25999,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCrewResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCrewResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); + IfcCrewResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); typedef IfcCrewResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26035,7 +26038,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCurtainWallType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCurtainWallType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum v10_PredefinedType); + IfcCurtainWallType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum v10_PredefinedType); typedef IfcCurtainWallType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26061,7 +26064,7 @@ public: /// of product representations. It is used to define an element /// specification (i.e. the specific product information, that is /// common to all occurrences of that product type). -/// NOTEÿ The product representations are defined +/// NOTEÿ The product representations are defined /// as representation maps (at the level of the supertype /// IfcTypeProduct, which gets assigned by an element /// occurrence instance through the @@ -26076,9 +26079,9 @@ public: /// The occurrences of the IfcDistributionElementType are /// represented by instances of IfcDistributionElement (or its /// subtypes). -/// HISTORYÿ New entity in +/// HISTORYÿ New entity in /// Release IFC2x Edition 2. -/// IFC2x3 CHANGEÿ The entity has been made +/// IFC2x3 CHANGEÿ The entity has been made /// non-abstract /// IFC2x4 CHANGE The entity is marked /// as deprecated for instantiation - will be made ABSTRACT after @@ -26093,7 +26096,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcDistributionElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcDistributionElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26173,7 +26176,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionFlowElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionFlowElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcDistributionFlowElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcDistributionFlowElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26214,7 +26217,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricalBaseProperties (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricalBaseProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcEnergySequenceEnum::IfcEnergySequenceEnum v5_EnergySequence, IfcLabel v6_UserDefinedEnergySequence, IfcElectricCurrentEnum::IfcElectricCurrentEnum v7_ElectricCurrentType, IfcElectricVoltageMeasure v8_InputVoltage, IfcFrequencyMeasure v9_InputFrequency, IfcElectricCurrentMeasure v10_FullLoadCurrent, IfcElectricCurrentMeasure v11_MinimumCircuitCurrent, IfcPowerMeasure v12_MaximumPowerInput, IfcPowerMeasure v13_RatedPowerInput, int v14_InputPhase); + IfcElectricalBaseProperties (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_EnergySequence, optional v6_UserDefinedEnergySequence, optional v7_ElectricCurrentType, IfcElectricVoltageMeasure v8_InputVoltage, IfcFrequencyMeasure v9_InputFrequency, optional v10_FullLoadCurrent, optional v11_MinimumCircuitCurrent, optional v12_MaximumPowerInput, optional v13_RatedPowerInput, int v14_InputPhase); typedef IfcElectricalBaseProperties* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26299,7 +26302,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26355,7 +26358,7 @@ public: /// SELF\IfcObjectDefinition.IsDecomposedBy. Components of an /// assembly are described by instances of subtypes of /// IfcElement. -/// In this case, the containedÿsubtypes of IfcElement +/// In this case, the containedÿsubtypes of IfcElement /// shall not be additionally contained in the project spatial /// hierarchy, i.e. the inverse attribute /// SELF\IfcElement.ContainedInStructure of those @@ -26389,7 +26392,7 @@ public: /// have an explicit geometric representation. In some cases it may /// be useful to also expose an own explicit representation of the /// aggregate. -/// NOTEÿ View definitions or implementer +/// NOTEÿ View definitions or implementer /// agreements may further constrain the applicability of certain /// shape representations at the IfcElementAssembly in respect /// of the shape representations of its parts. @@ -26407,7 +26410,7 @@ public: void setAssemblyPlace(IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v); /// Predefined generic types for a element assembly that are specified in an enumeration. There might be property sets defined specifically for each predefined type. /// - /// IFC2x4 CHANGE  The attribute has been changed to be optional. + /// IFC2x4 CHANGE  The attribute has been changed to be optional. IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum PredefinedType(); void setPredefinedType(IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum v); virtual unsigned int getArgumentCount() const { return 10; } @@ -26418,7 +26421,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElementAssembly (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElementAssembly (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum v9_AssemblyPlace, IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum v10_PredefinedType); + IfcElementAssembly (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_AssemblyPlace, IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum v10_PredefinedType); typedef IfcElementAssembly* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26510,7 +26513,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElementComponent (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElementComponent (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcElementComponent (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcElementComponent* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26534,7 +26537,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElementComponentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElementComponentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcElementComponentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcElementComponentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26549,9 +26552,9 @@ public: /// R2 = SemiAxis2 /// and the ellipse is parameterized as: /// -/// The parameterization range is 0 £ -/// u £ 2p (or 0 -/// £ u £ +/// The parameterization range is 0 £ +/// u £ 2p (or 0 +/// £ u £ /// 360 degree). In the placement coordinate system defined above, the ellipse is /// the equation C = 0, where /// @@ -26559,9 +26562,9 @@ public: /// /// The inherited Position.Location from IfcConic is the center of the IfcEllipse, and the inherited Position.P[1] from IfcConic the direction of the SemiAxis1. /// -/// NOTE  Corresponding ISO 10303 entity: ellipse. Please refer to ISO/IS 10303-42:1994, p. 39 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: ellipse. Please refer to ISO/IS 10303-42:1994, p. 39 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 /// /// Figure 280 illustrates the definition of the IfcEllipse within the (in this case three-dimensional) position coordinate system. /// @@ -26620,7 +26623,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEnergyConversionDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEnergyConversionDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcEnergyConversionDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcEnergyConversionDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26635,7 +26638,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEquipmentElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEquipmentElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcEquipmentElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcEquipmentElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26650,7 +26653,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEquipmentStandard (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEquipmentStandard (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcEquipmentStandard (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcEquipmentStandard* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26694,7 +26697,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEvaporativeCoolerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEvaporativeCoolerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum v10_PredefinedType); + IfcEvaporativeCoolerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum v10_PredefinedType); typedef IfcEvaporativeCoolerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26738,7 +26741,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEvaporatorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEvaporatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum v10_PredefinedType); + IfcEvaporatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum v10_PredefinedType); typedef IfcEvaporatorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26755,7 +26758,7 @@ public: /// /// NOTE Corresponding ISO 10303-42 entity: faceted_brep. Please refer to ISO/IS 10303-42:1994, p. 173 for the final definition of the formal standard. In the current IFC Release faceted B-rep with voids is represented by an own subtype and not defined via an implicit ANDOR supertype constraint as in ISO/IS 10303-42:1994. This change has been made due to the fact, that only ONEOF supertype constraint is allowed within the IFC data schema. /// -/// HISTORY  New entity in IFC Release 1.0 +/// HISTORY  New entity in IFC Release 1.0 /// /// Informal proposition: /// @@ -26788,11 +26791,11 @@ public: /// which are defined so that the shell normal point into the /// void. /// -/// NOTEÿ Corresponding ISO 10303-42 entity: brep_with_voids (see note above). Please refer to ISO/IS 10303-42:1994, p. 173 for the final definition of the formal standard. In IFC faceted B-rep with voids is represented by this subtype IfcFacetedBrepWithVoids and not defined via an implicit ANDOR supertype constraint as in ISO/IS 10303-42:1994 between an instance of faceted_brep AND brep_with_voids. This change has been made due to the fact, that only ONEOF supertype constraint is allowed within the IFC object model. +/// NOTEÿ Corresponding ISO 10303-42 entity: brep_with_voids (see note above). Please refer to ISO/IS 10303-42:1994, p. 173 for the final definition of the formal standard. In IFC faceted B-rep with voids is represented by this subtype IfcFacetedBrepWithVoids and not defined via an implicit ANDOR supertype constraint as in ISO/IS 10303-42:1994 between an instance of faceted_brep AND brep_with_voids. This change has been made due to the fact, that only ONEOF supertype constraint is allowed within the IFC object model. /// -/// HISTORYÿ New entity in IFC Release 1.0 +/// HISTORYÿ New entity in IFC Release 1.0 /// -/// IFC2x4 CHANGEÿ Subtyping changed from IfcManifoldSolidBrep to IfcFacetedBrep with upward compatibility for file based exchange. +/// IFC2x4 CHANGEÿ Subtyping changed from IfcManifoldSolidBrep to IfcFacetedBrep with upward compatibility for file based exchange. /// /// Informal propositions: /// @@ -26842,7 +26845,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFastener (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFastener (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFastener (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFastener* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26880,7 +26883,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFastenerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFastenerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFastenerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFastenerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -26989,7 +26992,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFeatureElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFeatureElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFeatureElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFeatureElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27060,7 +27063,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFeatureElementAddition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFeatureElementAddition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFeatureElementAddition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFeatureElementAddition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27126,7 +27129,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFeatureElementSubtraction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFeatureElementSubtraction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFeatureElementSubtraction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFeatureElementSubtraction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27163,7 +27166,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowControllerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowControllerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowControllerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowControllerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27201,7 +27204,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowFittingType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowFittingType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27251,7 +27254,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowMeterType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowMeterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum v10_PredefinedType); + IfcFlowMeterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum v10_PredefinedType); typedef IfcFlowMeterType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27288,7 +27291,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowMovingDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowMovingDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowMovingDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowMovingDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27334,7 +27337,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowSegmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowSegmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27356,7 +27359,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowStorageDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowStorageDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowStorageDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowStorageDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27378,7 +27381,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27401,7 +27404,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowTreatmentDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowTreatmentDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcFlowTreatmentDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcFlowTreatmentDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27520,7 +27523,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFurnishingElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFurnishingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFurnishingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFurnishingElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27535,7 +27538,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFurnitureStandard (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFurnitureStandard (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcFurnitureStandard (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcFurnitureStandard* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27552,7 +27555,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGasTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGasTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum v10_PredefinedType); + IfcGasTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum v10_PredefinedType); typedef IfcGasTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27569,7 +27572,7 @@ public: /// curve). /// The inherited attributes Name and Description can /// be used to define a descriptive name of the grid and to indicate -/// the grid's purpose. A grid is defined by (normally) two, or +/// the grid's purpose. A grid is defined by (normally) two, or /// (in case of a triangular grid) three lists of grid axes. The /// following table shows some examples. /// A grid may support a rectangular layout (Figure 28), a radial layout (Figure 29), or a triangular layout (Figure 30). @@ -27637,7 +27640,7 @@ public: /// IfcCurve, each representing a grid axis. Applicable subtypes /// of IfcCurve are: IfcPolyline, IfcCircle, /// IfcTrimmedCurve (based on BaseCurve referencing -/// IfcLine or IfcCircle).  +/// IfcLine or IfcCircle).  /// Each subtype of IfcCurve may have a curve style /// assigned, using IfcAnnotationCurveOccurrence referencing /// IfcCurveStyle. @@ -27646,11 +27649,11 @@ public: /// using IfcAnnotationTextOccurrence referencing /// IfcTextStyle. /// -/// As shown in Figure 32, the IfcGrid defines a placement coordinate system using the ObjectPlacement. The XY plane of the coordinate system is used to place the 2D grid axes. The Representation of IfcGrid is defined using IfcProductRepresentation, referencing an IfcShapeRepresentation, that includes IfcGeometricCurveSet as Items. All grid axes are added as IfcPolyline to the IfcGeometricCurveSet. +/// As shown in Figure 32, the IfcGrid defines a placement coordinate system using the ObjectPlacement. The XY plane of the coordinate system is used to place the 2D grid axes. The Representation of IfcGrid is defined using IfcProductRepresentation, referencing an IfcShapeRepresentation, that includes IfcGeometricCurveSet as Items. All grid axes are added as IfcPolyline to the IfcGeometricCurveSet. /// /// Figure 32 — Grid layout /// -/// As shown in Figure 33, the attributes UAxes and VAxes define lists of IfcGridAxis within the context of the grid. Each instance of IfcGridAxis refers to the same instance of IfcCurve (here the subtype IfcPolyline) that is contained within the IfcGeometricCurveSet that represents the IfcGrid. +/// As shown in Figure 33, the attributes UAxes and VAxes define lists of IfcGridAxis within the context of the grid. Each instance of IfcGridAxis refers to the same instance of IfcCurve (here the subtype IfcPolyline) that is contained within the IfcGeometricCurveSet that represents the IfcGrid. /// /// Figure 33 — Grid representation class IfcGrid : public IfcProduct { @@ -27675,7 +27678,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGrid (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGrid (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, SHARED_PTR< IfcTemplatedEntityList > v8_UAxes, SHARED_PTR< IfcTemplatedEntityList > v9_VAxes, SHARED_PTR< IfcTemplatedEntityList > v10_WAxes); + IfcGrid (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, SHARED_PTR< IfcTemplatedEntityList > v8_UAxes, SHARED_PTR< IfcTemplatedEntityList > v9_VAxes, optional >> v10_WAxes); typedef IfcGrid* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27686,7 +27689,7 @@ public: /// /// EXAMPLE An example for a group is a system, since it groups elements under the aspect of their role, regardless of their position in a building. /// -/// A group can hold any collection of objects (beingÿproducts, processes, controls, resources, actors or other groups). Thus groups can be nested. An object can be part of zero, one, or many groups. Grouping relationships are not required to be hierarchical nor do they imply a dependency. +/// A group can hold any collection of objects (beingÿproducts, processes, controls, resources, actors or other groups). Thus groups can be nested. An object can be part of zero, one, or many groups. Grouping relationships are not required to be hierarchical nor do they imply a dependency. /// /// NOTE Use IfcRelDecomposes together with the appropriate subtypes of IfcProduct to define an hierarchical aggregation of products. /// @@ -27721,7 +27724,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcGroup (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcGroup* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27768,7 +27771,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcHeatExchangerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcHeatExchangerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum v10_PredefinedType); + IfcHeatExchangerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum v10_PredefinedType); typedef IfcHeatExchangerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27812,7 +27815,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcHumidifierType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcHumidifierType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcHumidifierTypeEnum::IfcHumidifierTypeEnum v10_PredefinedType); + IfcHumidifierType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcHumidifierTypeEnum::IfcHumidifierTypeEnum v10_PredefinedType); typedef IfcHumidifierType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27861,7 +27864,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcInventory (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcInventory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcInventoryTypeEnum::IfcInventoryTypeEnum v6_InventoryType, IfcActorSelect v7_Jurisdiction, SHARED_PTR< IfcTemplatedEntityList > v8_ResponsiblePersons, IfcCalendarDate* v9_LastUpdateDate, IfcCostValue* v10_CurrentValue, IfcCostValue* v11_OriginalValue); + IfcInventory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcInventoryTypeEnum::IfcInventoryTypeEnum v6_InventoryType, IfcActorSelect v7_Jurisdiction, SHARED_PTR< IfcTemplatedEntityList > v8_ResponsiblePersons, IfcCalendarDate* v9_LastUpdateDate, IfcCostValue* v10_CurrentValue, IfcCostValue* v11_OriginalValue); typedef IfcInventory* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27906,7 +27909,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcJunctionBoxType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcJunctionBoxType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum v10_PredefinedType); + IfcJunctionBoxType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum v10_PredefinedType); typedef IfcJunctionBoxType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27949,7 +27952,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLaborResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLaborResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcText v10_SkillSet); + IfcLaborResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_SkillSet); typedef IfcLaborResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -27996,7 +27999,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLampType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLampType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcLampTypeEnum::IfcLampTypeEnum v10_PredefinedType); + IfcLampType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcLampTypeEnum::IfcLampTypeEnum v10_PredefinedType); typedef IfcLampType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28045,7 +28048,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcLightFixtureType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcLightFixtureType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum v10_PredefinedType); + IfcLightFixtureType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum v10_PredefinedType); typedef IfcLightFixtureType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28112,7 +28115,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMechanicalFastener (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMechanicalFastener (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_NominalDiameter, IfcPositiveLengthMeasure v10_NominalLength); + IfcMechanicalFastener (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_NominalDiameter, optional v10_NominalLength); typedef IfcMechanicalFastener* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28162,7 +28165,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMechanicalFastenerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMechanicalFastenerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcMechanicalFastenerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcMechanicalFastenerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28281,7 +28284,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMemberType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMemberType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcMemberTypeEnum::IfcMemberTypeEnum v10_PredefinedType); + IfcMemberType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcMemberTypeEnum::IfcMemberTypeEnum v10_PredefinedType); typedef IfcMemberType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28326,7 +28329,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMotorConnectionType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMotorConnectionType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum v10_PredefinedType); + IfcMotorConnectionType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum v10_PredefinedType); typedef IfcMotorConnectionType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28349,7 +28352,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcMove (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcMove (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority, IfcSpatialStructureElement* v11_MoveFrom, IfcSpatialStructureElement* v12_MoveTo, std::vector /*[1:?]*/ v13_PunchList); + IfcMove (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority, IfcSpatialStructureElement* v11_MoveFrom, IfcSpatialStructureElement* v12_MoveTo, optional /*[1:?]*/> v13_PunchList); typedef IfcMove* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28376,7 +28379,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOccupant (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOccupant (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcActorSelect v6_TheActor, IfcOccupantTypeEnum::IfcOccupantTypeEnum v7_PredefinedType); + IfcOccupant (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcActorSelect v6_TheActor, IfcOccupantTypeEnum::IfcOccupantTypeEnum v7_PredefinedType); typedef IfcOccupant* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28572,7 +28575,7 @@ public: /// IfcArbitraryClosedProfileDef shall be supported. /// Extrusion: The profile shall be extruded vertically, /// i.e. for wall openings along the extrusion direction of the -/// voided element.ÿ If multiple instances of +/// voided element.ÿ If multiple instances of /// IfcExtrudedAreaSolid are used, the extrusion direction /// should be equal. /// @@ -28594,7 +28597,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOpeningElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOpeningElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcOpeningElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcOpeningElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28611,7 +28614,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOrderAction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOrderAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_TaskId, IfcLabel v7_Status, IfcLabel v8_WorkMethod, bool v9_IsMilestone, int v10_Priority, IfcIdentifier v11_ActionID); + IfcOrderAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_TaskId, optional v7_Status, optional v8_WorkMethod, bool v9_IsMilestone, optional v10_Priority, IfcIdentifier v11_ActionID); typedef IfcOrderAction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28658,7 +28661,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcOutletType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcOutletType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcOutletTypeEnum::IfcOutletTypeEnum v10_PredefinedType); + IfcOutletType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcOutletTypeEnum::IfcOutletTypeEnum v10_PredefinedType); typedef IfcOutletType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28681,7 +28684,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPerformanceHistory (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPerformanceHistory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLabel v6_LifeCyclePhase); + IfcPerformanceHistory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcLabel v6_LifeCyclePhase); typedef IfcPerformanceHistory* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28735,7 +28738,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPermit (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPermit (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_PermitID); + IfcPermit (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_PermitID); typedef IfcPermit* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28782,7 +28785,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPipeFittingType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPipeFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum v10_PredefinedType); + IfcPipeFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum v10_PredefinedType); typedef IfcPipeFittingType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28833,7 +28836,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPipeSegmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPipeSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum v10_PredefinedType); + IfcPipeSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum v10_PredefinedType); typedef IfcPipeSegmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28866,7 +28869,7 @@ public: /// IfcMaterialLayerSet; otherwise they are represented by /// instances of IfcPlate. /// -/// HISTORY  New +/// HISTORY  New /// entity in Release IFC2x2. /// /// Informal proposition: @@ -28928,7 +28931,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPlateType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPlateType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPlateTypeEnum::IfcPlateTypeEnum v10_PredefinedType); + IfcPlateType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPlateTypeEnum::IfcPlateTypeEnum v10_PredefinedType); typedef IfcPlateType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -28938,15 +28941,15 @@ public: /// list of n points, P1, P2 ... Pn. /// The ith segment of the curve is parameterized as follows: /// -///     +///     /// for 1 ≤ i ≤ n - 1 /// /// where i - 1 ≤ u ≤ i and /// with parametric range of 0 <≤ u ≤ n - 1. /// -/// NOTE  Corresponding ISO 10303 entity: polyline. Please refer to ISO/IS 10303-42:1994, p. 45 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: polyline. Please refer to ISO/IS 10303-42:1994, p. 45 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 class IfcPolyline : public IfcBoundedCurve { public: /// The points defining the polyline. @@ -29031,7 +29034,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPort (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPort (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); + IfcPort (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation); typedef IfcPort* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29040,9 +29043,9 @@ public: /// logical set of actions to be taken in response to an event /// or to cause an event to occur. /// -/// HISTORY  New entity in IFC2x2 +/// HISTORY  New entity in IFC2x2 /// -/// IFC2x4 CHANGE  ProcedureType renamed to PredefinedType and made optional (upward compatible). Where rules WR1 and WR2 have been removed. +/// IFC2x4 CHANGE  ProcedureType renamed to PredefinedType and made optional (upward compatible). Where rules WR1 and WR2 have been removed. /// /// Use definitions /// @@ -29158,7 +29161,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProcedure (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProcedure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ProcedureID, IfcProcedureTypeEnum::IfcProcedureTypeEnum v7_ProcedureType, IfcLabel v8_UserDefinedProcedureType); + IfcProcedure (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_ProcedureID, IfcProcedureTypeEnum::IfcProcedureTypeEnum v7_ProcedureType, optional v8_UserDefinedProcedureType); typedef IfcProcedure* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29236,7 +29239,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProjectOrder (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProjectOrder (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ID, IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum v7_PredefinedType, IfcLabel v8_Status); + IfcProjectOrder (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_ID, IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum v7_PredefinedType, optional v8_Status); typedef IfcProjectOrder* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29255,7 +29258,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProjectOrderRecord (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProjectOrderRecord (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, SHARED_PTR< IfcTemplatedEntityList > v6_Records, IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordTypeEnum v7_PredefinedType); + IfcProjectOrderRecord (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, SHARED_PTR< IfcTemplatedEntityList > v6_Records, IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordTypeEnum v7_PredefinedType); typedef IfcProjectOrderRecord* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29351,9 +29354,9 @@ public: /// IfcExtrudedAreaSolid.Depth is interpreted as projection /// depth /// -/// NOTE  Rectangles are now defined centric, the placement location has to be set: +/// NOTE  Rectangles are now defined centric, the placement location has to be set: /// IfcCartesianPoint(XDim/2,YDim/2) -/// NOTE  The local placement directions for the IfcProjectionElement are only given as an example, other directions are valid as well. +/// NOTE  The local placement directions for the IfcProjectionElement are only given as an example, other directions are valid as well. /// /// Figure 38 — Projection representation /// @@ -29377,7 +29380,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProjectionElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProjectionElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcProjectionElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcProjectionElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29430,7 +29433,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcProtectiveDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcProtectiveDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum v10_PredefinedType); + IfcProtectiveDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum v10_PredefinedType); typedef IfcProtectiveDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29476,7 +29479,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPumpType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPumpType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcPumpTypeEnum::IfcPumpTypeEnum v10_PredefinedType); + IfcPumpType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcPumpTypeEnum::IfcPumpTypeEnum v10_PredefinedType); typedef IfcPumpType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29529,7 +29532,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRailingType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRailingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcRailingTypeEnum::IfcRailingTypeEnum v10_PredefinedType); + IfcRailingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcRailingTypeEnum::IfcRailingTypeEnum v10_PredefinedType); typedef IfcRailingType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29567,7 +29570,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRampFlightType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRampFlightType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcRampFlightTypeEnum::IfcRampFlightTypeEnum v10_PredefinedType); + IfcRampFlightType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcRampFlightTypeEnum::IfcRampFlightTypeEnum v10_PredefinedType); typedef IfcRampFlightType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29604,7 +29607,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAggregates (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAggregates (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); + IfcRelAggregates (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, IfcObjectDefinition* v5_RelatingObject, SHARED_PTR< IfcTemplatedEntityList > v6_RelatedObjects); typedef IfcRelAggregates* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29623,7 +29626,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRelAssignsTasks (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRelAssignsTasks (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, IfcObjectTypeEnum::IfcObjectTypeEnum v6_RelatedObjectsType, IfcControl* v7_RelatingControl, IfcScheduleTimeControl* v8_TimeForTask); + IfcRelAssignsTasks (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, SHARED_PTR< IfcTemplatedEntityList > v5_RelatedObjects, optional v6_RelatedObjectsType, IfcControl* v7_RelatingControl, IfcScheduleTimeControl* v8_TimeForTask); typedef IfcRelAssignsTasks* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29678,7 +29681,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSanitaryTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSanitaryTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum v10_PredefinedType); + IfcSanitaryTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum v10_PredefinedType); typedef IfcSanitaryTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29766,7 +29769,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcScheduleTimeControl (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcScheduleTimeControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcDateTimeSelect v6_ActualStart, IfcDateTimeSelect v7_EarlyStart, IfcDateTimeSelect v8_LateStart, IfcDateTimeSelect v9_ScheduleStart, IfcDateTimeSelect v10_ActualFinish, IfcDateTimeSelect v11_EarlyFinish, IfcDateTimeSelect v12_LateFinish, IfcDateTimeSelect v13_ScheduleFinish, IfcTimeMeasure v14_ScheduleDuration, IfcTimeMeasure v15_ActualDuration, IfcTimeMeasure v16_RemainingTime, IfcTimeMeasure v17_FreeFloat, IfcTimeMeasure v18_TotalFloat, bool v19_IsCritical, IfcDateTimeSelect v20_StatusTime, IfcTimeMeasure v21_StartFloat, IfcTimeMeasure v22_FinishFloat, IfcPositiveRatioMeasure v23_Completion); + IfcScheduleTimeControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ActualStart, optional v7_EarlyStart, optional v8_LateStart, optional v9_ScheduleStart, optional v10_ActualFinish, optional v11_EarlyFinish, optional v12_LateFinish, optional v13_ScheduleFinish, optional v14_ScheduleDuration, optional v15_ActualDuration, optional v16_RemainingTime, optional v17_FreeFloat, optional v18_TotalFloat, optional v19_IsCritical, optional v20_StatusTime, optional v21_StartFloat, optional v22_FinishFloat, optional v23_Completion); typedef IfcScheduleTimeControl* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29785,7 +29788,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcServiceLife (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcServiceLife (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum v6_ServiceLifeType, IfcTimeMeasure v7_ServiceLifeDuration); + IfcServiceLife (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum v6_ServiceLifeType, IfcTimeMeasure v7_ServiceLifeDuration); typedef IfcServiceLife* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -29827,7 +29830,7 @@ public: /// ELEMENT = site /// PARTIAL = site section /// -/// HISTORY  New entity in IFC Release 1.0. +/// HISTORY  New entity in IFC Release 1.0. /// /// Property Set Use Definition /// The property sets relating to the IfcSite are defined by @@ -29903,7 +29906,7 @@ public: /// the reference height of each building situated at the site is given againt the same height datum used at this location. /// the elevations of each storey belonging to each building are given as local height relative to the reference height of the building. /// -///   +///   /// Figure 52 — Site elevations /// /// Geometry Use Definitions @@ -29964,7 +29967,7 @@ public: /// Figure 55 — Site breaklines /// Figure 56 — Site breaklines facetation /// -/// NOTE  The geometric representation of the site has been based on the ARM level description of the site_shape_representation given within the ISO 10303-225 "Building Elements using explicit shape representation". +/// NOTE  The geometric representation of the site has been based on the ARM level description of the site_shape_representation given within the ISO 10303-225 "Building Elements using explicit shape representation". /// /// Body Representation /// The body representation of IfcSite is defined using a @@ -30017,7 +30020,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSite (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSite (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcCompoundPlaneAngleMeasure v10_RefLatitude, IfcCompoundPlaneAngleMeasure v11_RefLongitude, IfcLengthMeasure v12_RefElevation, IfcLabel v13_LandTitleNumber, IfcPostalAddress* v14_SiteAddress); + IfcSite (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, optional v10_RefLatitude, optional v11_RefLongitude, optional v12_RefElevation, optional v13_LandTitleNumber, IfcPostalAddress* v14_SiteAddress); typedef IfcSite* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30050,7 +30053,7 @@ public: /// IfcMaterialLayerSet; otherwise they are represented by /// instances of IfcSlab, or IfcSlabElementedCase. /// -/// HISTORY  New +/// HISTORY  New /// entity in Release IFC2x2. /// /// Informal proposition: @@ -30112,7 +30115,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSlabType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSlabType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSlabTypeEnum::IfcSlabTypeEnum v10_PredefinedType); + IfcSlabType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSlabTypeEnum::IfcSlabTypeEnum v10_PredefinedType); typedef IfcSlabType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30181,7 +30184,7 @@ public: /// set for all types of spaces to capture the thermal /// requirements /// Pset_SpaceThermalDesign: common property set -/// for all all types of spaces to capture building service design +/// for all all types of spaces to capture building service design /// values /// /// Quantity Use Definition @@ -30210,7 +30213,7 @@ public: /// IfcSpace.Decomposes -- referencing (IfcSite || /// IfcBuildingStorey || IfcSpace) by /// IfcRelAggregates.RelatingObject, If it refers to another -/// instance of IfcSpace, the referenced IfcSpace +/// instance of IfcSpace, the referenced IfcSpace /// needs to have a different and higher CompositionType, i.e. /// COMPLEX (if the other IfcSpace has ELEMENT), or ELEMENT (if /// the other IfcSpace has PARTIAL). @@ -30222,7 +30225,7 @@ public: /// other IfcSpace has ELEMENT). /// /// If there are building elements and/or other elements directly -/// related to the IfcSpace (like most furniture and +/// related to the IfcSpace (like most furniture and /// distribution elements), they are associated with the /// IfcSpace by using the objectified relationship /// IfcRelContainedInSpatialStructure. The IfcSpace @@ -30355,7 +30358,7 @@ public: /// /// 'Brep' representation /// The fallback advanced geometric representation of -/// IfcSpace is defined using the Brep solid geometry. may +/// IfcSpace is defined using the Brep solid geometry. may /// be represented as a single or multiple instances of /// IfcFacetedBrep or IfcFacetedBrepWithVoids. The Brep /// representation allows for the representation of complex element @@ -30386,7 +30389,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpace (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpace (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcLabel v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v10_InteriorOrExteriorSpace, IfcLengthMeasure v11_ElevationWithFlooring); + IfcSpace (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_LongName, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType, IfcInternalOrExternalEnum::IfcInternalOrExternalEnum v10_InteriorOrExteriorSpace, optional v11_ElevationWithFlooring); typedef IfcSpace* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30434,7 +30437,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpaceHeaterType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpaceHeaterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum v10_PredefinedType); + IfcSpaceHeaterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum v10_PredefinedType); typedef IfcSpaceHeaterType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30467,7 +30470,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpaceProgram (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpaceProgram (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_SpaceProgramIdentifier, IfcAreaMeasure v7_MaxRequiredArea, IfcAreaMeasure v8_MinRequiredArea, IfcSpatialStructureElement* v9_RequestedLocation, IfcAreaMeasure v10_StandardRequiredArea); + IfcSpaceProgram (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_SpaceProgramIdentifier, optional v7_MaxRequiredArea, optional v8_MinRequiredArea, IfcSpatialStructureElement* v9_RequestedLocation, IfcAreaMeasure v10_StandardRequiredArea); typedef IfcSpaceProgram* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30486,7 +30489,7 @@ public: /// space information, that is common to all occurrences of that /// space type. Space types may be exchanged without being already /// assigned to occurrences. -/// NOTE ÿThe space types are often used to +/// NOTE ÿThe space types are often used to /// represent space catalogues, less so for sharing a common /// representation map. Space types in a space catalogue share same /// space classification and a common set of space requirement @@ -30494,7 +30497,7 @@ public: /// The occurrences of IfcSpaceType are represented by /// instances of IfcSpace. /// -/// HISTORY ÿNew entity in +/// HISTORY ÿNew entity in /// IFC2x3. /// /// Property Set Use Definition: @@ -30531,7 +30534,7 @@ public: /// property set for all types of spaces to capture the thermal /// requirements /// Pset_SpaceThermalDesign: common property set -/// for allÿall types of spaces to capture building service design +/// for allÿall types of spaces to capture building service design /// values /// /// Geometry Use Definition: @@ -30542,7 +30545,7 @@ public: /// representations (e.g. with IfcShaperepresentation's having /// an RepresentationIdentifier 'Box', 'FootPrint', or 'Body'). /// -/// NOTE ÿThe product representations are defined as +/// NOTE ÿThe product representations are defined as /// representation maps (at the level of the supertype /// IfcTypeProduct, which gets assigned by an element /// occurrence instance through the @@ -30566,7 +30569,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSpaceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSpaceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSpaceTypeEnum::IfcSpaceTypeEnum v10_PredefinedType); + IfcSpaceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSpaceTypeEnum::IfcSpaceTypeEnum v10_PredefinedType); typedef IfcSpaceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30610,7 +30613,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStackTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStackTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum v10_PredefinedType); + IfcStackTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum v10_PredefinedType); typedef IfcStackTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30648,7 +30651,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStairFlightType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStairFlightType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcStairFlightTypeEnum::IfcStairFlightTypeEnum v10_PredefinedType); + IfcStairFlightType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcStairFlightTypeEnum::IfcStairFlightTypeEnum v10_PredefinedType); typedef IfcStairFlightType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30656,7 +30659,7 @@ public: /// Definition from IAI: A structural action is a structural activity that acts upon /// a structural item or building element. /// -/// HISTORY  New entity in IFC 2x2. +/// HISTORY  New entity in IFC 2x2. /// IFC 2x4 change: Attribute DestabilizingLoad made optional. Attribute CausedBy deleted; use IfcRelAssignsToProduct via ReferencedBy instead. /// /// Structural actions are grouped into either an IfcStructuralLoadGroup of predefined @@ -30689,7 +30692,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralAction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy); + IfcStructuralAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy); typedef IfcStructuralAction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30713,7 +30716,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralConnection (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); + IfcStructuralConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); typedef IfcStructuralConnection* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30745,7 +30748,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralCurveConnection (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralCurveConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); + IfcStructuralCurveConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); typedef IfcStructuralCurveConnection* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30770,7 +30773,7 @@ public: /// /// An IfcProfileDef is a two-dimensional geometric object with a xp,yp coordinate system. The profile is inserted into the curve member model thus that the origin of xp,yp is located at the member's reference curve and that xp,yp are parallel with and directed like the local y,z. /// -/// NOTE  Due to convention in structural mechanics, axis names of IfcStructuralCurveMember differ from axis names of building elements like IfcBeamStandardCase: The extrusion axis of IfcStructuralCurveMember is called x while the extrusion axis of IfcBeamStandardCase is called z. Hence x,y,z of IfcStructuralCurveMember correspond with z,x,y of IfcBeamStandardCase. +/// NOTE  Due to convention in structural mechanics, axis names of IfcStructuralCurveMember differ from axis names of building elements like IfcBeamStandardCase: The extrusion axis of IfcStructuralCurveMember is called x while the extrusion axis of IfcBeamStandardCase is called z. Hence x,y,z of IfcStructuralCurveMember correspond with z,x,y of IfcBeamStandardCase. /// /// If the profile is meant to be inserted centrically in terms of structural section properties, it is necessary that the origin of xp,yp is identical with the geometric centroid of the profile (commonly also called centre of gravity). If subtypes of IfcParameterizedProfileDef are used which are only singly symmetric or are asymmetric, an explicit translation by IfcParameterizedProfileDef.Position.Location is required then. /// @@ -30778,7 +30781,7 @@ public: /// /// Otherwise, the profile is inserted eccentrically and a different cardinal point should be set accordingly. /// -/// NOTE  Another eccentricity model is available independently of eccentric profile specification: The reference curve of the member may be located eccentrically relative to the reference points of the connected IfcStructuralPointConnections. The connection relationship is then established by IfcRelConnectsWithEccentricity. Whether one or the other or both eccentricity models may be used is subject to information requirements and local agreements. +/// NOTE  Another eccentricity model is available independently of eccentric profile specification: The reference curve of the member may be located eccentrically relative to the reference points of the connected IfcStructuralPointConnections. The connection relationship is then established by IfcRelConnectsWithEccentricity. Whether one or the other or both eccentricity models may be used is subject to information requirements and local agreements. /// /// Topology Use Definitions: /// @@ -30800,16 +30803,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralCurveMember (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralCurveMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType); + IfcStructuralCurveMember (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType); typedef IfcStructuralCurveMember* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from IAI: Describes edge members with varying profile properties. Each instance of IfcStructuralCurveMemberVarying is composed of two or more instances of IfcStructuralCurveMember with differing profile properties. These subordinate members relate to the instance of IfcStructuralCurveMemberVarying by IfcRelAggregates. /// -/// NOTE  A curve member whose variation of profile properties can be sufficiently described by a start profile and an end profile (e.g. tapers) shall be modeled as a single direct instance of the supertype IfcStructuralCurveMember. +/// NOTE  A curve member whose variation of profile properties can be sufficiently described by a start profile and an end profile (e.g. tapers) shall be modeled as a single direct instance of the supertype IfcStructuralCurveMember. /// -/// NOTE  It is recommended that structural activities (actions or reactions) are not connected with aggregated IfcStructuralCurveMemberVarying but only with the IfcStructuralCurveMembers in the aggregation. That way, difficulties in interpretation of local coordinates are avoided. +/// NOTE  It is recommended that structural activities (actions or reactions) are not connected with aggregated IfcStructuralCurveMemberVarying but only with the IfcStructuralCurveMembers in the aggregation. That way, difficulties in interpretation of local coordinates are avoided. /// /// HISTORY: New entity in IFC 2x2. /// Use definition changed in IFC 2x4. @@ -30835,7 +30838,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralCurveMemberVarying (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralCurveMemberVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType); + IfcStructuralCurveMemberVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum v8_PredefinedType); typedef IfcStructuralCurveMemberVarying* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30846,7 +30849,7 @@ public: /// /// IFC 2x4 change: Intermediate supertype IfcStructuralCurveAction inserted. Derived attribute PredefinedType added. /// -/// NOTE  Like its supertype IfcStructuralCurveAction, this action type may also act on curved edges. +/// NOTE  Like its supertype IfcStructuralCurveAction, this action type may also act on curved edges. class IfcStructuralLinearAction : public IfcStructuralAction { public: IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum ProjectedOrTrue(); @@ -30859,7 +30862,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLinearAction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLinearAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue); + IfcStructuralLinearAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue); typedef IfcStructuralLinearAction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30878,7 +30881,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLinearActionVarying (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLinearActionVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads); + IfcStructuralLinearActionVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads); typedef IfcStructuralLinearActionVarying* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30947,7 +30950,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralLoadGroup (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralLoadGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum v6_PredefinedType, IfcActionTypeEnum::IfcActionTypeEnum v7_ActionType, IfcActionSourceTypeEnum::IfcActionSourceTypeEnum v8_ActionSource, IfcRatioMeasure v9_Coefficient, IfcLabel v10_Purpose); + IfcStructuralLoadGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum v6_PredefinedType, IfcActionTypeEnum::IfcActionTypeEnum v7_ActionType, IfcActionSourceTypeEnum::IfcActionSourceTypeEnum v8_ActionSource, optional v9_Coefficient, optional v10_Purpose); typedef IfcStructuralLoadGroup* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30958,7 +30961,7 @@ public: /// /// IFC 2x4 change: Intermediate supertype IfcStructuralSurfaceAction inserted. Derived attribute PredefinedType added. /// -/// NOTE  Like its supertype IfcStructuralSurfaceAction, this action type may also act on curved faces. +/// NOTE  Like its supertype IfcStructuralSurfaceAction, this action type may also act on curved faces. class IfcStructuralPlanarAction : public IfcStructuralAction { public: IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum ProjectedOrTrue(); @@ -30971,7 +30974,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralPlanarAction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralPlanarAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue); + IfcStructuralPlanarAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue); typedef IfcStructuralPlanarAction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -30990,7 +30993,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralPlanarActionVarying (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralPlanarActionVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads); + IfcStructuralPlanarActionVarying (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy, IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum v12_ProjectedOrTrue, IfcShapeAspect* v13_VaryingAppliedLoadLocation, SHARED_PTR< IfcTemplatedEntityList > v14_SubsequentAppliedLoads); typedef IfcStructuralPlanarActionVarying* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31050,7 +31053,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralPointAction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralPointAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy); + IfcStructuralPointAction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal, bool v10_DestabilizingLoad, IfcStructuralReaction* v11_CausedBy); typedef IfcStructuralPointAction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31078,7 +31081,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralPointConnection (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralPointConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); + IfcStructuralPointConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); typedef IfcStructuralPointConnection* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31136,7 +31139,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralPointReaction (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralPointReaction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); + IfcStructuralPointReaction (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcStructuralLoad* v8_AppliedLoad, IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum v9_GlobalOrLocal); typedef IfcStructuralPointReaction* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31167,7 +31170,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralResultGroup (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralResultGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum v6_TheoryType, IfcStructuralLoadGroup* v7_ResultForLoadGroup, bool v8_IsLinear); + IfcStructuralResultGroup (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum v6_TheoryType, IfcStructuralLoadGroup* v7_ResultForLoadGroup, bool v8_IsLinear); typedef IfcStructuralResultGroup* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31194,7 +31197,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralSurfaceConnection (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralSurfaceConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); + IfcStructuralSurfaceConnection (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcBoundaryCondition* v8_AppliedCondition); typedef IfcStructuralSurfaceConnection* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31241,7 +31244,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSubContractResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSubContractResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcActorSelect v10_SubContractor, IfcText v11_JobDescription); + IfcSubContractResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_SubContractor, optional v11_JobDescription); typedef IfcSubContractResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31299,7 +31302,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSwitchingDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSwitchingDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum v10_PredefinedType); + IfcSwitchingDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum v10_PredefinedType); typedef IfcSwitchingDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31332,7 +31335,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSystem (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSystem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcSystem (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcSystem* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31382,7 +31385,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTankType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTankType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTankTypeEnum::IfcTankTypeEnum v10_PredefinedType); + IfcTankType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTankTypeEnum::IfcTankTypeEnum v10_PredefinedType); typedef IfcTankType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31405,7 +31408,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTimeSeriesSchedule (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTimeSeriesSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcEntities v6_ApplicableDates, IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleTypeEnum v7_TimeSeriesScheduleType, IfcTimeSeries* v8_TimeSeries); + IfcTimeSeriesSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ApplicableDates, IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleTypeEnum v7_TimeSeriesScheduleType, IfcTimeSeries* v8_TimeSeries); typedef IfcTimeSeriesSchedule* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31450,7 +31453,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTransformerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTransformerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTransformerTypeEnum::IfcTransformerTypeEnum v10_PredefinedType); + IfcTransformerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTransformerTypeEnum::IfcTransformerTypeEnum v10_PredefinedType); typedef IfcTransformerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31481,13 +31484,13 @@ public: /// device types (or styles) is handled by /// IfcTransportElementType. The /// IfcTransportElementType (if present) may establish the -/// commonÿtype name, usage (or predefined) type, common material +/// commonÿtype name, usage (or predefined) type, common material /// layer set, common set of properties and common shape /// representations (using IfcRepresentationMap). The /// IfcTransportElementType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcTransportElementType is attachedÿ(i.e. if only +/// If no IfcTransportElementType is attachedÿ(i.e. if only /// occurrence information is given) the PredefinedType should /// be provided. If set to .USERDEFINED. a user defined value can be /// provided by the ObjectType attribute. @@ -31516,7 +31519,7 @@ public: /// spatial hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuilding being the default /// container. /// @@ -31595,7 +31598,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTransportElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTransportElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcTransportElementTypeEnum::IfcTransportElementTypeEnum v9_OperationType, IfcMassMeasure v10_CapacityByWeight, IfcCountMeasure v11_CapacityByNumber); + IfcTransportElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OperationType, optional v10_CapacityByWeight, optional v11_CapacityByNumber); typedef IfcTransportElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31750,7 +31753,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTubeBundleType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTubeBundleType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum v10_PredefinedType); + IfcTubeBundleType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum v10_PredefinedType); typedef IfcTubeBundleType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31796,7 +31799,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcUnitaryEquipmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcUnitaryEquipmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum v10_PredefinedType); + IfcUnitaryEquipmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum v10_PredefinedType); typedef IfcUnitaryEquipmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31852,7 +31855,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcValveType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcValveType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcValveTypeEnum::IfcValveTypeEnum v10_PredefinedType); + IfcValveType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcValveTypeEnum::IfcValveTypeEnum v10_PredefinedType); typedef IfcValveType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -31953,7 +31956,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcVirtualElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcVirtualElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcVirtualElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcVirtualElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32055,7 +32058,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWallType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWallType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcWallTypeEnum::IfcWallTypeEnum v10_PredefinedType); + IfcWallType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcWallTypeEnum::IfcWallTypeEnum v10_PredefinedType); typedef IfcWallType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32109,16 +32112,16 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWasteTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWasteTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum v10_PredefinedType); + IfcWasteTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum v10_PredefinedType); typedef IfcWasteTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// An IfcWorkControl is an abstract supertype which captures information that is common to both IfcWorkPlan and IfcWorkSchedule. /// -/// HISTORY  New class in IFC 2x +/// HISTORY  New class in IFC 2x /// -/// CHANGE IFC2x4  Corrected assignment of resources to work control in documentation. Assignment of tasks to work control updated based on changes of task time definitions and the introduction of a summary task. Identifier has been renamed (now Identification) and promoted to supertype IfcControl +/// CHANGE IFC2x4  Corrected assignment of resources to work control in documentation. Assignment of tasks to work control updated based on changes of task time definitions and the introduction of a summary task. Identifier has been renamed (now Identification) and promoted to supertype IfcControl /// /// A work control may have resources assigned to it, this is /// handled by the IfcRelAssignsToControl relationship. @@ -32209,7 +32212,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWorkControl (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWorkControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType); + IfcWorkControl (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType); typedef IfcWorkControl* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32249,7 +32252,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWorkPlan (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWorkPlan (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType); + IfcWorkPlan (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType); typedef IfcWorkPlan* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32304,12 +32307,12 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWorkSchedule (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWorkSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, SHARED_PTR< IfcTemplatedEntityList > v8_Creators, IfcLabel v9_Purpose, IfcTimeMeasure v10_Duration, IfcTimeMeasure v11_TotalFloat, IfcDateTimeSelect v12_StartTime, IfcDateTimeSelect v13_FinishTime, IfcWorkControlTypeEnum::IfcWorkControlTypeEnum v14_WorkControlType, IfcLabel v15_UserDefinedControlType); + IfcWorkSchedule (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_Identifier, IfcDateTimeSelect v7_CreationDate, optional >> v8_Creators, optional v9_Purpose, optional v10_Duration, optional v11_TotalFloat, IfcDateTimeSelect v12_StartTime, optional v13_FinishTime, optional v14_WorkControlType, optional v15_UserDefinedControlType); typedef IfcWorkSchedule* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; -/// Definition from IAI: A zone isÿa group of spaces, +/// Definition from IAI: A zone isÿa group of spaces, /// partial spaces or other zones. Zone structures may not be /// hierarchical (in contrary to the spatial structure of a project - /// see IfcSpatialStructureElement), i.e. one individual @@ -32318,9 +32321,9 @@ public: /// IfcZone by using the objectified relationship /// IfcRelAssignsToGroup as specified at the supertype /// IfcGroup. -/// NOTE ÿCertain use cases may restrict the +/// NOTE ÿCertain use cases may restrict the /// freedom of non hierarchical relationships. In some building -/// service use cases the zone denotes aÿview based delimited volume +/// service use cases the zone denotes aÿview based delimited volume /// for the purpose of analysis and calculation. This type of zone /// cannot overlap with respect to that analysis, but may overlap /// otherwise. @@ -32331,12 +32334,12 @@ public: /// and placement. Therefore it cannot be used for spatial zones /// having a different shape and size compared to the shape and size /// of aggregated spaces. -/// NOTEÿ The IfcZone is regarded as the +/// NOTEÿ The IfcZone is regarded as the /// spatial system (as compared to the building service, electrical, /// or analytical system), the name remains IfcZone for /// compatibility reasons, instead of using a proper naming /// convention, like IfcSpatialSystem. -/// NOTE ÿOne of the purposes of a zone is to +/// NOTE ÿOne of the purposes of a zone is to /// define a fire compartmentation. In this case it defines the /// geometric information about the fire compartment (through the /// contained spaces) and information, whether this compartment is @@ -32347,7 +32350,7 @@ public: /// independent shape has to be provided to the fire compartment, /// then the entity IfcSpatialZone shall be /// used. -/// RECOMMENDATIONÿ In case of a zone denoting a +/// RECOMMENDATIONÿ In case of a zone denoting a /// (fire) compartment, the following types should be used, if /// applicable, as values of the ObjectType attribute: /// @@ -32366,9 +32369,9 @@ public: /// refers to, e.g. to a particular IfcBuildingStorey by using /// the IfcRelServicesBuildings relationship, accessible via /// the inverse attribute ServicesBuilding. -/// HISTORYÿ New entity in +/// HISTORYÿ New entity in /// IFC Release 1.0 -/// IFC2x4 CHANGEÿ The entity is now +/// IFC2x4 CHANGEÿ The entity is now /// subtyped from IfcSystem (not its supertype /// IfcGroup) with upward compatibility for file based /// exchange. @@ -32404,7 +32407,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcZone (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcZone (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcZone (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcZone* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32474,7 +32477,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcActionRequest (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcActionRequest (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_RequestID); + IfcActionRequest (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_RequestID); typedef IfcActionRequest* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32518,7 +32521,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAirTerminalBoxType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAirTerminalBoxType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum v10_PredefinedType); + IfcAirTerminalBoxType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum v10_PredefinedType); typedef IfcAirTerminalBoxType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32561,7 +32564,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAirTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAirTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum v10_PredefinedType); + IfcAirTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum v10_PredefinedType); typedef IfcAirTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32605,7 +32608,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAirToAirHeatRecoveryType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAirToAirHeatRecoveryType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum v10_PredefinedType); + IfcAirToAirHeatRecoveryType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum v10_PredefinedType); typedef IfcAirToAirHeatRecoveryType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32689,7 +32692,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAsset (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAsset (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_AssetID, IfcCostValue* v7_OriginalValue, IfcCostValue* v8_CurrentValue, IfcCostValue* v9_TotalReplacementCost, IfcActorSelect v10_Owner, IfcActorSelect v11_User, IfcPerson* v12_ResponsiblePerson, IfcCalendarDate* v13_IncorporationDate, IfcCostValue* v14_DepreciatedValue); + IfcAsset (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcIdentifier v6_AssetID, IfcCostValue* v7_OriginalValue, IfcCostValue* v8_CurrentValue, IfcCostValue* v9_TotalReplacementCost, IfcActorSelect v10_Owner, IfcActorSelect v11_User, IfcPerson* v12_ResponsiblePerson, IfcCalendarDate* v13_IncorporationDate, IfcCostValue* v14_DepreciatedValue); typedef IfcAsset* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32740,9 +32743,9 @@ public: /// /// Figure 277 — B-spline curve /// -/// NOTE  Corresponding ISO 10303 entity: b_spline_curve. Please refer to ISO/IS 10303-42:1994, p. 45 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: b_spline_curve. Please refer to ISO/IS 10303-42:1994, p. 45 for the final definition of the formal standard. /// -/// HISTORY  New entity in Release IFC2x2. +/// HISTORY  New entity in Release IFC2x2. class IfcBSplineCurve : public IfcBoundedCurve { public: /// The algebraic degree of the basis functions. @@ -32884,7 +32887,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBeamType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBeamType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBeamTypeEnum::IfcBeamTypeEnum v10_PredefinedType); + IfcBeamType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBeamTypeEnum::IfcBeamTypeEnum v10_PredefinedType); typedef IfcBeamType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -32946,7 +32949,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBoilerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBoilerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBoilerTypeEnum::IfcBoilerTypeEnum v10_PredefinedType); + IfcBoilerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBoilerTypeEnum::IfcBoilerTypeEnum v10_PredefinedType); typedef IfcBoilerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33324,7 +33327,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcBuildingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcBuildingElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33339,7 +33342,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElementComponent (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElementComponent (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcBuildingElementComponent (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcBuildingElementComponent* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33371,7 +33374,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElementPart (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElementPart (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcBuildingElementPart (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcBuildingElementPart* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33399,9 +33402,9 @@ public: /// applications can not provide additional semantic /// classification. /// -/// HISTORY  New entity +/// HISTORY  New entity /// in IFC Release 2x. -/// IFC2x4 CHANGE  The attribute +/// IFC2x4 CHANGE  The attribute /// CompositionType has been replaced by PredefinedType, /// being a superset of the enumerators. /// Type Use Definition @@ -33435,7 +33438,7 @@ public: /// PredefinedType = ProvisionForVoid. /// Material information can also be given at the /// IfcBuildingElementProxyType, defining the common attribute -/// data for all occurrences of the same type. It is then +/// data for all occurrences of the same type. It is then /// accessible by the inverse IsTypedBy relationship pointing to /// IfcBuildingElementProxyType.HasAssociations and via /// IfcRelAssociatesMaterial.RelatingMaterial to @@ -33458,7 +33461,7 @@ public: /// /// Property sets can also be given at the /// IfcBuildingElementProxyType, defining the common property -/// data for all occurrences of the same type. It is then +/// data for all occurrences of the same type. It is then /// accessible by the inverse IsTypedBy relationship pointing to /// IfcBuildingElementProxyType.HasPropertySets. If both are /// given, then the properties directly assigned to @@ -33470,13 +33473,13 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second (optional) relationship is the aggregation -/// within an element assembly. +/// within an element assembly. /// /// The IfcBuildingElementProxy is places within the project /// spatial hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes of IfcSpatialStructureElement are valid +/// Subtypes of IfcSpatialStructureElement are valid /// spatial containers, with IfcBuildingStorey being the default /// container. /// The IfcBuildingElementProxy may be aggregated into an @@ -33486,7 +33489,7 @@ public: /// IfcElement can be an element assembly, with /// IfcElementAssembly as a special focus subtype. In this case /// it should not be additionally contained in the project spatial -/// hierarchy, i.e. SELF\IfcElement.ContainedInStructure +/// hierarchy, i.e. SELF\IfcElement.ContainedInStructure /// should be NIL. /// /// Geometry Use Definition @@ -33580,20 +33583,20 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElementProxy (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElementProxy (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcElementCompositionEnum::IfcElementCompositionEnum v9_CompositionType); + IfcBuildingElementProxy (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_CompositionType); typedef IfcBuildingElementProxy* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; }; /// Definition from IAI: -/// TheÿIfcBuildingElementProxyType defines a list of +/// TheÿIfcBuildingElementProxyType defines a list of /// commonly shared property set definitions of a building /// element proxy and an optional set of product /// representations. It is used to define an element /// specification (i.e. the specific product information, that /// is common to all occurrences of that product type). /// -/// NOTEÿ The product representations are defined as +/// NOTEÿ The product representations are defined as /// representation maps (at the level of the supertype /// IfcTypeProduct, which gets assigned by an element /// occurrence instance through the @@ -33602,8 +33605,8 @@ public: /// /// A building element proxy type is used to define the common /// properties of a certain type of a building element proxy -/// that may be applied to many instances of thatÿtype to -/// assign a specific style. Building element proxy typesÿmay +/// that may be applied to many instances of thatÿtype to +/// assign a specific style. Building element proxy typesÿmay /// be exchanged without being already assigned to occurrences. /// /// NOTE Although an building element proxy does not have @@ -33617,7 +33620,7 @@ public: /// are represented by instances of /// IfcBuildingElementProxy. /// -/// HISTORYÿ New entity in +/// HISTORYÿ New entity in /// Release IFC2x Edition 3. class IfcBuildingElementProxyType : public IfcBuildingElementType { public: @@ -33632,7 +33635,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBuildingElementProxyType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBuildingElementProxyType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum v10_PredefinedType); + IfcBuildingElementProxyType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum v10_PredefinedType); typedef IfcBuildingElementProxyType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33676,7 +33679,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCableCarrierFittingType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCableCarrierFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum v10_PredefinedType); + IfcCableCarrierFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum v10_PredefinedType); typedef IfcCableCarrierFittingType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33726,7 +33729,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCableCarrierSegmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCableCarrierSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum v10_PredefinedType); + IfcCableCarrierSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum v10_PredefinedType); typedef IfcCableCarrierSegmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33785,7 +33788,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCableSegmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCableSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum v10_PredefinedType); + IfcCableSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum v10_PredefinedType); typedef IfcCableSegmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33835,7 +33838,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcChillerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcChillerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcChillerTypeEnum::IfcChillerTypeEnum v10_PredefinedType); + IfcChillerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcChillerTypeEnum::IfcChillerTypeEnum v10_PredefinedType); typedef IfcChillerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33850,19 +33853,19 @@ public: /// /// and the circle is parameterized as /// -/// The parameterization range is 0 £ -/// u £2p (or 0 -/// £u £ +/// The parameterization range is 0 £ +/// u £2p (or 0 +/// £u £ /// 360 degree). In the placement coordinate system defined above, the circle is /// the equation C = 0, where /// /// The positive sense of the circle at any point is in the tangent direction, T, to the curve at the point, where /// -/// NOTE  A circular arc is defined by using the trimmed curve (IfcTrimmedCurve) entity in conjunction with the circle (IfcCircle) entity as the BasisCurve. +/// NOTE  A circular arc is defined by using the trimmed curve (IfcTrimmedCurve) entity in conjunction with the circle (IfcCircle) entity as the BasisCurve. /// -/// NOTE  Corresponding ISO 10303 entity: circle, please refer to ISO/IS 10303-42:1994, p. 38 for the final definition of the formal standard. +/// NOTE  Corresponding ISO 10303 entity: circle, please refer to ISO/IS 10303-42:1994, p. 38 for the final definition of the formal standard. /// -/// HISTORY  New class in IFC Release 1.0 +/// HISTORY  New class in IFC Release 1.0 /// /// Figure 278 illustrates the definition of the IfcCircle within the (in this case three-dimensional) position coordinate system. /// @@ -33925,7 +33928,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCoilType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCoilType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoilTypeEnum::IfcCoilTypeEnum v10_PredefinedType); + IfcCoilType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoilTypeEnum::IfcCoilTypeEnum v10_PredefinedType); typedef IfcCoilType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -33945,7 +33948,7 @@ public: /// IfcStructuralCurveMember being part of an /// IfcStructuralAnalysisModel. /// -/// NOTE ÿFor any longitudial structural member, not +/// NOTE ÿFor any longitudial structural member, not /// constrained to be predominately horizontal nor vertical, or where /// this semantic information is irrelevant, the entity /// IfcMember exists. @@ -33963,7 +33966,7 @@ public: /// geometry based on the swept solid), if a 3D geometric /// representation is assigned. In addition they have to have a /// corresponding IfcMaterialProfileSetUsage assigned. -/// NOTEÿ View definitions and implementer +/// NOTEÿ View definitions and implementer /// agreements may further constrain the applicable geometry types, /// e.g. by excluding tapering from an IfcColumnStandardCase /// implementation. @@ -33979,13 +33982,13 @@ public: /// IfcColumn defines the occuurence of any column, common /// information about column types (or styles) is handled by /// IfcColumnType. The IfcColumnType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common material layer set, common set of properties and common /// shape representations (using IfcRepresentationMap). The /// IfcColumnType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcColumnType is attachedÿ(i.e. if only +/// If no IfcColumnType is attachedÿ(i.e. if only /// occurrence information is given) the PredefinedType should /// be provided. If set to .USERDEFINED. a user defined value can be /// provided by the ObjectType attribute. @@ -34002,7 +34005,7 @@ public: /// concept. /// Material information can also be given at the /// IfcColumnType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then accessible by the +/// occurrences of the same type.ÿIt is then accessible by the /// inverse IsTypedBy /// relationship pointing to /// IfcColumnType.HasAssociations and via @@ -34023,7 +34026,7 @@ public: /// /// Property sets can also be given at the IfcColumnType, /// defining the common property data for all occurrences of the same -/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to +/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to /// IfcColumnType.HasPropertySets. If both are given, then the /// properties directly assigned to IfcColumn overrides the /// properties assigned to IfcColumnType. @@ -34048,13 +34051,13 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcColumn, is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. /// The IfcColumn, may be aggregated into an element @@ -34065,7 +34068,7 @@ public: /// IfcElementAssembly as a special focus subtype. In this /// case it should not be additionally contained in the project /// spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// /// Geometry Use Definition @@ -34124,8 +34127,8 @@ public: /// Solid: IfcExtrudedAreaSolid, /// IfcRevolvedAreaSolid shall be supported /// Profile: all subtypes of IfcProfileDef (with -/// exception of IfcArbitraryOpenProfileDef)ÿ -/// Extrusion:ÿAll extrusion directions shall be +/// exception of IfcArbitraryOpenProfileDef)ÿ +/// Extrusion:ÿAll extrusion directions shall be /// supported /// /// Figure 81 illustrates a 'SweptSolid' geometric representation. There are no restrictions or conventions on @@ -34184,7 +34187,7 @@ public: /// /// Profile: see 'SweptSolid' geometric /// representation -/// Extrusion:ÿnot applicable +/// Extrusion:ÿnot applicable /// /// MappedRepresentation Representation Type /// The 'MappedRepresentation' representation type is supported as @@ -34196,7 +34199,7 @@ public: /// RepresentationIdentifier : 'Body' /// RepresentationType : 'MappedRepresentation' /// -/// The same constraints, as given for theÿ 'SweptSolid', +/// The same constraints, as given for theÿ 'SweptSolid', /// 'Clipping', 'AdvancedSweptSolid', 'SurfaceModel' and 'Bre' /// geometric representation, shall apply to the /// MappedRepresentation of the @@ -34211,7 +34214,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcColumn (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcColumn (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcColumn (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcColumn* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34256,7 +34259,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCompressorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCompressorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCompressorTypeEnum::IfcCompressorTypeEnum v10_PredefinedType); + IfcCompressorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCompressorTypeEnum::IfcCompressorTypeEnum v10_PredefinedType); typedef IfcCompressorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34301,7 +34304,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCondenserType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCondenserType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCondenserTypeEnum::IfcCondenserTypeEnum v10_PredefinedType); + IfcCondenserType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCondenserTypeEnum::IfcCondenserTypeEnum v10_PredefinedType); typedef IfcCondenserType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34316,7 +34319,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCondition (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCondition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcCondition (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcCondition* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34335,7 +34338,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConditionCriterion (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConditionCriterion (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcConditionCriterionSelect v6_Criterion, IfcDateTimeSelect v7_CriterionDateTime); + IfcConditionCriterion (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcConditionCriterionSelect v6_Criterion, IfcDateTimeSelect v7_CriterionDateTime); typedef IfcConditionCriterion* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34372,7 +34375,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstructionEquipmentResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstructionEquipmentResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); + IfcConstructionEquipmentResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); typedef IfcConstructionEquipmentResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34421,7 +34424,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstructionMaterialResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstructionMaterialResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, IfcEntities v10_Suppliers, IfcRatioMeasure v11_UsageRatio); + IfcConstructionMaterialResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity, optional v10_Suppliers, optional v11_UsageRatio); typedef IfcConstructionMaterialResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34451,7 +34454,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcConstructionProductResource (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcConstructionProductResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcIdentifier v6_ResourceIdentifier, IfcLabel v7_ResourceGroup, IfcResourceConsumptionEnum::IfcResourceConsumptionEnum v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); + IfcConstructionProductResource (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, optional v6_ResourceIdentifier, optional v7_ResourceGroup, optional v8_ResourceConsumption, IfcMeasureWithUnit* v9_BaseQuantity); typedef IfcConstructionProductResource* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34498,7 +34501,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCooledBeamType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCooledBeamType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum v10_PredefinedType); + IfcCooledBeamType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum v10_PredefinedType); typedef IfcCooledBeamType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34549,7 +34552,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCoolingTowerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCoolingTowerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum v10_PredefinedType); + IfcCoolingTowerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum v10_PredefinedType); typedef IfcCoolingTowerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34610,7 +34613,7 @@ public: /// representation and the space has defined space boundaries, then /// the covering, which relates to that space, may be assigned to the /// space boundaries using the link -/// toÿIfcRelSpaceBoundary, +/// toÿIfcRelSpaceBoundary, /// if the covering does not relate to a space, then the covering /// should be assigned to the building element or a distribution /// element using the IfcRelCoversBldgElements @@ -34625,7 +34628,7 @@ public: /// The IfcCovering defines the occuurence of any covering, /// common information about covering types (or styles) is handled by /// IfcCoveringType. The IfcCoveringType (if present) -/// may establish the commonÿtype name, usage (or predefined) type, +/// may establish the commonÿtype name, usage (or predefined) type, /// common set of properties, common material layer set, and common /// shape representations (using IfcRepresentationMap). The /// IfcCoveringType is attached using the @@ -34636,7 +34639,7 @@ public: /// slabs with constant thickness along the extrusion direction), the /// IfcCoveringType should have a unique /// IfcMaterialLayerSet, that is referenced by -/// theÿIfcMaterialLayerSetUsage assigned to all occurrences +/// theÿIfcMaterialLayerSetUsage assigned to all occurrences /// of this covering type. /// /// Figure 91 illustrates assignment of IfcMaterialLayerSetUsage and IfcMaterialLayerSet to the covering type and the covering occurrence. @@ -34726,7 +34729,7 @@ public: /// /// GeometricSet Representation /// The 'GeometricSet' geometric representation of -/// IfcCovering supports area definitions as 3D surfaces.ÿ +/// IfcCovering supports area definitions as 3D surfaces.ÿ /// /// RepresentationIdentifier : 'Surface' /// RepresentationType : 'GeometricSet' @@ -34754,7 +34757,7 @@ public: /// /// SweptSolid Representation /// The 'SweptSolid' geometric representation of -/// IfcCovering supports volume definitions as 3D solids.ÿ +/// IfcCovering supports volume definitions as 3D solids.ÿ /// /// RepresentationIdentifier : 'Body' /// RepresentationType : 'SweptSolid' @@ -34795,7 +34798,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCovering (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCovering (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcCoveringTypeEnum::IfcCoveringTypeEnum v9_PredefinedType); + IfcCovering (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType); typedef IfcCovering* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -34815,14 +34818,14 @@ public: /// wall, common information about curtain wall types (or styles) is /// handled by IfcCurtainWallType. The /// IfcCurtainWallType (if present) may establish the -/// commonÿtype name, usage (or predefined) type, common material +/// commonÿtype name, usage (or predefined) type, common material /// information, common set of properties and common shape /// representations (using IfcRepresentationMap). The /// IfcCurtainWallType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsDefinedBy /// attribute. -/// If no IfcCurtainWallType is attachedÿ(i.e. if only +/// If no IfcCurtainWallType is attachedÿ(i.e. if only /// occurrence information is given) the predefined type may be given /// by using the ObjectType attribute. /// NOTE Since the IfcCurtainWall might be @@ -34948,7 +34951,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcCurtainWall (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcCurtainWall (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcCurtainWall (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcCurtainWall* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35000,7 +35003,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDamperType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDamperType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDamperTypeEnum::IfcDamperTypeEnum v10_PredefinedType); + IfcDamperType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDamperTypeEnum::IfcDamperTypeEnum v10_PredefinedType); typedef IfcDamperType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35203,7 +35206,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDiscreteAccessory (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDiscreteAccessory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcDiscreteAccessory (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcDiscreteAccessory* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35406,7 +35409,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDiscreteAccessoryType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDiscreteAccessoryType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcDiscreteAccessoryType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcDiscreteAccessoryType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35461,7 +35464,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionChamberElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionChamberElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum v10_PredefinedType); + IfcDistributionChamberElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEnum v10_PredefinedType); typedef IfcDistributionChamberElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35530,7 +35533,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionControlElementType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionControlElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType); + IfcDistributionControlElementType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType); typedef IfcDistributionControlElementType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35598,13 +35601,13 @@ public: /// different containment relationships. The first (and in most /// implementation scenarios mandatory) relationship is the /// hierachical spatial containment, the second (optional) -/// relationship is the aggregation within anÿelement assembly. +/// relationship is the aggregation within anÿelement assembly. /// /// The IfcDistributionElement is places within the /// project spatial hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, referring to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcSpace being the default /// container. /// The IfcDistributionElement may be aggregated into an @@ -35615,7 +35618,7 @@ public: /// IfcElementAssembly as a special focus subtype. In this /// case it should not be additionally contained in the project /// spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// /// Geometry Use Definitions @@ -35707,7 +35710,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcDistributionElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcDistributionElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35791,7 +35794,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionFlowElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionFlowElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcDistributionFlowElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcDistributionFlowElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35893,7 +35896,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionPort (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionPort (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcFlowDirectionEnum::IfcFlowDirectionEnum v8_FlowDirection); + IfcDistributionPort (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_FlowDirection); typedef IfcDistributionPort* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -35913,7 +35916,7 @@ public: /// IfcRelFillsElement relationship, then the IfcDoor /// has an inverse attribute FillsVoids provided, /// -/// NOTEÿ View definitions or +/// NOTEÿ View definitions or /// implementer agreements may restrict the relationship to only /// include one window (or door) into one opening. /// @@ -35935,7 +35938,7 @@ public: /// that references one IfcDoorLiningProperties and on to many /// IfcDoorPanelProperties. /// -/// NOTEÿ see +/// NOTEÿ see /// IfcDoorStandardCase for all specific constraints imposed /// by this subtype. /// @@ -35968,7 +35971,7 @@ public: /// the construction material type /// the particular attributes for the lining by the /// IfcDoorLiningProperties -/// the particular attributes for the panels by theÿ +/// the particular attributes for the panels by theÿ /// IfcDoorPanelProperties /// /// HISTORY New entity in IFC Release 1.0. @@ -36033,13 +36036,13 @@ public: /// containment relationships as shown in Figure 96. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcDoor is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. /// The IfcDoor may be aggregated into an element assembly @@ -36048,7 +36051,7 @@ public: /// SELF\IfcObjectDefinition.Decomposes. Doors may be part of /// an IfcCurtainWall as a special focus subtype. In this case /// it should not be additionally contained in the project spatial -/// hierarchy, i.e.ÿSELF\IfcElement.ContainedInStructure +/// hierarchy, i.e.ÿSELF\IfcElement.ContainedInStructure /// should be NIL. /// /// NOTE The containment shall be defined independently of the @@ -36089,12 +36092,12 @@ public: /// is defined within the world coordinate system. /// /// Geometric Representation -/// Theÿgeometric representation of IfcDoor is defined -/// using the following (potentiallyÿmultiple) +/// Theÿgeometric representation of IfcDoor is defined +/// using the following (potentiallyÿmultiple) /// IfcShapeRepresentation's for its /// IfcProductDefinitionShape: /// -/// Profile: Aÿ'Curve3D' +/// Profile: Aÿ'Curve3D' /// consisting of a single losed curve defining the outer boundary of /// the door (lining). The door parametric representation uses this /// profile in order to apply the door lining and panel parameter. If @@ -36111,11 +36114,11 @@ public: /// IfcDoorPanelProperties. The purpose of the parameter is /// described at those entities and below (door opening operation by /// door type). -/// Profile -ÿ'Curve3D' representation +/// Profile -ÿ'Curve3D' representation /// The door profile is represented by a three-dimensional closed /// curve within a particular shape representation. The profile is /// used to apply the parameter of the parametric door -/// representation.ÿThe following attribute values for the +/// representation.ÿThe following attribute values for the /// IfcShapeRepresentation holding this geometric /// representation shall be used: /// @@ -36129,18 +36132,18 @@ public: /// a parametric representation shall be applied to the door /// AND /// -/// theÿdoor is 'free standing', or -/// the opening into which theÿdoor is inserted is not extruded +/// theÿdoor is 'free standing', or +/// the opening into which theÿdoor is inserted is not extruded /// horizontally (i.e. where the opening profile does not match -/// theÿdoor profile) +/// theÿdoor profile) /// -/// FootPrint -ÿ'GeometricCurveSet' or 'Annotation2D' +/// FootPrint -ÿ'GeometricCurveSet' or 'Annotation2D' /// representation /// The door foot print is represented by a set of -/// two-dimensionalÿcurves (or in case of 'Annotation2D' additional +/// two-dimensionalÿcurves (or in case of 'Annotation2D' additional /// hatching and text) within a particular shape representation. The /// foot print is used for the planview representation of the -/// door.ÿThe following attribute values for the +/// door.ÿThe following attribute values for the /// IfcShapeRepresentation holding this geometric /// representation shall be used: /// @@ -36154,7 +36157,7 @@ public: /// parametric representation) or by explicit 3D shape. The 3D shape /// is given by using extrusion geometry, or surface models, or Brep /// models within a particular shape representation. The body is used -/// for the model view representation of the door.ÿThe following +/// for the model view representation of the door.ÿThe following /// attribute values for the IfcShapeRepresentation holding /// this geometric representation shall be used: /// @@ -36172,7 +36175,7 @@ public: /// RepresentationIdentifier : 'FootPrint', 'Body' /// RepresentationType : 'MappedRepresentation' /// -/// The same constraints, as given for theÿ 'FootPrint', 'Body' +/// The same constraints, as given for theÿ 'FootPrint', 'Body' /// representation identifiers, shall apply to the /// MappedRepresentation of the /// IfcRepresentationMap. @@ -36191,13 +36194,13 @@ public: /// relatioship, having a horizontal extrusion (along the y-axis of /// the IfcDoor), the overall size is determined by the /// extrusion profile of the IfcOpeningElement. -/// NOTE ÿThe OverallWidth and +/// NOTE ÿThe OverallWidth and /// OverallHeight parameters are for informational purpose /// only. /// The opening direction is determined by the local placement of /// IfcDoor and the OperationType of the door /// style as shown in Figure 97. -/// NOTE ÿThere are different definitions in +/// NOTE ÿThere are different definitions in /// various countries on what a left opening or left hung or left /// swing door is (same for right). Therefore the IFC definition may /// derivate from the local standard and need to be mapped @@ -36215,7 +36218,7 @@ public: /// placement. The determination of whether the door opens to the /// left or to the right is done at the level of the /// IfcDoorType. Here it is a left side opening door given -/// byÿIfcDoorType.OperationType = +/// byÿIfcDoorType.OperationType = /// SingleSwingLeft /// refered to as LEFT HAND (LH) in US * /// @@ -36234,7 +36237,7 @@ public: /// opens to the right, a separate door style needs to be used (here /// IfcDoorTypee.OperationType = SingleSwingRight) and it /// always opens into the direction of the positive Y axis of the -/// local placement.ÿ +/// local placement.ÿ /// refered to as RIGHT HAND (RH) in US * /// /// refered to as DIN-L (left hung) in Germany @@ -36260,14 +36263,14 @@ public: bool hasOverallHeight(); /// Overall measure of the height, it reflects the Z Dimension of a bounding box, enclosing the body of the door opening. If omitted, the OverallHeight should be taken from the geometric representation of the IfcOpening in which the door is inserted. /// - /// NOTE  The body of the door might be taller then the door opening (e.g. in cases where the door lining includes a casing). In these cases the OverallHeight shall still be given as the door opening height, and not as the total height of the door lining. + /// NOTE  The body of the door might be taller then the door opening (e.g. in cases where the door lining includes a casing). In these cases the OverallHeight shall still be given as the door opening height, and not as the total height of the door lining. IfcPositiveLengthMeasure OverallHeight(); void setOverallHeight(IfcPositiveLengthMeasure v); /// Whether the optional attribute OverallWidth is defined for this IfcDoor bool hasOverallWidth(); /// Overall measure of the width, it reflects the X Dimension of a bounding box, enclosing the body of the door opening. If omitted, the OverallWidth should be taken from the geometric representation of the IfcOpening in which the door is inserted. /// - /// NOTE  The body of the door might be wider then the door opening (e.g. in cases where the door lining includes a casing). In these cases the OverallWidth shall still be given as the door opening width, and not as the total width of the door lining. + /// NOTE  The body of the door might be wider then the door opening (e.g. in cases where the door lining includes a casing). In these cases the OverallWidth shall still be given as the door opening width, and not as the total width of the door lining. IfcPositiveLengthMeasure OverallWidth(); void setOverallWidth(IfcPositiveLengthMeasure v); virtual unsigned int getArgumentCount() const { return 10; } @@ -36278,7 +36281,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDoor (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDoor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_OverallHeight, IfcPositiveLengthMeasure v10_OverallWidth); + IfcDoor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OverallHeight, optional v10_OverallWidth); typedef IfcDoor* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36325,7 +36328,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDuctFittingType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDuctFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum v10_PredefinedType); + IfcDuctFittingType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum v10_PredefinedType); typedef IfcDuctFittingType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36372,7 +36375,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDuctSegmentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDuctSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum v10_PredefinedType); + IfcDuctSegmentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum v10_PredefinedType); typedef IfcDuctSegmentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36416,7 +36419,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDuctSilencerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDuctSilencerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum v10_PredefinedType); + IfcDuctSilencerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum v10_PredefinedType); typedef IfcDuctSilencerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36435,7 +36438,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEdgeFeature (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength); + IfcEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength); typedef IfcEdgeFeature* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36482,7 +36485,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricApplianceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricApplianceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum v10_PredefinedType); + IfcElectricApplianceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum v10_PredefinedType); typedef IfcElectricApplianceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36527,7 +36530,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricFlowStorageDeviceType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricFlowStorageDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum v10_PredefinedType); + IfcElectricFlowStorageDeviceType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum v10_PredefinedType); typedef IfcElectricFlowStorageDeviceType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36577,7 +36580,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricGeneratorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricGeneratorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum v10_PredefinedType); + IfcElectricGeneratorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum v10_PredefinedType); typedef IfcElectricGeneratorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36594,7 +36597,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricHeaterType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricHeaterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum v10_PredefinedType); + IfcElectricHeaterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum v10_PredefinedType); typedef IfcElectricHeaterType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36639,7 +36642,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricMotorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricMotorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum v10_PredefinedType); + IfcElectricMotorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum v10_PredefinedType); typedef IfcElectricMotorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36684,7 +36687,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricTimeControlType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricTimeControlType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum v10_PredefinedType); + IfcElectricTimeControlType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum v10_PredefinedType); typedef IfcElectricTimeControlType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36699,7 +36702,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricalCircuit (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricalCircuit (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType); + IfcElectricalCircuit (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType); typedef IfcElectricalCircuit* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36714,7 +36717,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricalElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricalElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcElectricalElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcElectricalElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36738,7 +36741,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcEnergyConversionDevice (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcEnergyConversionDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcEnergyConversionDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcEnergyConversionDevice* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36784,7 +36787,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFanType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFanType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFanTypeEnum::IfcFanTypeEnum v10_PredefinedType); + IfcFanType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFanTypeEnum::IfcFanTypeEnum v10_PredefinedType); typedef IfcFanType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36831,7 +36834,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFilterType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFilterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFilterTypeEnum::IfcFilterTypeEnum v10_PredefinedType); + IfcFilterType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFilterTypeEnum::IfcFilterTypeEnum v10_PredefinedType); typedef IfcFilterType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36882,7 +36885,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFireSuppressionTerminalType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFireSuppressionTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum v10_PredefinedType); + IfcFireSuppressionTerminalType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum v10_PredefinedType); typedef IfcFireSuppressionTerminalType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36906,7 +36909,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowController (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowController (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowController (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowController* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36926,7 +36929,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowFitting (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowFitting (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowFitting (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowFitting* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36974,7 +36977,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowInstrumentType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowInstrumentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum v10_PredefinedType); + IfcFlowInstrumentType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum v10_PredefinedType); typedef IfcFlowInstrumentType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -36994,7 +36997,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowMovingDevice (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowMovingDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowMovingDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowMovingDevice* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37032,7 +37035,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowSegment (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowSegment (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowSegment (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowSegment* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37056,7 +37059,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowStorageDevice (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowStorageDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowStorageDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowStorageDevice* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37082,7 +37085,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowTerminal (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowTerminal (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowTerminal (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowTerminal* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37102,7 +37105,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFlowTreatmentDevice (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFlowTreatmentDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcFlowTreatmentDevice (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcFlowTreatmentDevice* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37133,7 +37136,7 @@ class IfcFooting : public IfcBuildingElement { public: /// The generic type of the footing. /// - /// IFC 2x4 change:  Attribute made optional. Type information can be provided by IfcRelDefinesByType and IfcFootingType. + /// IFC 2x4 change:  Attribute made optional. Type information can be provided by IfcRelDefinesByType and IfcFootingType. IfcFootingTypeEnum::IfcFootingTypeEnum PredefinedType(); void setPredefinedType(IfcFootingTypeEnum::IfcFootingTypeEnum v); virtual unsigned int getArgumentCount() const { return 9; } @@ -37144,7 +37147,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcFooting (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcFooting (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcFootingTypeEnum::IfcFootingTypeEnum v9_PredefinedType); + IfcFooting (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcFootingTypeEnum::IfcFootingTypeEnum v9_PredefinedType); typedef IfcFooting* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37177,7 +37180,7 @@ public: /// geometry based on the swept solid), if a 3D geometric /// representation is assigned. In addition they have to have a /// corresponding IfcMaterialProfileSetUsage assigned. -/// NOTEÿ View definitions and implementer +/// NOTEÿ View definitions and implementer /// agreements may further constrain the applicable geometry types, /// e.g. by excluding tapering from an IfcMemberStandardCase /// implementation. @@ -37193,13 +37196,13 @@ public: /// IfcMember defines the occuurence of any member, common /// information about member types (or styles) is handled by /// IfcMemberType. The IfcMemberType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common material profile set, common set of properties and common /// shape representations (using IfcRepresentationMap). The /// IfcMemberType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcMemberType is attachedÿ(i.e. if only +/// If no IfcMemberType is attachedÿ(i.e. if only /// occurrence information is given) the PredefinedType should /// be provided. If set to .USERDEFINED. a user defined value can be /// provided by the ObjectType attribute. @@ -37210,14 +37213,14 @@ public: /// IfcRelAssociatesMaterial.RelatingMaterial. It is /// accessible by the inverse HasAssociations relationship. /// Material information can also be given at -/// theÿIfcMemberType, defining the common attribute data for -/// all occurrences of the same type.ÿIt is then accessible by the +/// theÿIfcMemberType, defining the common attribute data for +/// all occurrences of the same type.ÿIt is then accessible by the /// inverse v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcMember* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37436,14 +37439,14 @@ class IfcPile : public IfcBuildingElement { public: /// The predefined generic type of the pile according to function. /// - /// IFC 2x4 change:  Attribute made optional. Type information can be provided by IfcRelDefinesByType and IfcPileType. + /// IFC 2x4 change:  Attribute made optional. Type information can be provided by IfcRelDefinesByType and IfcPileType. IfcPileTypeEnum::IfcPileTypeEnum PredefinedType(); void setPredefinedType(IfcPileTypeEnum::IfcPileTypeEnum v); /// Whether the optional attribute ConstructionType is defined for this IfcPile bool hasConstructionType(); /// General designator for how the pile is constructed. /// - /// IFC 2x4 change:  Material profile association capability by means of IfcRelAssociatesMaterial has been added. The attribute ConstructionType should not be used whenever its information can be provided by a material profile set, either associated with the IfcPile object or, if present, with a corresponding instance of IfcPileType. + /// IFC 2x4 change:  Material profile association capability by means of IfcRelAssociatesMaterial has been added. The attribute ConstructionType should not be used whenever its information can be provided by a material profile set, either associated with the IfcPile object or, if present, with a corresponding instance of IfcPileType. IfcPileConstructionEnum::IfcPileConstructionEnum ConstructionType(); void setConstructionType(IfcPileConstructionEnum::IfcPileConstructionEnum v); virtual unsigned int getArgumentCount() const { return 10; } @@ -37454,7 +37457,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPile (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPile (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPileTypeEnum::IfcPileTypeEnum v9_PredefinedType, IfcPileConstructionEnum::IfcPileConstructionEnum v10_ConstructionType); + IfcPile (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcPileTypeEnum::IfcPileTypeEnum v9_PredefinedType, optional v10_ConstructionType); typedef IfcPile* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37462,22 +37465,22 @@ public: /// Definition from IAI: An IfcPlate is a planar and /// often flat part with constant thickness. A plate can be a /// structural part carrying loads between or beyond points of -/// support, however it is not required to be load bearing.ÿThe +/// support, however it is not required to be load bearing.ÿThe /// location of the plate (being horizontal, vertical or sloped) is /// not relevant to its definition (in contrary to IfcWall and -/// IfcSlab (as floor slab)).ÿ -/// NOTE ÿPlates areÿnormally made of steel, other +/// IfcSlab (as floor slab)).ÿ +/// NOTE ÿPlates areÿnormally made of steel, other /// metallic material, or by glass panels. However the definition of /// IfcPlate is material independent and specific material /// information shall be handled by using /// IfcAssociatesMaterial to assign a material specification -/// to the IfcPlate.ÿ +/// to the IfcPlate.ÿ /// -/// NOTE ÿAlthough not necessarily, plates are often add-on +/// NOTE ÿAlthough not necessarily, plates are often add-on /// parts. This is represented by the IfcRelAggregates /// decomposition mechanism used to aggregate parts, such as /// IfcPlate, into a container element, e.g. -/// IfcElementAssembly, or IfcCurtainWall.ÿ +/// IfcElementAssembly, or IfcCurtainWall.ÿ /// /// NOTE The representation of a plate in a structural /// analysis model is provided by IfcStructuralSurfaceMember @@ -37517,13 +37520,13 @@ public: /// The IfcPlate defines the occuurence of any plate, /// common information about plate types (or styles) is handled by /// IfcPlateType. The IfcPlateType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common set of properties, common material layer set, and common /// shape representations (using IfcRepresentationMap). The /// IfcPlateType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcPlateType is attachedÿ(i.e. if only occurrence +/// If no IfcPlateType is attachedÿ(i.e. if only occurrence /// information is given) the PredefinedType should be /// provided. If set to .USERDEFINED. a user defined value can be /// provided by the ObjectType attribute. @@ -37539,7 +37542,7 @@ public: /// concept. /// Material information can also be given at the /// IfcPlateType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then accessible by the +/// occurrences of the same type.ÿIt is then accessible by the /// inverse IsTypedBy /// relationship pointing to IfcPlateType.HasAssociations and /// via IfcRelAssociatesMaterial.RelatingMaterial. @@ -37576,23 +37579,23 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second relationship is the aggregation within -/// anÿelement assembly. +/// anÿelement assembly. /// -/// TheÿIfcPlate is places within the project spatial +/// TheÿIfcPlate is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, referring to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. -/// TheÿIfcPlate may be aggregated into an element +/// TheÿIfcPlate may be aggregated into an element /// assembly using the objectified relationship /// IfcRelAggregates, referring to it by its inverse attribute /// SELF\IfcObjectDefinition.Decomposes. Any subtype of /// IfcElement can be an element assembly, with /// IfcElementAssembly as a special focus subtype. In this /// case, no additional relationship to the spatial hierarchy shall -/// be given (i.e.ÿSELF\IfcElement.ContainedInStructure = +/// be given (i.e.ÿSELF\IfcElement.ContainedInStructure = /// NIL), the relationship to the spatial container is handled by the /// element assembly. /// @@ -37697,7 +37700,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcPlate (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcPlate (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcPlate (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcPlate* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37713,7 +37716,7 @@ public: /// IfcRailing defines the occuurence of any railing, /// common information about railing types (or styles) is handled by /// IfcRailingType. The IfcRailingType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common material, common set of properties and common shape /// representations (using IfcRepresentationMap). The /// IfcRailingType is attached using the @@ -37728,7 +37731,7 @@ public: /// relationship. /// Material information can also be given at the /// IfcRailingType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then accessible by the +/// occurrences of the same type.ÿIt is then accessible by the /// inverse IsDefinedBy relationship pointing to /// IfcRailingType.HasAssociations and via /// IfcRelAssociatesMaterial.RelatingMaterial to @@ -37766,13 +37769,13 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcRailing is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. /// The IfcRailing may be aggregated into an element @@ -37783,7 +37786,7 @@ public: /// IfcStair, or IfcRamp as a special focus subtypes. /// In this case it should not be additionally contained in the /// project spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// /// Geometry Use Definition @@ -37851,7 +37854,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRailing (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRailing (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRailingTypeEnum::IfcRailingTypeEnum v9_PredefinedType); + IfcRailing (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType); typedef IfcRailing* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -37879,7 +37882,7 @@ public: /// IfcRamp defines the occuurence of any ramp, common /// information about ramp types (or styles) is handled by /// IfcRampType. The IfcRampType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common material, common set of properties and common shape /// representations (using IfcRepresentationMap). The /// IfcRampType is attached using the @@ -37900,7 +37903,7 @@ public: /// relationship. /// Material information can also be given at the /// IfcRampType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then accessible by the +/// occurrences of the same type.ÿIt is then accessible by the /// inverse IsDefinedBy relationship pointing to /// IfcRampType.HasAssociations and via /// IfcRelAssociatesMaterial.RelatingMaterial to @@ -38001,7 +38004,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRamp (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRamp (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRampTypeEnum::IfcRampTypeEnum v9_ShapeType); + IfcRamp (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcRampTypeEnum::IfcRampTypeEnum v9_ShapeType); typedef IfcRamp* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38024,7 +38027,7 @@ public: /// IfcRampFlight defines the occurrence of any ramp flight, /// common information about ramp flight types (or styles) is handled /// by IfcRampFlightType. The IfcRampFlightType (if -/// present) may establish the common type name, usage (or +/// present) may establish the common type name, usage (or /// predefined) type, common material layer set, common set of /// properties and common shape representations (using /// IfcRepresentationMap). The IfcRampFlightType is @@ -38067,13 +38070,13 @@ public: /// IfcBuildingElement, may participate in two different /// containment relationships. The first relationship is the /// hierachical spatial containment, the second relationship is the -/// aggregation within an element assembly. +/// aggregation within an element assembly. /// /// The IfcRampFlight is placed within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes of IfcSpatialStructureElement are valid +/// Subtypes of IfcSpatialStructureElement are valid /// spatial containers, with IfcBuildingStorey being the default /// container. /// The IfcRampFlight may be aggregated into an element @@ -38083,7 +38086,7 @@ public: /// IfcElement can be an element assembly, with IfcRamp /// as a special focus subtype. In this case it should not be /// additionally contained in the project spatial hierarchy, -/// i.e. SELF\IfcElement.ContainedInStructure should be +/// i.e. SELF\IfcElement.ContainedInStructure should be /// NIL. /// /// Geometry Use Definition @@ -38204,7 +38207,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRampFlight (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRampFlight (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcRampFlight (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcRampFlight* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38248,7 +38251,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReinforcingElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReinforcingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade); + IfcReinforcingElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade); typedef IfcReinforcingElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38307,7 +38310,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReinforcingMesh (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReinforcingMesh (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcPositiveLengthMeasure v10_MeshLength, IfcPositiveLengthMeasure v11_MeshWidth, IfcPositiveLengthMeasure v12_LongitudinalBarNominalDiameter, IfcPositiveLengthMeasure v13_TransverseBarNominalDiameter, IfcAreaMeasure v14_LongitudinalBarCrossSectionArea, IfcAreaMeasure v15_TransverseBarCrossSectionArea, IfcPositiveLengthMeasure v16_LongitudinalBarSpacing, IfcPositiveLengthMeasure v17_TransverseBarSpacing); + IfcReinforcingMesh (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, optional v10_MeshLength, optional v11_MeshWidth, IfcPositiveLengthMeasure v12_LongitudinalBarNominalDiameter, IfcPositiveLengthMeasure v13_TransverseBarNominalDiameter, IfcAreaMeasure v14_LongitudinalBarCrossSectionArea, IfcAreaMeasure v15_TransverseBarCrossSectionArea, IfcPositiveLengthMeasure v16_LongitudinalBarSpacing, IfcPositiveLengthMeasure v17_TransverseBarSpacing); typedef IfcReinforcingMesh* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38371,7 +38374,7 @@ public: /// spatial hierarchy, i.e. /// SELF\IfcElement.ContainedInStructure should be NIL. /// -/// NOTEÿ A roof contained in another roof could +/// NOTEÿ A roof contained in another roof could /// be the representation of a dormer. /// The IfcRoof may be an aggregate i.e. being composed by /// other elements and acting as an assembly using the objectified @@ -38399,7 +38402,7 @@ public: /// aggregate. If defined as an aggregate, the geometric /// representation is the sum of the representation of the components /// within the aggregate. -/// NOTEÿ View definitions and implementer +/// NOTEÿ View definitions and implementer /// agreements may restrict the IfcRoof to not have an /// independent geometry, but to always require aggregated elements /// to represent the shape of the roof. @@ -38469,7 +38472,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRoof (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRoof (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcRoofTypeEnum::IfcRoofTypeEnum v9_ShapeType); + IfcRoof (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcRoofTypeEnum::IfcRoofTypeEnum v9_ShapeType); typedef IfcRoof* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38488,7 +38491,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcRoundedEdgeFeature (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcRoundedEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength, IfcPositiveLengthMeasure v10_Radius); + IfcRoundedEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength, optional v10_Radius); typedef IfcRoundedEdgeFeature* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38554,7 +38557,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSensorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSensorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcSensorTypeEnum::IfcSensorTypeEnum v10_PredefinedType); + IfcSensorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcSensorTypeEnum::IfcSensorTypeEnum v10_PredefinedType); typedef IfcSensorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38574,7 +38577,7 @@ public: /// IfcStructuralMember being part of the /// IfcStructuralAnalysisModel. /// -/// NOTE ÿAn arbitrary planar element to which this semantic +/// NOTE ÿAn arbitrary planar element to which this semantic /// information is not applicable or irrelevant shall be modeled as /// IfcPlate. /// A slab may have openings, such as floor openings, or recesses. @@ -38608,13 +38611,13 @@ public: /// The IfcSlab defines the occurrence of any slab, common /// information about slab types (or styles) is handled by /// IfcSlabType. The IfcSlabType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common set of properties, common material layer set, and common /// shape representations (using IfcRepresentationMap). The /// IfcSlabType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcSlabType is attachedÿ(i.e. if only occurrence +/// If no IfcSlabType is attachedÿ(i.e. if only occurrence /// information is given) the PredefinedType should be /// provided. Values of the enumeration are .FLOOR. (the default), /// .ROOF., .LANDING., .BASESLAB. If set to .USERDEFINED. a user @@ -38636,12 +38639,12 @@ public: /// the slab is extruded along the slab thickness, are exchanged as /// IfcSlabStandardCase, The material for /// IfcSlabStandardCase shall be defined -/// byÿIfcMaterialLayerSetUsage. Multi-layer slabs can be +/// byÿIfcMaterialLayerSetUsage. Multi-layer slabs can be /// represented by referring to several IfcMaterialLayer's -/// within the IfcMaterialLayerSet.ÿ +/// within the IfcMaterialLayerSet.ÿ /// Material information can also be given at the /// IfcSlabType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then accessible by the +/// occurrences of the same type.ÿIt is then accessible by the /// inverse IsTypedBy /// relationship pointing to IfcSlabType.HasAssociations and /// via IfcRelAssociatesMaterial.RelatingMaterial. @@ -38658,7 +38661,7 @@ public: /// /// Property sets can also be given at the IfcSlabType, /// defining the common property data for all occurrences of the same -/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to +/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to /// IfcSlabType.HasPropertySets. If both are given, then the /// properties directly assigned to IfcSlab overrides the /// properties assigned to IfcSlabType. @@ -38684,16 +38687,16 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierarchical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// -/// TheÿIfcSlab is places within the project spatial +/// TheÿIfcSlab is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, referring to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. -/// TheÿIfcSlab may be aggregated into an element assembly +/// TheÿIfcSlab may be aggregated into an element assembly /// using the objectified relationship IfcRelAggregates, /// referring to it by its inverse attribute /// SELF\IfcObjectDefinition.Decomposes. Any subtype of @@ -38701,10 +38704,10 @@ public: /// IfcElementAssembly as a special focus subtype. /// In this case it should not be additionally contained in the /// project spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// -/// The IfcSlabÿmay also be an aggregate i.e. being +/// The IfcSlabÿmay also be an aggregate i.e. being /// composed by other elements and acting as an assembly using the /// objectified relationship IfcRelAggregates, referring to it /// by its inverse attribute @@ -38808,8 +38811,8 @@ public: /// representation: /// /// Solid: see 'SweptSolid' shape representation, -/// Profile:ÿsee 'SweptSolid' shape representation, -/// Extrusion:ÿsee 'SweptSolid' shape representation, +/// Profile:ÿsee 'SweptSolid' shape representation, +/// Extrusion:ÿsee 'SweptSolid' shape representation, /// Boolean result: The IfcBooleanClippingResult /// shall be supported, allowing for Boolean differences between the /// swept solid (here IfcExtrudedAreaSolid) and one or several @@ -38837,7 +38840,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcSlab (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcSlab (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcSlabTypeEnum::IfcSlabTypeEnum v9_PredefinedType); + IfcSlab (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_PredefinedType); typedef IfcSlab* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -38962,7 +38965,7 @@ public: /// RepresentationIdentifier : 'Axis' /// RepresentationType : 'Curve2D' /// -/// NOTE  The 'Axis' representation of IfcStair +/// NOTE  The 'Axis' representation of IfcStair /// may be provided even if the IfcStair has components with own /// shape representations. /// @@ -38975,7 +38978,7 @@ public: /// RepresentationIdentifier : 'FootPrint' /// RepresentationType : 'GeometricCurveSet' /// -/// NOTE  The 'Footprint' representation of +/// NOTE  The 'Footprint' representation of /// IfcStair may be provided even if the IfcStair has /// components with own shape representations. /// @@ -39019,7 +39022,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStair (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStair (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcStairTypeEnum::IfcStairTypeEnum v9_ShapeType); + IfcStair (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcStairTypeEnum::IfcStairTypeEnum v9_ShapeType); typedef IfcStair* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39046,7 +39049,7 @@ public: /// flight, common information about stair flight types (or styles) /// is handled by IfcStairFlightType. The /// IfcStairFlightType (if present) may establish the -/// commonÿtype name, usage (or predefined) type, common material +/// commonÿtype name, usage (or predefined) type, common material /// layer set, common set of properties and common shape /// representations (using IfcRepresentationMap). The /// IfcStairFlightType is attached using the @@ -39090,13 +39093,13 @@ public: /// IfcBuildingElement, may participate in two different /// containment relationships. The first relationship is the /// hierachical spatial containment, the second relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcStairFlight is placed within the project /// spatial hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. /// The IfcStairFlight may be aggregated into an element @@ -39106,7 +39109,7 @@ public: /// IfcElement can be an element assembly, with /// IfcStair as a special focus subtype. In this case it /// shall not be additionally contained in the project spatial -/// hierarchy, i.e.ÿSELF\IfcElement.ContainedInStructure +/// hierarchy, i.e.ÿSELF\IfcElement.ContainedInStructure /// shall be NIL. /// /// Geometry Use Definition @@ -39229,7 +39232,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStairFlight (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStairFlight (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, int v9_NumberOfRiser, int v10_NumberOfTreads, IfcPositiveLengthMeasure v11_RiserHeight, IfcPositiveLengthMeasure v12_TreadLength); + IfcStairFlight (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_NumberOfRiser, optional v10_NumberOfTreads, optional v11_RiserHeight, optional v12_TreadLength); typedef IfcStairFlight* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39254,9 +39257,9 @@ public: /// If one or more structural item (instance of a subtype of IfcStructuralItem) is grouped into an IfcStructuralAnalysisModel, the attribute SharedPlacement shall be provided with a value. /// The ObjectPlacements of all structural items which are grouped into the same instance of IfcStructuralAnalysisModel shall refer to the same instance of IfcObjectPlacement as IfcStructuralAnalysisModel.SharedPlacement. /// -/// NOTE  This rule is necessary to achieve consistent topology representations. The topology representations of structural items in an analysis model are meant to share vertices and edges und must therefore have the same object placement. +/// NOTE  This rule is necessary to achieve consistent topology representations. The topology representations of structural items in an analysis model are meant to share vertices and edges und must therefore have the same object placement. /// -/// NOTE  A structural item may be grouped into more than one analysis model. In this case, all these models must use the same instance of IfcObjectPlacement. +/// NOTE  A structural item may be grouped into more than one analysis model. In this case, all these models must use the same instance of IfcObjectPlacement. class IfcStructuralAnalysisModel : public IfcSystem { public: /// Defines the type of the structural analysis model. @@ -39294,7 +39297,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcStructuralAnalysisModel (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcStructuralAnalysisModel (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum v6_PredefinedType, IfcAxis2Placement3D* v7_OrientationOf2DPlane, SHARED_PTR< IfcTemplatedEntityList > v8_LoadedBy, SHARED_PTR< IfcTemplatedEntityList > v9_HasResults); + IfcStructuralAnalysisModel (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum v6_PredefinedType, IfcAxis2Placement3D* v7_OrientationOf2DPlane, optional >> v8_LoadedBy, optional >> v9_HasResults); typedef IfcStructuralAnalysisModel* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39335,7 +39338,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTendon (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTendon (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcTendonTypeEnum::IfcTendonTypeEnum v10_PredefinedType, IfcPositiveLengthMeasure v11_NominalDiameter, IfcAreaMeasure v12_CrossSectionArea, IfcForceMeasure v13_TensionForce, IfcPressureMeasure v14_PreStress, IfcNormalisedRatioMeasure v15_FrictionCoefficient, IfcPositiveLengthMeasure v16_AnchorageSlip, IfcPositiveLengthMeasure v17_MinCurvatureRadius); + IfcTendon (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, IfcTendonTypeEnum::IfcTendonTypeEnum v10_PredefinedType, IfcPositiveLengthMeasure v11_NominalDiameter, IfcAreaMeasure v12_CrossSectionArea, optional v13_TensionForce, optional v14_PreStress, optional v15_FrictionCoefficient, optional v16_AnchorageSlip, optional v17_MinCurvatureRadius); typedef IfcTendon* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39350,7 +39353,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcTendonAnchor (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcTendonAnchor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade); + IfcTendonAnchor (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade); typedef IfcTendonAnchor* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39390,7 +39393,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcVibrationIsolatorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcVibrationIsolatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum v10_PredefinedType); + IfcVibrationIsolatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum v10_PredefinedType); typedef IfcVibrationIsolatorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39402,7 +39405,7 @@ public: /// Definition from IAI: The wall represents a vertical /// construction that bounds or subdivides spaces. Wall are usually /// vertical, or nearly vertical, planar elements, often designed to -/// bear structural loads. A wall is howeverÿnot required to be load +/// bear structural loads. A wall is howeverÿnot required to be load /// bearing. /// NOTE NOTE There is a representation of walls /// for structural analysis provided by a proper subtype of @@ -39421,7 +39424,7 @@ public: /// The IFC specification provides two entities for wall /// occurrences: /// -/// IfcWallStandardCase ÿused for all occurrences of +/// IfcWallStandardCase ÿused for all occurrences of /// walls, that have a non-changing thickness along the wall path and /// where the thickness parameter can be fully described by a /// material layer set. These walls are always represented @@ -39434,7 +39437,7 @@ public: /// which are aggregated from subordinate elements, following /// specific decomposition rules expressed by the mandatory use of /// IfcRelAggregates relationship. -/// IfcWall ÿused for all other occurrences of wall, +/// IfcWall ÿused for all other occurrences of wall, /// particularly for walls with changing thickness along the wall /// path (e.g. polygonal walls), or walls with a non-rectangular /// cross sections (e.g. L-shaped retaining walls), and walls having @@ -39446,15 +39449,15 @@ public: /// IFC Release 1.0 /// Type Use Definition /// IfcWall defines the occurrence of any wall, common -/// information aboutÿwall types (or styles) is handled by +/// information aboutÿwall types (or styles) is handled by /// IfcWallType. The IfcWallType (if present) may -/// establish the commonÿtype name, usage (or predefined) type, +/// establish the commonÿtype name, usage (or predefined) type, /// common material layer set, common set of properties and common /// shape representations (using IfcRepresentationMap). The /// IfcWallType is attached using the /// IfcRelDefinedByType.RelatingType objectified relationship /// and is accessible by the inverse IsTypedBy attribute. -/// If no IfcWallType is attachedÿ(i.e. if only occurrence +/// If no IfcWallType is attachedÿ(i.e. if only occurrence /// information is given) the PredefinedType should be /// provided. If set to .USERDEFINED. a user defined value can be /// provided by the ObjectType attribute. @@ -39465,14 +39468,14 @@ public: /// accessible by the inverse HasAssociations relationship. /// Multi-layer walls can be represented by referring to several /// IfcMaterialLayer's within the -/// IfcMaterialLayerSet.ÿ +/// IfcMaterialLayerSet.ÿ /// Note: It is illegal to assign an /// IfcMaterialLayerSetUsage to an IfcWall. Only the /// subtype IfcWallStandardCase supports this /// concept. /// Material information can also be given at the /// IfcWallType, defining the common attribute data for all -/// occurrences of the same type.ÿIt is then in addition accessible +/// occurrences of the same type.ÿIt is then in addition accessible /// by the inverse IsTypedBy /// relationship pointing to IfcWallType.HasAssociations and /// via IfcRelAssociatesMaterial.RelatingMaterial. @@ -39489,7 +39492,7 @@ public: /// /// Property sets can also be given at the IfcWallType, /// defining the common property data for all occurrences of the same -/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to +/// type.ÿIt is then accessible by the inverse IsTypedBy relationship pointing to /// IfcWallType.HasPropertySets. If both are given, then the /// properties directly assigned to IfcWall overrides the /// properties assigned to IfcWallType. @@ -39516,16 +39519,16 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierarchical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcWall is places within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, referring to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. -/// TheÿIfcWall may be aggregated into an element assembly +/// TheÿIfcWall may be aggregated into an element assembly /// using the objectified relationship IfcRelAggregates, /// referring to it by its inverse attribute /// SELF\IfcObjectDefinition.Decomposes. Any subtype of @@ -39533,17 +39536,17 @@ public: /// IfcElementAssembly as a special focus subtype. /// In this case the wall should not be additionally contained in the /// project spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// -/// TheÿIfcWallÿmay also be an aggregate i.e. being +/// TheÿIfcWallÿmay also be an aggregate i.e. being /// composed by other elements and acting as an assembly using the /// objectified relationship IfcRelAggregates, referring to it /// by its inverse attribute /// SELF\IfcObjectDefinition.IsDecomposedBy. Components of a /// wall are described by instances of IfcBuildingElementPart /// that are aggregated to form a complex wall. -/// In this case, the containedÿIfcBuildingElementPart's +/// In this case, the containedÿIfcBuildingElementPart's /// should not be additionally contained in the project spatial /// hierarchy, i.e. the inverse attribute /// SELF\IfcElement.ContainedInStructure of @@ -39618,7 +39621,7 @@ public: /// Solid: IfcExtrudedAreaSolid is required, /// Profile: IfcArbitraryClosedProfileDef is /// required. -/// Extrusion:ÿAll extrusion directions shall be +/// Extrusion:ÿAll extrusion directions shall be /// supported. /// /// Clipping Representation Type @@ -39647,7 +39650,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWall (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWall (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcWall (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcWall* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39705,7 +39708,7 @@ public: /// IfcWall. As an additional use agreement for standard /// walls, the IfcWallType should have a unique /// IfcMaterialLayerSet, that is referenced by -/// the IfcMaterialLayerSetUsage assigned to all +/// the IfcMaterialLayerSetUsage assigned to all /// occurrences of this IfcWallType. /// /// Figure 134 illustrates assignment of IfcMaterialLayerSetUsage and IfcMaterialLayerSet to the wall type and the wall occurrence. @@ -39720,10 +39723,10 @@ public: /// Multi-layer walls can be represented by refering to several /// IfcMaterialLayer's within the IfcMaterialLayerSet /// that is referenced from the -/// IfcMaterialLayerSetUsage.  +/// IfcMaterialLayerSetUsage.  /// Material information can also be given at the /// IfcWallType, defining the common attribute data for all -/// occurrences of the same type. It is then accessible by the +/// occurrences of the same type. It is then accessible by the /// inverse IsDefinedBy relationship pointing to /// IfcSlabType.HasAssociations and via /// IfcRelAssociatesMaterial.RelatingMaterial. See Type Use @@ -39768,7 +39771,7 @@ public: /// Body: A Swept Solid Representation or a CSG /// representation defining the 3D shape of the standard wall /// -/// NOTE  It is invalid to exhange a +/// NOTE  It is invalid to exhange a /// 'SurfaceModel', or 'Brep' or 'MappedRepresentation' representation /// for the 'Body' shape representation of an /// IfcWallStandardCase. @@ -39864,7 +39867,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWallStandardCase (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWallStandardCase (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcWallStandardCase (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcWallStandardCase* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -39886,7 +39889,7 @@ public: /// IfcRelFillsElement relationship, , then the IfcDoor /// has an inverse attribute FillsVoids provided, /// -/// NOTEÿ View definitions or +/// NOTEÿ View definitions or /// implementer agreements may restrict the relationship to only /// include one window (or door) into one opening. /// @@ -39909,7 +39912,7 @@ public: /// IfcWindowLiningProperties and on to many /// IfcWindowPanelProperties. /// -/// NOTEÿ see +/// NOTEÿ see /// IfcWindowStandardCase for all specific constraints imposed /// by this subtype. /// @@ -39944,7 +39947,7 @@ public: /// the construction material type /// the particular attributes for the lining by the /// IfcWindowLiningProperties -/// the particular attributes for the panels by theÿ +/// the particular attributes for the panels by theÿ /// IfcWindowPanelProperties /// /// HISTORY New entity in IFC Release 1.0. @@ -40010,13 +40013,13 @@ public: /// containment relationships. The first (and in most implementation /// scenarios mandatory) relationship is the hierachical spatial /// containment, the second (optional) relationship is the -/// aggregation within anÿelement assembly. +/// aggregation within anÿelement assembly. /// /// The IfcWindow is placed within the project spatial /// hierarchy using the objectified relationship /// IfcRelContainedInSpatialStructure, refering to it by its /// inverse attribute SELF\IfcElement.ContainedInStructure. -/// Subtypes ofÿIfcSpatialStructureElement are valid spatial +/// Subtypes ofÿIfcSpatialStructureElement are valid spatial /// containers, with IfcBuildingStorey being the default /// container. /// The IfcWindow may be aggregated into an element @@ -40026,7 +40029,7 @@ public: /// of an IfcCurtainWall as a special focus subtype. In this /// case it should not be additionally contained in the project /// spatial hierarchy, -/// i.e.ÿSELF\IfcElement.ContainedInStructure should be +/// i.e.ÿSELF\IfcElement.ContainedInStructure should be /// NIL. /// /// Figure 141 illustrates window containment. @@ -40065,34 +40068,34 @@ public: /// is defined within the world coordinate system. /// /// Geometric Representation -/// Theÿgeometric representation of IfcWindow is defined -/// using the following (potentiallyÿmultiple) +/// Theÿgeometric representation of IfcWindow is defined +/// using the following (potentiallyÿmultiple) /// IfcShapeRepresentation's for its /// IfcProductDefinitionShape: /// -/// Profile: Aÿ'Curve3D' +/// Profile: Aÿ'Curve3D' /// consisting of a single losed curve defining the outer boundary of -/// the window (lining). Theÿwindow parametric representation uses -/// this profile in order to apply theÿwindow lining and panel +/// the window (lining). Theÿwindow parametric representation uses +/// this profile in order to apply theÿwindow lining and panel /// parameter. If not provided, the profile of the /// IfcOpeningElement is taken. /// FootPrint: A 'GeometricCurveSet', or 'Annotation2D' -/// representation defining the 2D shape of theÿwindow +/// representation defining the 2D shape of theÿwindow /// Body: A 'SweptSolid', 'SurfaceModel', or 'Brep' -/// representation defining the 3D shape of theÿwindow. +/// representation defining the 3D shape of theÿwindow. /// /// In addition the parametric representation of a -/// (limited)ÿwindow shape is available by applying the parameters -/// fromÿIfcWindowType -/// referencingÿIfcWindowLiningProperties -/// andÿIfcWindowPanelProperties. The purpose of the parameter +/// (limited)ÿwindow shape is available by applying the parameters +/// fromÿIfcWindowType +/// referencingÿIfcWindowLiningProperties +/// andÿIfcWindowPanelProperties. The purpose of the parameter /// is described at those entities and below (parametric /// representation). -/// Profile -ÿ'Curve3D' representation -/// Theÿwindow profile is represented by a three-dimensional +/// Profile -ÿ'Curve3D' representation +/// Theÿwindow profile is represented by a three-dimensional /// closed curve within a particular shape representation. The -/// profile is used to apply the parameter of the parametricÿwindow -/// representation.ÿThe following attribute values for the +/// profile is used to apply the parameter of the parametricÿwindow +/// representation.ÿThe following attribute values for the /// IfcShapeRepresentation holding this geometric /// representation shall be used: /// @@ -40104,20 +40107,20 @@ public: /// A 'Profile' representation has to be provided if: /// /// a parametric representation shall be applied to the -/// windowÿAND +/// windowÿAND /// /// the window is 'free standing', or /// the opening into which the window is inserted is not extruded /// horizontally (i.e. where the opening profile does not match the /// window profile) /// -/// FootPrint -ÿ'GeometricCurveSet' or 'Annotation2D' +/// FootPrint -ÿ'GeometricCurveSet' or 'Annotation2D' /// representation -/// Theÿwindow foot print is represented by a set of -/// two-dimensionalÿcurves (or in case of 'Annotation2D' additional +/// Theÿwindow foot print is represented by a set of +/// two-dimensionalÿcurves (or in case of 'Annotation2D' additional /// hatching and text) within a particular shape representation. The /// foot print is used for the plan view representation of -/// theÿwindow.ÿThe following attribute values for the +/// theÿwindow.ÿThe following attribute values for the /// IfcShapeRepresentation holding this geometric /// representation shall be used: /// @@ -40127,11 +40130,11 @@ public: /// /// Body - 'SweptSolid', 'SurfaceModel', or 'Brep' /// representation -/// Theÿwindow body is either represented parameterically (see +/// Theÿwindow body is either represented parameterically (see /// parametric representation) or by explicit 3D shape. The 3D shape /// is given by using extrusion geometry, or surface models, or Brep /// models within a particular shape representation. The body is used -/// for the model view representation of theÿwindow.ÿThe following +/// for the model view representation of theÿwindow.ÿThe following /// attribute values for the IfcShapeRepresentation holding /// this geometric representation shall be used: /// @@ -40141,7 +40144,7 @@ public: /// /// MappedRepresentation /// The 'FootPrint' and 'Body' geometric representation -/// ofÿIfcWindow can be shared among several identicalÿwindows +/// ofÿIfcWindow can be shared among several identicalÿwindows /// using the 'MappedRepresentation'. The following attribute values /// for the IfcShapeRepresentation holding this geometric /// representation shall be used: @@ -40149,7 +40152,7 @@ public: /// RepresentationIdentifier : 'FootPrint', 'Body' /// RepresentationType : 'MappedRepresentation' /// -/// The same constraints, as given for theÿ 'FootPrint', 'Body' +/// The same constraints, as given for theÿ 'FootPrint', 'Body' /// representation identifiers, shall apply to the /// MappedRepresentation of the /// IfcRepresentationMap. @@ -40185,14 +40188,14 @@ public: /// IfcWindow only defines the local placement which /// determines the opening direction of the window. The overall /// layout of the IfcWindow is determined by -/// itsÿIfcWindowType.PartitioningType. Each window panel has +/// itsÿIfcWindowType.PartitioningType. Each window panel has /// its own operation type, provided by /// IfcWindowPanelProperties.OperationType. All window panels /// are assumed to open into the same direction (if relevant for the /// particular window panel operation. The hindge side (whether a /// window opens to the left or to the right) is determined by the /// IfcWindowPanelProperties.OperationType. -/// NOTE ÿThere are different conventions in +/// NOTE ÿThere are different conventions in /// different countries on how to show the symbolic presentation of /// the window panel operation (the "triangles"). Either as seen from /// the exterior, or from the interior side. The following figures @@ -40206,24 +40209,24 @@ public: /// The determination of whether the window opens to the left or to /// the right is done at /// IfcWindowPanelProperties.OperationType. Here it is a left -/// side opening window given byÿOperationType = +/// side opening window given byÿOperationType = /// SideHungLeftHand. /// /// If the window should open to the other side, then the /// local placement has to be changed. It is still a left hung /// window, given by IfcWindowPanelProperties.OperationType -/// =ÿSideHungLeftHand. +/// =ÿSideHungLeftHand. /// /// If the window panel (for side hung windows) opens to /// the right, a separate window panel style needs to be used (here /// IfcWindowPanelProperties.OperationType -/// =ÿSideHungRightHand) and it always opens into the direction of -/// the positive Y axis of the local placement.ÿ +/// =ÿSideHungRightHand) and it always opens into the direction of +/// the positive Y axis of the local placement.ÿ /// /// If the window should open to the other side, then the /// local placement has to be changed. It is still a right hung /// window, given by IfcWindowPanelProperties.OperationType -/// =ÿSideHungRightHand. +/// =ÿSideHungRightHand. /// . /// /// Figure 144 — Window operations @@ -40233,14 +40236,14 @@ public: bool hasOverallHeight(); /// Overall measure of the height, it reflects the Z Dimension of a bounding box, enclosing the body of the window opening. If omitted, the OverallHeight should be taken from the geometric representation of the IfcOpening in which the window is inserted. /// - /// NOTE  The body of the window might be taller then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallHeight shall still be given as the window opening height, and not as the total height of the window lining. + /// NOTE  The body of the window might be taller then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallHeight shall still be given as the window opening height, and not as the total height of the window lining. IfcPositiveLengthMeasure OverallHeight(); void setOverallHeight(IfcPositiveLengthMeasure v); /// Whether the optional attribute OverallWidth is defined for this IfcWindow bool hasOverallWidth(); /// Overall measure of the width, it reflects the X Dimension of a bounding box, enclosing the body of the window opening. If omitted, the OverallWidth should be taken from the geometric representation of the IfcOpening in which the window is inserted. /// - /// NOTE  The body of the window might be wider then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallWidth shall still be given as the window opening width, and not as the total width of the window lining. + /// NOTE  The body of the window might be wider then the window opening (e.g. in cases where the window lining includes a casing). In these cases the OverallWidth shall still be given as the window opening width, and not as the total width of the window lining. IfcPositiveLengthMeasure OverallWidth(); void setOverallWidth(IfcPositiveLengthMeasure v); virtual unsigned int getArgumentCount() const { return 10; } @@ -40251,7 +40254,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcWindow (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcWindow (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_OverallHeight, IfcPositiveLengthMeasure v10_OverallWidth); + IfcWindow (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_OverallHeight, optional v10_OverallWidth); typedef IfcWindow* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40300,7 +40303,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcActuatorType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcActuatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcActuatorTypeEnum::IfcActuatorTypeEnum v10_PredefinedType); + IfcActuatorType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcActuatorTypeEnum::IfcActuatorTypeEnum v10_PredefinedType); typedef IfcActuatorType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40344,7 +40347,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcAlarmType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcAlarmType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcAlarmTypeEnum::IfcAlarmTypeEnum v10_PredefinedType); + IfcAlarmType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcAlarmTypeEnum::IfcAlarmTypeEnum v10_PredefinedType); typedef IfcAlarmType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40353,15 +40356,15 @@ public: /// /// An IfcBeam is a horizontal, or nearly horizontal, structural member that is capable of withstanding load primarily by resisting bending. It represents such a member from an architectural point of view. It is not required to be load bearing. /// -/// NOTE  The representation of a beam in a structural analysis model is provided by +/// NOTE  The representation of a beam in a structural analysis model is provided by /// IfcStructuralCurveMember being part of an IfcStructuralAnalysisModel. /// -/// NOTE  For any longitudial structural member, not constrained to be predominately horizontal nor vertical, or where this semantic information is irrelevant, the entity IfcMember should be used. +/// NOTE  For any longitudial structural member, not constrained to be predominately horizontal nor vertical, or where this semantic information is irrelevant, the entity IfcMember should be used. /// /// The IFC specification provides two entities for beam occurrences: /// /// IfcBeamStandardCase used for all occurrences of beams, that have a profile defined that is swept along a directrix. The profile might be changed uniformly by a taper definition along the directrix. The profile parameter and its cardinal point of insertion can be fully described by the IfcMaterialProfileSetUsage. These beams are always represented geometricly by an 'Axis' and a 'SweptSolid' or 'AdvancedSweptSolid' shape representation (or by a 'Clipping' geometry based on the swept solid), if a 3D geometric representation is assigned. In addition they have to have a corresponding IfcMaterialProfileSetUsage assigned. -/// NOTE  View definitions and implementer agreements may further constrain the applicable geometry types, for example, by excluding tapering from an IfcBeamStandardCase implementation. +/// NOTE  View definitions and implementer agreements may further constrain the applicable geometry types, for example, by excluding tapering from an IfcBeamStandardCase implementation. /// /// IfcBeam used for all other occurrences of beams, particularly for beams with changing profile sizes along the extrusion, or beams defined by non-linear extrusion, or beams having only 'Brep', or 'SurfaceModel' geometry. /// @@ -40371,7 +40374,7 @@ public: /// IfcBeam defines the occuurence of any beam, common /// information about beam types (or styles) is handled by /// IfcBeamType. The IfcBeamType (if present) may -/// establish the common type name, usage (or predefined) type, +/// establish the common type name, usage (or predefined) type, /// common material layer set, common set of properties and common /// shape representations (using IfcRepresentationMap). The /// IfcBeamType is attached using the @@ -40515,7 +40518,7 @@ public: /// IfcRevolvedAreaSolid shall be supported /// Profile: all subtypes of IfcProfileDef (with /// exception of IfcArbitraryOpenProfileDef) -/// Extrusion:  All extrusion directions shall be +/// Extrusion:  All extrusion directions shall be /// supported. /// /// Figure 71 illustrates the 'SweptSolid' geometric representation. There are no restrictions or conventions on how to use the local placement (black), solid of extrusion placement (red) and profile placement (green). @@ -40596,7 +40599,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcBeam (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcBeam (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcBeam (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcBeam* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40619,7 +40622,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcChamferEdgeFeature (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcChamferEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcPositiveLengthMeasure v9_FeatureLength, IfcPositiveLengthMeasure v10_Width, IfcPositiveLengthMeasure v11_Height); + IfcChamferEdgeFeature (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_FeatureLength, optional v10_Width, optional v11_Height); typedef IfcChamferEdgeFeature* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40673,7 +40676,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcControllerType (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcControllerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ApplicableOccurrence, SHARED_PTR< IfcTemplatedEntityList > v6_HasPropertySets, SHARED_PTR< IfcTemplatedEntityList > v7_RepresentationMaps, IfcLabel v8_Tag, IfcLabel v9_ElementType, IfcControllerTypeEnum::IfcControllerTypeEnum v10_PredefinedType); + IfcControllerType (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ApplicableOccurrence, optional >> v6_HasPropertySets, optional >> v7_RepresentationMaps, optional v8_Tag, optional v9_ElementType, IfcControllerTypeEnum::IfcControllerTypeEnum v10_PredefinedType); typedef IfcControllerType* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40719,7 +40722,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionChamberElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionChamberElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag); + IfcDistributionChamberElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag); typedef IfcDistributionChamberElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40817,7 +40820,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcDistributionControlElement (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcDistributionControlElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcIdentifier v9_ControlElementId); + IfcDistributionControlElement (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_ControlElementId); typedef IfcDistributionControlElement* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40838,7 +40841,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcElectricDistributionPoint (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcElectricDistributionPoint (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum v9_DistributionPointFunction, IfcLabel v10_UserDefinedFunction); + IfcElectricDistributionPoint (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunctionEnum v9_DistributionPointFunction, optional v10_UserDefinedFunction); typedef IfcElectricDistributionPoint* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; @@ -40895,7 +40898,7 @@ public: Type::Enum type() const; static Type::Enum Class(); IfcReinforcingBar (IfcAbstractEntityPtr e = IfcAbstractEntityPtr()); - IfcReinforcingBar (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, IfcLabel v3_Name, IfcText v4_Description, IfcLabel v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, IfcIdentifier v8_Tag, IfcLabel v9_SteelGrade, IfcPositiveLengthMeasure v10_NominalDiameter, IfcAreaMeasure v11_CrossSectionArea, IfcPositiveLengthMeasure v12_BarLength, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v13_BarRole, IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum v14_BarSurface); + IfcReinforcingBar (IfcGloballyUniqueId v1_GlobalId, IfcOwnerHistory* v2_OwnerHistory, optional v3_Name, optional v4_Description, optional v5_ObjectType, IfcObjectPlacement* v6_ObjectPlacement, IfcProductRepresentation* v7_Representation, optional v8_Tag, optional v9_SteelGrade, IfcPositiveLengthMeasure v10_NominalDiameter, IfcAreaMeasure v11_CrossSectionArea, optional v12_BarLength, IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum v13_BarRole, optional v14_BarSurface); typedef IfcReinforcingBar* ptr; typedef SHARED_PTR< IfcTemplatedEntityList > list; typedef IfcTemplatedEntityList::it it; diff --git a/src/ifcparse/IfcCharacterDecoder.cpp b/src/ifcparse/IfcCharacterDecoder.cpp index 5100c084ab..4f869ddb0f 100644 --- a/src/ifcparse/IfcCharacterDecoder.cpp +++ b/src/ifcparse/IfcCharacterDecoder.cpp @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -87,7 +87,7 @@ void IfcCharacterDecoder::addChar(std::stringstream& s,const UChar32& ch) { s.put(substitution_character); #endif } -IfcCharacterDecoder::IfcCharacterDecoder(IfcParse::File* f) { +IfcCharacterDecoder::IfcCharacterDecoder(IfcParse::IfcSpfStream* f) { file = f; #ifdef HAVE_ICU if (destination) ucnv_close(destination); diff --git a/src/ifcparse/IfcCharacterDecoder.h b/src/ifcparse/IfcCharacterDecoder.h index 57a7d76072..e9e8c94dbd 100644 --- a/src/ifcparse/IfcCharacterDecoder.h +++ b/src/ifcparse/IfcCharacterDecoder.h @@ -42,7 +42,7 @@ namespace IfcParse { class IfcCharacterDecoder { private: - IfcParse::File* file; + IfcParse::IfcSpfStream* file; #ifdef HAVE_ICU static UConverter* destination; static UConverter* converter; @@ -65,7 +65,7 @@ namespace IfcParse { #else static char substitution_character; #endif - IfcCharacterDecoder(IfcParse::File* file); + IfcCharacterDecoder(IfcParse::IfcSpfStream* file); ~IfcCharacterDecoder(); void dryRun(); operator std::string(); diff --git a/src/ifcparse/IfcFile.h b/src/ifcparse/IfcFile.h index 204687025b..df6021b37b 100644 --- a/src/ifcparse/IfcFile.h +++ b/src/ifcparse/IfcFile.h @@ -39,14 +39,14 @@ //const int BUF_SIZE = (128 * 1024 * 1024); namespace IfcParse { - /// The File class represents a ISO 10303-21 IFC-SPF file in memory. + /// The IfcSpfStream class represents a ISO 10303-21 IFC-SPF file in memory. /// The file is interpreted as a sequence of tokens which are lazily /// interpreted only when requested. If the size of the file is /// larger than BUF_SIZE, the file is split into seperate pages, of /// which only one is simultaneously kept in memory, for files /// that define their entities not in a sequential nature, this is /// detrimental for the performance of the parser. - class File { + class IfcSpfStream { private: std::ifstream stream; char* buffer; @@ -61,9 +61,9 @@ namespace IfcParse { bool valid; bool eof; unsigned int size; - File(const std::string& fn); - File(std::istream& f, int len); - File(void* data, int len); + IfcSpfStream(const std::string& fn); + IfcSpfStream(std::istream& f, int len); + IfcSpfStream(void* data, int len); /// Returns the character at the cursor char Peek(); /// Returns the character at specified offset diff --git a/src/ifcparse/IfcGuidHelper.cpp b/src/ifcparse/IfcGuidHelper.cpp index 7ed421ac54..8ae53d6377 100644 --- a/src/ifcparse/IfcGuidHelper.cpp +++ b/src/ifcparse/IfcGuidHelper.cpp @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -27,19 +27,97 @@ #include #include +#define HAS_BOOST_UUID + +#ifdef HAS_BOOST_UUID +#include + +#include +#include +#include +#endif + #include "IfcWrite.h" static const char* chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$"; +#ifdef HAS_BOOST_UUID + +// Converts an unsigned integer into a base64 string of length l +std::string base64(unsigned v, int l) { + std::string r; + r.reserve(l); + while ( v ) { + r.push_back(chars[v%64]); + v /= 64; + } + while ( r.size() != l ) r.push_back('0'); + std::reverse(r.begin(),r.end()); + return r; +} + +// Converts a base64 string into an unsigned integer +unsigned from_base64(const std::string& s) { + std::string::size_type zeros = s.find_first_not_of('0'); + unsigned r = 0; + if ( zeros != std::string::npos ) + for ( std::string::const_iterator i = s.begin()+zeros; i != s.end(); ++ i ) { + r *= 64; + const char* c = strchr(chars,*i); + if ( !c ) throw IfcException("Failed to decode GlobalId"); + r += (c-chars); + } + return r; +} + +// Compresses the UUID byte array into a base64 representation +std::string compress(unsigned char* v) { + std::string r; + r.reserve(22); + r += base64(v[0],2); + for ( unsigned i = 1; i < 16; i += 3 ) { + r += base64((v[i]<<16) + (v[i+1]<<8) + v[i+2],4); + } + return r; +} + +// Expands the base64 representation into a UUID byte array +void expand(const std::string& s, std::vector& v) { + v.push_back(from_base64(s.substr(0,2))); + for( unsigned i = 0; i < 5; ++i ) { + unsigned d = from_base64(s.substr(2+4*i,4)); + for ( unsigned j = 0; j < 3; ++ j ) { + v.push_back((d>>(8*(2-j))) % 256); + } + } +} + +// A random number generator for the UUID +static boost::uuids::basic_random_generator gen; + +#endif + IfcWrite::IfcGuidHelper::IfcGuidHelper() { - if ( ! seeded ) { srand((unsigned int)time(0)); seeded = true; } +#ifdef HAS_BOOST_UUID + boost::uuids::uuid u = gen(); + std::vector v(u.size()); + std::copy(u.begin(), u.end(), v.begin()); + data = compress(&v[0]); + + std::vector v2; + expand(data,v2); + boost::uuids::uuid u2; + std::copy(v2.begin(), v2.end(), u2.begin()); +#else + if ( ! seeded ) { srand((unsigned int)time(0)); seeded = true; } data.resize(length); for ( unsigned int i = 0; i < length; ++ i ) { data[i] = chars[rand()%strlen(chars)]; } +#endif } IfcWrite::IfcGuidHelper::operator std::string() const { return data; } -bool IfcWrite::IfcGuidHelper::seeded = false; \ No newline at end of file +bool IfcWrite::IfcGuidHelper::seeded = false; diff --git a/src/ifcparse/IfcParse.cpp b/src/ifcparse/IfcParse.cpp index df7c3beac4..b24fc388ff 100644 --- a/src/ifcparse/IfcParse.cpp +++ b/src/ifcparse/IfcParse.cpp @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -34,7 +34,7 @@ using namespace IfcParse; // // Opens the file, gets the filesize and reads a chunk in memory // -File::File(const std::string& fn) { +IfcSpfStream::IfcSpfStream(const std::string& fn) { eof = false; stream.open(fn.c_str(),std::ios_base::binary); if ( ! stream.good() ) { @@ -57,7 +57,7 @@ File::File(const std::string& fn) { ReadBuffer(false); } -File::File(std::istream& f, int l) { +IfcSpfStream::IfcSpfStream(std::istream& f, int l) { eof = false; size = l; #ifdef BUF_SIZE @@ -71,7 +71,7 @@ File::File(std::istream& f, int l) { len = l; } -File::File(void* data, int l) { +IfcSpfStream::IfcSpfStream(void* data, int l) { eof = false; size = l; #ifdef BUF_SIZE @@ -84,15 +84,17 @@ File::File(void* data, int l) { len = l; } -void File::Close() { - stream.close(); +void IfcSpfStream::Close() { +#ifdef BUF_SIZE + if ( paging ) stream.close(); +#endif delete[] buffer; } // // Reads a chunk of BUF_SIZE in memory and increments cursor if requested // -void File::ReadBuffer(bool inc) { +void IfcSpfStream::ReadBuffer(bool inc) { #ifdef BUF_SIZE if ( inc ) { offset += len; @@ -109,12 +111,17 @@ void File::ReadBuffer(bool inc) { len = (unsigned int) stream.gcount(); eof = len == 0; ptr = 0; +#ifdef BUF_SIZE + if (!paging) stream.close(); +#else + stream.close(); +#endif } // // Seeks an arbitrary position in the file // -void File::Seek(unsigned int o) { +void IfcSpfStream::Seek(unsigned int o) { #ifdef BUF_SIZE if ( !paging ) { #endif @@ -136,14 +143,14 @@ void File::Seek(unsigned int o) { // // Returns the character at the cursor // -char File::Peek() { +char IfcSpfStream::Peek() { return buffer[ptr]; } // // Returns the character at specified offset // -char File::Read(unsigned int o) { +char IfcSpfStream::Read(unsigned int o) { #ifdef BUF_SIZE if ( ! paging ) { #endif @@ -162,7 +169,7 @@ char File::Read(unsigned int o) { // // Returns the cursor position // -unsigned int File::Tell() { +unsigned int IfcSpfStream::Tell() { #ifdef BUF_SIZE return offset + ptr; #else @@ -173,7 +180,7 @@ unsigned int File::Tell() { // // Increments cursor and reads new chunk if necessary // -void File::Inc() { +void IfcSpfStream::Inc() { if ( ++ptr == len ) { #ifdef BUF_SIZE if ( paging ) ReadBuffer(); @@ -185,13 +192,14 @@ void File::Inc() { } #endif } - const char current = File::Peek(); - if ( current == '\n' || current == '\r' ) File::Inc(); + const char current = IfcSpfStream::Peek(); + if ( current == '\n' || current == '\r' ) IfcSpfStream::Inc(); } -Tokens::Tokens(IfcParse::File *f) { +Tokens::Tokens(IfcParse::IfcSpfStream *s, IfcParse::IfcFile* f) { file = f; - decoder = new IfcCharacterDecoder(f); + stream = s; + decoder = new IfcCharacterDecoder(s); } Tokens::~Tokens() { @@ -203,38 +211,38 @@ Tokens::~Tokens() { // Token Tokens::Next() { - if ( file->eof ) return TokenPtr(); + if ( stream->eof ) return TokenPtr(); char c; // Trim whitespace - while ( !file->eof ) { - c = file->Peek(); - if ( (c == ' ' || c == '\r' || c == '\n' || c == '\t' ) ) file->Inc(); + while ( !stream->eof ) { + c = stream->Peek(); + if ( (c == ' ' || c == '\r' || c == '\n' || c == '\t' ) ) stream->Inc(); else break; } - if ( file->eof ) return TokenPtr(); - unsigned int pos = file->Tell(); + if ( stream->eof ) return TokenPtr(); + unsigned int pos = stream->Tell(); bool inString = false; bool inComment = false; // If the cursor is at [()=,;$*] we know token consists of single char if ( c == '(' || c == ')' || c == '=' || c == ',' || c == ';' || c == '$' || c == '*' ) { - file->Inc(); + stream->Inc(); return TokenPtr(c); } int len = 0; char p = 0; - while ( ! file->eof ) { + while ( ! stream->eof ) { // Read character and increment pointer if not starting a new token - char c = file->Peek(); + char c = stream->Peek(); if ( len && (!inString || inComment) && (c == '(' || c == ')' || c == '=' || c == ',' || c == ';' ) ) break; - file->Inc(); + stream->Inc(); // Skip whitespace if not in comment or string if ( !inComment && !inString && (c == ' ' || c == '\r' || c == '\n' || c == '\t' ) ) continue; @@ -248,7 +256,7 @@ Token Tokens::Next() { p = c; } - if ( len ) return TokenPtr(pos); + if ( len ) return TokenPtr(this,pos); else return TokenPtr(); } @@ -257,18 +265,18 @@ Token Tokens::Next() { // Omits whitespace and comments // std::string Tokens::TokenString(unsigned int offset) { - const bool was_eof = file->eof; - unsigned int old_offset = file->Tell(); - file->Seek(offset); + const bool was_eof = stream->eof; + unsigned int old_offset = stream->Tell(); + stream->Seek(offset); bool inString = false; bool inComment = false; std::string buffer; buffer.reserve(128); char p = 0; - while ( ! file->eof ) { - char c = file->Peek(); + while ( ! stream->eof ) { + char c = stream->Peek(); if ( buffer.size() && (!inString || inComment) && (c == '(' || c == ')' || c == '=' || c == ',' || c == ';' ) ) break; - file->Inc(); + stream->Inc(); if ( !inComment && !inString && (c == ' ' || c == '\r' || c == '\n' || c == '\t' ) ) continue; if ( !inComment ) buffer.push_back(c); if ( inComment && p == '*' && c == '/' ) inComment = false; @@ -276,8 +284,8 @@ std::string Tokens::TokenString(unsigned int offset) { else if ( !inComment && c == '\'' ) return *decoder; p = c; } - if ( was_eof ) file->eof = true; - else file->Seek(old_offset); + if ( was_eof ) stream->eof = true; + else stream->Seek(old_offset); return buffer; } @@ -285,33 +293,32 @@ std::string Tokens::TokenString(unsigned int offset) { // Functions for creating Tokens from an arbitary file offset. // The first 4 bits are reserved for Tokens of type ()=,;$* // -Token IfcParse::TokenPtr(unsigned int offset) { return offset + 128; } -Token IfcParse::TokenPtr(char c) { return c; } -Token IfcParse::TokenPtr() { return 0; } +Token IfcParse::TokenPtr(Tokens* tokens, unsigned int offset) { return Token(tokens,offset); } +Token IfcParse::TokenPtr(char c) { return Token((Tokens*)0,(unsigned) c); } +Token IfcParse::TokenPtr() { return Token((Tokens*)0,0); } // // Functions to convert Tokens to binary data // -unsigned int TokenFunc::Offset(Token t) { return t - 128; } -bool TokenFunc::startsWith(Token t, char c) { - return Ifc::file->Read(Offset(t)) == c; +bool TokenFunc::startsWith(const Token& t, char c) { + return t.first->stream->Read(t.second) == c; } -bool TokenFunc::isOperator(Token t, char op) { - return (t < 128) && (!op || op == t); +bool TokenFunc::isOperator(const Token& t, char op) { + return (!t.first) && (!op || op == t.second); } -bool TokenFunc::isIdentifier(Token t) { +bool TokenFunc::isIdentifier(const Token& t) { return ! isOperator(t) && startsWith(t, '#'); } -bool TokenFunc::isString(Token t) { +bool TokenFunc::isString(const Token& t) { return ! isOperator(t) && startsWith(t, '\''); } -bool TokenFunc::isEnumeration(Token t) { +bool TokenFunc::isEnumeration(const Token& t) { return ! isOperator(t) && startsWith(t, '.'); } -bool TokenFunc::isDatatype(Token t) { +bool TokenFunc::isDatatype(const Token& t) { return ! isOperator(t) && startsWith(t, 'I'); } -int TokenFunc::asInt(Token t) { +int TokenFunc::asInt(const Token& t) { const std::string str = asString(t); // In case of an ENTITY_INSTANCE_NAME skip the leading # const char* start = str.c_str() + (isIdentifier(t) ? 1 : 0); @@ -320,31 +327,31 @@ int TokenFunc::asInt(Token t) { if ( start == end ) throw IfcException("Token is not an integer or identifier"); return (int) result; } -bool TokenFunc::asBool(Token t) { +bool TokenFunc::asBool(const Token& t) { const std::string str = asString(t); return str == "T"; } -double TokenFunc::asFloat(Token t) { +double TokenFunc::asFloat(const Token& t) { const std::string str = asString(t); return (double) atof(str.c_str()); } -std::string TokenFunc::asString(Token t) { +std::string TokenFunc::asString(const Token& t) { if ( isOperator(t,'$') ) return ""; else if ( isOperator(t) ) throw IfcException("Token is not a string"); - std::string str = Ifc::tokens->TokenString(t - 128); + std::string str = t.first->TokenString(t.second); return isString(t) || isEnumeration(t) ? str.substr(1,str.size()-2) : str; } -std::string TokenFunc::toString(Token t) { - if ( isOperator(t) ) return std::string ( (char*) &t, 1 ); - else return Ifc::tokens->TokenString(t - 128); +std::string TokenFunc::toString(const Token& t) { + if ( isOperator(t) ) return std::string ( (char*) &t.second , 1 ); + else return t.first->TokenString(t.second); } -TokenArgument::TokenArgument(Token t) { +TokenArgument::TokenArgument(const Token& t) { token = t; } -EntityArgument::EntityArgument(Ifc2x3::Type::Enum ty, Token t) { +EntityArgument::EntityArgument(Ifc2x3::Type::Enum ty, const Token& t) { entity = new IfcUtil::IfcArgumentSelect(ty,new TokenArgument(t)); } @@ -353,10 +360,11 @@ EntityArgument::EntityArgument(Ifc2x3::Type::Enum ty, Token t) { // Aditionally, stores the ids (i.e. #[\d]+) in a vector // ArgumentList::ArgumentList(Tokens* t, std::vector& ids) { - while( Token next = t->Next() ) { - if ( TokenFunc::isOperator(next,',') ) continue; - if ( TokenFunc::isOperator(next,')') ) break; - if ( TokenFunc::isOperator(next,'(') ) Push( new ArgumentList(t,ids) ); + Token next = t->Next(); + while( next.second || next.first ) { + if ( TokenFunc::isOperator(next,',') ) {} + else if ( TokenFunc::isOperator(next,')') ) break; + else if ( TokenFunc::isOperator(next,'(') ) Push( new ArgumentList(t,ids) ); else { if ( TokenFunc::isIdentifier(next) ) ids.push_back(TokenFunc::asInt(next)); if ( TokenFunc::isDatatype(next) ) { @@ -364,13 +372,14 @@ ArgumentList::ArgumentList(Tokens* t, std::vector& ids) { try { Push ( new EntityArgument(Ifc2x3::Type::FromString(TokenFunc::asString(next)),t->Next()) ); } catch ( IfcException& e ) { - Ifc::LogMessage("Error",e.what()); + Logger::Message(Logger::LOG_ERROR,e.what()); } t->Next(); } else { Push ( new TokenArgument(next) ); } } + next = t->Next(); } } @@ -455,11 +464,7 @@ TokenArgument::operator std::string() const { return TokenFunc::asString(token); TokenArgument::operator std::vector() const { throw IfcException("Argument is not a list of floats"); } TokenArgument::operator std::vector() const { throw IfcException("Argument is not a list of ints"); } TokenArgument::operator std::vector() const { throw IfcException("Argument is not a list of strings"); } -TokenArgument::operator IfcUtil::IfcSchemaEntity() const { return Ifc::EntityById(TokenFunc::asInt(token)); } -/*TokenArgument::operator IfcUtil::IfcAbstractSelect::ptr() const { -//TODO Fix memory leak -return new IfcUtil::IfcEntitySelect(*this); -}*/ +TokenArgument::operator IfcUtil::IfcSchemaEntity() const { return token.first->file->EntityById(TokenFunc::asInt(token)); } TokenArgument::operator IfcEntities() const { throw IfcException("Argument is not a list of entities"); } unsigned int TokenArgument::Size() const { return 1; } ArgumentPtr TokenArgument::operator [] (unsigned int i) const { throw IfcException("Argument is not a list of arguments"); } @@ -497,19 +502,21 @@ EntityArgument::~EntityArgument() { delete entity; } // // Reads an Entity from the list of Tokens // -Entity::Entity(unsigned int i, Tokens* t) { - Token datatype = t->Next(); +Entity::Entity(unsigned int i, IfcFile* f) { //: file(f) { + file = f; + Token datatype = f->tokens->Next(); if ( ! TokenFunc::isDatatype(datatype)) throw IfcException("Unexpected token while parsing entity"); _type = Ifc2x3::Type::FromString(TokenFunc::asString(datatype)); _id = i; args = ArgumentPtr(); - offset = TokenFunc::Offset(datatype); + offset = datatype.second; } // // Reads an Entity from the list of Tokens at the specified offset in the file // -Entity::Entity(unsigned int i, Tokens* t, unsigned int o) { +Entity::Entity(unsigned int i, IfcFile* f, unsigned int o) { // : file(f) { + file = f; std::vector ids; _id = i; offset = o; @@ -540,16 +547,16 @@ unsigned int Entity::getArgumentCount() { // void Entity::Load(std::vector& ids, bool seek) { if ( seek ) { - Ifc::file->Seek(offset); - Token datatype = Ifc::tokens->Next(); + file->tokens->stream->Seek(offset); + Token datatype = file->tokens->Next(); if ( ! TokenFunc::isDatatype(datatype)) throw IfcException("Unexpected token while parsing entity"); _type = Ifc2x3::Type::FromString(TokenFunc::asString(datatype)); } - Token open = Ifc::tokens->Next(); - args = new ArgumentList(Ifc::tokens, ids); - unsigned int old_offset = Ifc::file->Tell(); - Token semilocon = Ifc::tokens->Next(); - if ( ! TokenFunc::isOperator(semilocon,';') ) Ifc::file->Seek(old_offset); + Token open = file->tokens->Next(); + args = new ArgumentList(file->tokens, ids); + unsigned int old_offset = file->tokens->stream->Tell(); + Token semilocon = file->tokens->Next(); + if ( ! TokenFunc::isOperator(semilocon,';') ) file->tokens->stream->Seek(old_offset); } Ifc2x3::Type::Enum Entity::type() const { @@ -590,7 +597,7 @@ Entity::~Entity() { // IfcEntities Entity::getInverse(Ifc2x3::Type::Enum c) { IfcEntities l = IfcEntities(new IfcEntityList()); - IfcEntities all = Ifc::EntitiesByReference(_id); + IfcEntities all = file->EntitiesByReference(_id); if ( ! all ) return l; for( IfcEntityList::it it = all->begin(); it != all->end();++ it ) { if ( c == Ifc2x3::Type::ALL || (*it)->is(c) ) { @@ -617,44 +624,55 @@ bool Entity::isWritable() { return false; } +IfcFile::IfcFile() { + file = 0; + lastId = 0; + tokens = 0; + MaxId = 0; +} + // // Parses the IFC file in fn // Creates the maps // Gets the unit definitins from the file // -bool Ifc::Init(const std::string& fn) { - return Ifc::Init(new File(fn)); +bool IfcFile::Init(const std::string& fn) { + return IfcFile::Init(new IfcSpfStream(fn)); } -bool Ifc::Init(std::istream& f, int len) { - return Ifc::Init(new File(f,len)); +bool IfcFile::Init(std::istream& f, int len) { + return IfcFile::Init(new IfcSpfStream(f,len)); } -bool Ifc::Init(void* data, int len) { - return Ifc::Init(new File(data,len)); +bool IfcFile::Init(void* data, int len) { + return IfcFile::Init(new IfcSpfStream(data,len)); } -bool Ifc::Init(IfcParse::File* f) { +bool IfcFile::Init(IfcParse::IfcSpfStream* f) { Ifc2x3::InitStringMap(); file = f; if ( ! file->valid ) return false; - tokens = new Tokens (file); - Token token = 0; - Token previous = 0; + tokens = new Tokens (file,this); + Token token = TokenPtr(); + Token previous = TokenPtr(); unsigned int currentId = 0; lastId = 0; int x = 0; EntityPtr e; IfcUtil::IfcSchemaEntity entity = 0; - if ( log1 ) (*log1) << "Scanning file..." << std::endl; + Logger::Status("Scanning file..."); while ( ! file->eof ) { if ( currentId ) { try { - e = new Entity(currentId,tokens); + e = new Entity(currentId,this); entity = Ifc2x3::SchemaEntity(e); } catch (IfcException ex) { currentId = 0; - Ifc::LogMessage("Error",ex.what()); + Logger::Message(Logger::LOG_ERROR,ex.what()); continue; } - if ( log1 && !((++x)%1000) ) (*log1) << "\r#" << currentId << " " << std::flush; + // Update the status after every 1000 instances parsed + if ( !((++x)%1000) ) { + std::stringstream ss; ss << "\r#" << currentId; + Logger::Status(ss.str()); + } if ( entity->is(Ifc2x3::Type::IfcRoot) ) { Ifc2x3::IfcRoot::ptr ifc_root = (Ifc2x3::IfcRoot::ptr) entity; try { @@ -662,11 +680,11 @@ bool Ifc::Init(IfcParse::File* f) { if ( byguid.find(guid) != byguid.end() ) { std::stringstream ss; ss << "Overwriting entity with guid " << guid; - Ifc::LogMessage("Warning",ss.str()); + Logger::Message(Logger::LOG_WARNING,ss.str()); } byguid[guid] = ifc_root; } catch (IfcException ex) { - Ifc::LogMessage("Error",ex.what()); + Logger::Message(Logger::LOG_ERROR,ex.what()); } } Ifc2x3::Type::Enum ty = entity->type(); @@ -682,17 +700,17 @@ bool Ifc::Init(IfcParse::File* f) { if ( byid.find(currentId) != byid.end() ) { std::stringstream ss; ss << "Overwriting entity with id " << currentId; - Ifc::LogMessage("Warning",ss.str()); + Logger::Message(Logger::LOG_WARNING,ss.str()); } byid[currentId] = entity; MaxId = std::max(MaxId,currentId); currentId = 0; } else { try { token = tokens->Next(); } - catch (... ) { token = 0; } + catch (... ) { token = TokenPtr(); } } - if ( ! token ) break; - if ( previous && TokenFunc::isIdentifier(previous) ) { + if ( ! (token.second || token.first) ) break; + if ( (previous.second || previous.first) && TokenFunc::isIdentifier(previous) ) { int id = TokenFunc::asInt(previous); if ( TokenFunc::isOperator(token,'=') ) { currentId = id; @@ -707,67 +725,15 @@ bool Ifc::Init(IfcParse::File* f) { } previous = token; } - - if ( log1 ) (*log1) << "\rDone scanning file " << std::endl; - - hasPlaneAngleUnit = false; - Ifc2x3::IfcUnitAssignment::list unit_assignments = EntitiesByType(); - IfcUtil::IfcAbstractSelect::list units = IfcUtil::IfcAbstractSelect::list(); - if ( unit_assignments->Size() ) { - Ifc2x3::IfcUnitAssignment::ptr unit_assignment = *unit_assignments->begin(); - units = unit_assignment->Units(); - } - if ( ! units ) { - // No units eh... Since tolerances and deflection are specified internally in meters - // we will try to find another indication of the model size. - Ifc2x3::IfcExtrudedAreaSolid::list extrusions = EntitiesByType(); - if ( ! extrusions->Size() ) return true; - double max_height = -1.0f; - for ( Ifc2x3::IfcExtrudedAreaSolid::it it = extrusions->begin(); it != extrusions->end(); ++ it ) { - const double depth = (*it)->Depth(); - if ( depth > max_height ) max_height = depth; - } - if ( max_height > 100.0f ) Ifc::LengthUnit = 0.001f; - return true; - } - try { - for ( IfcUtil::IfcAbstractSelect::it it = units->begin(); it != units->end(); ++ it ) { - const IfcUtil::IfcAbstractSelect::ptr base = *it; - Ifc2x3::IfcSIUnit::ptr unit = Ifc2x3::IfcSIUnit::ptr(); - double value = 1.0f; - if ( base->is(Ifc2x3::Type::IfcConversionBasedUnit) ) { - const Ifc2x3::IfcConversionBasedUnit::ptr u = reinterpret_pointer_cast(base); - const Ifc2x3::IfcMeasureWithUnit::ptr u2 = u->ConversionFactor(); - Ifc2x3::IfcUnit u3 = u2->UnitComponent(); - if ( u3->is(Ifc2x3::Type::IfcSIUnit) ) { - unit = (Ifc2x3::IfcSIUnit*) u3; - } - Ifc2x3::IfcValue v = u2->ValueComponent(); - IfcUtil::IfcArgumentSelect* v2 = (IfcUtil::IfcArgumentSelect*) v; - const double f = *v2->wrappedValue(); - value *= f; - } else if ( base->is(Ifc2x3::Type::IfcSIUnit) ) { - unit = reinterpret_pointer_cast(base); - } - if ( unit ) { - if ( unit->hasPrefix() ) { - value *= UnitPrefixToValue(unit->Prefix()); - } - Ifc2x3::IfcUnitEnum::IfcUnitEnum type = unit->UnitType(); - if ( type == Ifc2x3::IfcUnitEnum::IfcUnit_LENGTHUNIT ) { - Ifc::LengthUnit = value; - } else if ( type == Ifc2x3::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT ) { - Ifc::PlaneAngleUnit = value; - Ifc::hasPlaneAngleUnit = true; - } - } - } - } catch ( IfcException ex ) { - Ifc::LogMessage("Error",ex.what()); - } + Logger::Status("\rDone scanning file "); return true; } -void Ifc::AddEntity(IfcUtil::IfcSchemaEntity entity) { +void IfcFile::AddEntities(IfcEntities es) { + for( IfcEntityList::it i = es->begin(); i != es->end(); ++ i ) { + AddEntity(*i); + } +} +void IfcFile::AddEntity(IfcUtil::IfcSchemaEntity entity) { if ( entity->is(Ifc2x3::Type::IfcRoot) ) { Ifc2x3::IfcRoot::ptr ifc_root = (Ifc2x3::IfcRoot::ptr) entity; try { @@ -775,11 +741,11 @@ void Ifc::AddEntity(IfcUtil::IfcSchemaEntity entity) { if ( byguid.find(guid) != byguid.end() ) { std::stringstream ss; ss << "Overwriting entity with guid " << guid; - Ifc::LogMessage("Warning",ss.str()); + Logger::Message(Logger::LOG_WARNING,ss.str()); } byguid[guid] = ifc_root; } catch (IfcException ex) { - Ifc::LogMessage("Error",ex.what()); + Logger::Message(Logger::LOG_ERROR,ex.what()); } } Ifc2x3::Type::Enum ty = entity->type(); @@ -795,6 +761,7 @@ void Ifc::AddEntity(IfcUtil::IfcSchemaEntity entity) { int new_id = -1; // For newly created entities ensure a valid ENTITY_INSTANCE_NAME is set if ( entity->entity->isWritable() ) { + if ( ! entity->entity->file ) entity->entity->file = this; new_id = ((IfcWrite::IfcWritableEntity*)(entity->entity))->setId(); } else { // TODO: Detect and fix ENTITY_INSTANCE_NAME collisions @@ -803,39 +770,38 @@ void Ifc::AddEntity(IfcUtil::IfcSchemaEntity entity) { if ( byid.find(new_id) != byid.end() ) { std::stringstream ss; ss << "Overwriting entity with id " << new_id; - Ifc::LogMessage("Warning",ss.str()); + Logger::Message(Logger::LOG_WARNING,ss.str()); } byid[new_id] = entity; } - -IfcEntities Ifc::EntitiesByType(Ifc2x3::Type::Enum t) { +IfcEntities IfcFile::EntitiesByType(Ifc2x3::Type::Enum t) { MapEntitiesByType::const_iterator it = bytype.find(t); return (it == bytype.end()) ? IfcEntities() : it->second; } -IfcEntities Ifc::EntitiesByType(const std::string& t) { +IfcEntities IfcFile::EntitiesByType(const std::string& t) { std::string ty = t; for (std::string::iterator p = ty.begin(); p != ty.end(); ++p ) *p = toupper(*p); return EntitiesByType(Ifc2x3::Type::FromString(ty)); } -IfcEntities Ifc::EntitiesByReference(int t) { +IfcEntities IfcFile::EntitiesByReference(int t) { MapEntitiesByRef::const_iterator it = byref.find(t); return (it == byref.end()) ? IfcEntities() : it->second; } -IfcUtil::IfcSchemaEntity Ifc::EntityById(int id) { +IfcUtil::IfcSchemaEntity IfcFile::EntityById(int id) { MapEntityById::const_iterator it = byid.find(id); if ( it == byid.end() ) { MapOffsetById::const_iterator it2 = offsets.find(id); if ( it2 == offsets.end() ) throw IfcException("Entity not found"); const unsigned int offset = (*it2).second; - EntityPtr e = EntityPtr(new Entity(id,Ifc::tokens,offset)); + EntityPtr e = EntityPtr(new Entity(id,this,offset)); IfcUtil::IfcSchemaEntity entity = Ifc2x3::SchemaEntity(e); byid[id] = entity; return entity; } return it->second; } -Ifc2x3::IfcRoot::ptr Ifc::EntityByGuid(const std::string& guid) { +Ifc2x3::IfcRoot::ptr IfcFile::EntityByGuid(const std::string& guid) { MapEntityByGuid::const_iterator it = byguid.find(guid); if ( it == byguid.end() ) { throw IfcException("Entity not found"); @@ -848,63 +814,24 @@ IfcException::IfcException(std::string e) { error = e; } IfcException::~IfcException() throw () {} const char* IfcException::what() const throw() { return error.c_str(); } -void Ifc::Dispose() { +// FIXME: Test destructor to delete entity and arg allocations +IfcFile::~IfcFile() { for( MapEntityById::const_iterator it = byid.begin(); it != byid.end(); ++ it ) { delete it->second->entity; delete it->second; } - bytype.clear(); - byid.clear(); - byref.clear(); - file->Close(); delete file; delete tokens; - offsets.clear(); - log_stream.str(""); } -double UnitPrefixToValue( Ifc2x3::IfcSIPrefix::IfcSIPrefix v ) { - if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_EXA ) return (double) 1e18; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_PETA ) return (double) 1e15; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_TERA ) return (double) 1e12; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_GIGA ) return (double) 1e9; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MEGA ) return (double) 1e6; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_KILO ) return (double) 1e3; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_HECTO ) return (double) 1e2; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECA ) return (double) 1; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECI ) return (double) 1e-1; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_CENTI ) return (double) 1e-2; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MILLI ) return (double) 1e-3; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_MICRO ) return (double) 1e-6; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_NANO ) return (double) 1e-9; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_PICO ) return (double) 1e-12; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_FEMTO ) return (double) 1e-15; - else if ( v == Ifc2x3::IfcSIPrefix::IfcSIPrefix_ATTO ) return (double) 1e-18; - else return 1.0f; -} -void Ifc::SetOutput(std::ostream* l1, std::ostream* l2) { - log1 = l1; - log2 = l2; - if ( ! log2 ) { - log2 = &log_stream; - } -} -void Ifc::LogMessage(const std::string& type, const std::string& message, const IfcAbstractEntityPtr entity) { - if ( log2 ) { - (*log2) << "[" << type << "] " << message << std::endl; - if ( entity ) (*log2) << entity->toString() << std::endl; - } -} -std::string Ifc::GetLog() { - return log_stream.str(); -} -MapEntityById::const_iterator Ifc::First() { +MapEntityById::const_iterator IfcFile::begin() const { return byid.begin(); } -MapEntityById::const_iterator Ifc::Last() { +MapEntityById::const_iterator IfcFile::end() const { return byid.end(); } -void Ifc::Serialize(std::ostream& os) { + +std::ostream& operator<< (std::ostream& os, const IfcParse::IfcFile& f) { os << "ISO-10303-21;" << std::endl; os << "HEADER;" << std::endl; os << "FILE_DESCRIPTION(('ViewDefinition []'),'2;1');" << std::endl; @@ -913,30 +840,13 @@ void Ifc::Serialize(std::ostream& os) { os << "ENDSEC;" << std::endl; os << "DATA;" << std::endl; - for ( MapEntityById::const_iterator it = First(); it != Last(); ++ it ) { + for ( MapEntityById::const_iterator it = f.begin(); it != f.end(); ++ it ) { const IfcEntity e = it->second; os << e->entity->toString(true) << ";" << std::endl; } os << "ENDSEC;" << std::endl; - os << "END-ISO-10303-21;" << std::endl; -} + os << "END-ISO-10303-21;" << std::endl; -File* Ifc::file = 0; -std::ostream* Ifc::log1 = 0; -std::ostream* Ifc::log2 = 0; -unsigned int Ifc::lastId = 0; -Tokens* Ifc::tokens = 0; -double Ifc::LengthUnit = 1.0f; -double Ifc::PlaneAngleUnit = 1.0f; -bool Ifc::hasPlaneAngleUnit = false; -bool Ifc::SewShells = false; -int Ifc::CircleSegments = 32; -MapEntitiesByType Ifc::bytype; -MapEntityById Ifc::byid; -MapEntityByGuid Ifc::byguid; -MapEntitiesByRef Ifc::byref; -MapOffsetById Ifc::offsets; -std::stringstream Ifc::log_stream; -int Ifc::Verbosity = 2; -unsigned int Ifc::MaxId = 0; + return os; +} diff --git a/src/ifcparse/IfcParse.h b/src/ifcparse/IfcParse.h index 5808c8d382..1ea57d9095 100644 --- a/src/ifcparse/IfcParse.h +++ b/src/ifcparse/IfcParse.h @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -47,56 +47,59 @@ namespace IfcParse { class Entity; class Entities; + class IfcFile; typedef Entity* EntityPtr; typedef SHARED_PTR EntitiesPtr; - typedef unsigned int Token; + class Tokens; + typedef std::pair Token; /// Provides functions to convert Tokens to binary data /// Tokens are merely offsets to where they can be read in the file class TokenFunc { private: - static bool startsWith(Token t, char c); + static bool startsWith(const Token& t, char c); public: /// Returns the offset at which the token is read from the file - static unsigned int Offset(Token t); + // static unsigned int Offset(const Token& t); /// Returns whether the token can be interpreted as a string - static bool isString(Token t); + static bool isString(const Token& t); /// Returns whether the token can be interpreted as an identifier - static bool isIdentifier(Token t); + static bool isIdentifier(const Token& t); /// Returns whether the token can be interpreted as an syntactical operator - static bool isOperator(Token t, char op = 0); + static bool isOperator(const Token& t, char op = 0); /// Returns whether the token can be interpreted as an enumerated value - static bool isEnumeration(Token t); + static bool isEnumeration(const Token& t); /// Returns whether the token can be interpreted as an datatype name - static bool isDatatype(Token t); + static bool isDatatype(const Token& t); /// Returns the token interpreted as an integer - static int asInt(Token t); + static int asInt(const Token& t); /// Returns the token interpreted as an boolean (.T. or .F.) - static bool asBool(Token t); + static bool asBool(const Token& t); /// Returns the token as a floating point number - static double asFloat(Token t); + static double asFloat(const Token& t); /// Returns the token as a string (without the dot or apostrophe) - static std::string asString(Token t); + static std::string asString(const Token& t); /// Returns a string representation of the token (including the dot or apostrophe) - static std::string toString(Token t); + static std::string toString(const Token& t); }; // // Functions for creating Tokens from an arbitary file offset // The first 4 bits are reserved for Tokens of type ()=,;$* // - Token TokenPtr(unsigned int offset); + Token TokenPtr(Tokens* tokens, unsigned int offset); Token TokenPtr(char c); Token TokenPtr(); - /// A stream of tokens to be read from a File. + /// A stream of tokens to be read from a IfcSpfStream. class Tokens { private: - File* file; IfcCharacterDecoder* decoder; public: - Tokens(File* f); + IfcSpfStream* stream; + IfcFile* file; + Tokens(IfcSpfStream* s, IfcFile* f); Token Next(); ~Tokens(); std::string TokenString(unsigned int offset); @@ -136,7 +139,7 @@ namespace IfcParse { public: Token token; - TokenArgument(Token t); + TokenArgument(const Token& t); operator int() const; operator bool() const; operator double() const; @@ -160,7 +163,7 @@ namespace IfcParse { private: IfcUtil::IfcArgumentSelect* entity; public: - EntityArgument(Ifc2x3::Type::Enum ty, Token t); + EntityArgument(Ifc2x3::Type::Enum ty, const Token& t); ~EntityArgument(); operator int() const; operator bool() const; @@ -183,15 +186,16 @@ namespace IfcParse { /// ============================ class Entity : public IfcAbstractEntity { private: + //IfcFile* file; ArgumentPtr args; Ifc2x3::Type::Enum _type; public: - /// The EXPRESS ENTITY_NAME + /// The EXPRESS ENTITY_INSTANCE_NAME unsigned int _id; /// The offset at which the entity is read unsigned int offset; - Entity(unsigned int i, Tokens* t); - Entity(unsigned int i, Tokens* t, unsigned int o); + Entity(unsigned int i, IfcFile* t); + Entity(unsigned int i, IfcFile* t, unsigned int o); ~Entity(); IfcEntities getInverse(Ifc2x3::Type::Enum c = Ifc2x3::Type::ALL); IfcEntities getInverse(Ifc2x3::Type::Enum c, int i, const std::string& a); @@ -205,10 +209,9 @@ namespace IfcParse { unsigned int id(); bool isWritable(); }; -} typedef IfcUtil::IfcSchemaEntity IfcEntity; -typedef IfcEntities IfcEntities; +//typedef IfcEntities IfcEntities; typedef std::map MapEntitiesByType; typedef std::map MapEntityById; typedef std::map MapEntityByGuid; @@ -217,73 +220,65 @@ typedef std::map MapOffsetById; /// This class provides several static convenience functions and variables /// and provide access to the entities in an IFC file -class Ifc { +class IfcFile { private: - static MapEntityById byid; - static MapEntitiesByType bytype; - static MapEntitiesByRef byref; - static MapEntityByGuid byguid; - static MapOffsetById offsets; - static unsigned int lastId; - static std::ostream* log1; - static std::ostream* log2; - static std::stringstream log_stream; - static unsigned int MaxId; + MapEntityById byid; + MapEntitiesByType bytype; + MapEntitiesByRef byref; + MapEntityByGuid byguid; + MapOffsetById offsets; + unsigned int lastId; + unsigned int MaxId; public: - /// Returns the first entity in the file, this probably is the entity with the lowest id (EXPRESS ENTITY_NAME) - static MapEntityById::const_iterator First(); - /// Returns the last entity in the file, this probably is the entity with the highes id (EXPRESS ENTITY_NAME) - static MapEntityById::const_iterator Last(); - /// Determines to what stream respectively progress and errors are logged - static void SetOutput(std::ostream* l1, std::ostream* l2); - /// Log a message to the output stream - static void LogMessage(const std::string& type, const std::string& message, const IfcAbstractEntityPtr entity=0); - static IfcParse::File* file; - static IfcParse::Tokens* tokens; + typedef MapEntityById::const_iterator const_iterator; + IfcFile(); + ~IfcFile(); + /// Returns the first entity in the file, this probably is the entity with the lowest id (EXPRESS ENTITY_INSTANCE_NAME) + const_iterator begin() const; + /// Returns the last entity in the file, this probably is the entity with the highes id (EXPRESS ENTITY_INSTANCE_NAME) + const_iterator end() const; + IfcParse::IfcSpfStream* file; + IfcParse::Tokens* tokens; /// Returns all entities in the file that match the template argument. /// NOTE: This also returns subtypes of the requested type, for example: /// IfcWall will also return IfcWallStandardCase entities template - static typename T::list EntitiesByType() { + typename T::list EntitiesByType() { IfcEntities e = EntitiesByType(T::Class()); typename T::list l ( new IfcTemplatedEntityList() ); if ( e && e->Size() ) - for ( IfcEntityList::it it = e->begin(); it != e->end(); ++ it ) { - l->push(reinterpret_pointer_cast(*it)); - } - return l; + for ( IfcEntityList::it it = e->begin(); it != e->end(); ++ it ) { + l->push(reinterpret_pointer_cast(*it)); + } + return l; } /// Returns all entities in the file that match the positional argument. /// NOTE: This also returns subtypes of the requested type, for example: /// IfcWall will also return IfcWallStandardCase entities - static IfcEntities EntitiesByType(Ifc2x3::Type::Enum t); + IfcEntities EntitiesByType(Ifc2x3::Type::Enum t); /// Returns all entities in the file that match the positional argument. /// NOTE: This also returns subtypes of the requested type, for example: /// IfcWall will also return IfcWallStandardCase entities - static IfcEntities EntitiesByType(const std::string& t); + IfcEntities EntitiesByType(const std::string& t); /// Returns all entities in the file that reference the id - static IfcEntities EntitiesByReference(int id); + IfcEntities EntitiesByReference(int id); /// Returns the entity with the specified id - static IfcEntity EntityById(int id); + IfcEntity EntityById(int id); /// Returns the entity with the specified GlobalId - static Ifc2x3::IfcRoot::ptr EntityByGuid(const std::string& guid); - static bool Init(const std::string& fn); - static bool Init(std::istream& fn, int len); - static bool Init(void* data, int len); - static bool Init(IfcParse::File* f); - static std::string GetLog(); - static void Dispose(); - static bool hasPlaneAngleUnit; - static bool SewShells; - static double LengthUnit; - static double PlaneAngleUnit; - static int CircleSegments; - static int Verbosity; - static unsigned int FreshId() { MaxId ++; return MaxId; } - static void AddEntity(IfcUtil::IfcSchemaEntity e); - static void Serialize(std::ostream& os); + Ifc2x3::IfcRoot::ptr EntityByGuid(const std::string& guid); + bool Init(const std::string& fn); + bool Init(std::istream& fn, int len); + bool Init(void* data, int len); + bool Init(IfcParse::IfcSpfStream* f); + unsigned int FreshId() { MaxId ++; return MaxId; } + void AddEntity(IfcUtil::IfcSchemaEntity e); + void AddEntities(IfcEntities es); }; double UnitPrefixToValue( Ifc2x3::IfcSIPrefix::IfcSIPrefix v ); +} + +std::ostream& operator<< (std::ostream& os, const IfcParse::IfcFile& f); + #endif diff --git a/src/ifcparse/IfcUtil.cpp b/src/ifcparse/IfcUtil.cpp index bf14440b37..6493e4f1d3 100644 --- a/src/ifcparse/IfcUtil.cpp +++ b/src/ifcparse/IfcUtil.cpp @@ -62,3 +62,35 @@ IfcUtil::IfcArgumentSelect::IfcArgumentSelect(Ifc2x3::Type::Enum t, ArgumentPtr ArgumentPtr IfcUtil::IfcArgumentSelect::wrappedValue() { return arg; } bool IfcUtil::IfcArgumentSelect::isSimpleType() { return true; } IfcUtil::IfcArgumentSelect::~IfcArgumentSelect() { delete arg; } + +void Logger::SetOutput(std::ostream* l1, std::ostream* l2) { + log1 = l1; + log2 = l2; + if ( ! log2 ) { + log2 = &log_stream; + } +} +void Logger::Message(Logger::Severity type, const std::string& message, const IfcAbstractEntityPtr entity) { + if ( log2 && type >= verbosity ) { + (*log2) << "[" << severity_strings[type] << "] " << message << std::endl; + if ( entity ) (*log2) << entity->toString() << std::endl; + } +} +void Logger::Status(const std::string& message, bool new_line) { + if ( log1 ) { + (*log1) << message; + if ( new_line ) (*log1) << std::endl; + else (*log1) << std::flush; + } +} +std::string Logger::GetLog() { + return log_stream.str(); +} +void Logger::Verbosity(Logger::Severity v) { verbosity = v; } +Logger::Severity Logger::Verbosity() { return verbosity; } + +std::ostream* Logger::log1 = 0; +std::ostream* Logger::log2 = 0; +std::stringstream Logger::log_stream; +Logger::Severity Logger::verbosity = Logger::LOG_NOTICE; +char* Logger::severity_strings[] = { "Notice","Warning","Error" }; \ No newline at end of file diff --git a/src/ifcparse/IfcUtil.h b/src/ifcparse/IfcUtil.h index 9b4d80e442..9b4a418567 100644 --- a/src/ifcparse/IfcUtil.h +++ b/src/ifcparse/IfcUtil.h @@ -22,6 +22,7 @@ #include #include +#include #include "../ifcparse/SharedPointer.h" #include "../ifcparse/Ifc2x3enum.h" @@ -73,50 +74,6 @@ typedef IfcBaseClass* IfcSchemaEntity; } -template -class Nullable { -private: - T t; - bool null; -public: - Nullable(const T& v) { - t = v; - null = false; - } - Nullable() { null = true; } - operator T() const { return t; } - bool IsNull() const { return null; } -}; - -template <> -class Nullable { -private: - std::string t; - bool null; -public: - Nullable(const std::string& v) { - t = v; - null = false; - } - Nullable() { null = true; } - operator std::string() const { return t; } - Nullable& operator =(const char* const c) { t = std::string(c); } - bool IsNull() const { return null; } - -}; - -class Null { -public: - operator Nullable() const { return Nullable(); } - operator Nullable >() { return Nullable >(); } - operator int() { return 0; } - operator void*() { return 0; } -}; - -#define NULL_STRING Nullable() -#define NULL_VECTOR_STRING Nullable >() -#define IfcNull Null() - class IfcEntityList { std::vector ls; public: @@ -181,9 +138,14 @@ namespace IfcUtil { }; } +namespace IfcParse { + class IfcFile; +} + class Argument { -protected: public: + //void* file; +//public: virtual operator int() const = 0; virtual operator bool() const = 0; virtual operator double() const = 0; @@ -203,6 +165,7 @@ public: class IfcAbstractEntity { public: + IfcParse::IfcFile* file; virtual IfcEntities getInverse(Ifc2x3::Type::Enum c = Ifc2x3::Type::ALL) = 0; virtual IfcEntities getInverse(Ifc2x3::Type::Enum c, int i, const std::string& a) = 0; virtual std::string datatype() = 0; @@ -214,7 +177,27 @@ public: virtual std::string toString(bool upper=false) = 0; virtual unsigned int id() = 0; virtual bool isWritable() = 0; - //virtual void setArgument(int i,int n); +}; + +class Logger { +public: + typedef enum { LOG_NOTICE, LOG_WARNING, LOG_ERROR } Severity; +private: + static std::ostream* log1; + static std::ostream* log2; + static std::stringstream log_stream; + static Severity verbosity; + static char* severity_strings[]; +public: + /// Determines to what stream respectively progress and errors are logged + static void SetOutput(std::ostream* l1, std::ostream* l2); + /// Determines the types of log messages to get logged + static void Verbosity(Severity v); + static Severity Verbosity(); + /// Log a message to the output stream + static void Message(Severity type, const std::string& message, const IfcAbstractEntityPtr entity=0); + static void Status(const std::string& message, bool new_line=true); + static std::string Logger::GetLog(); }; #endif diff --git a/src/ifcparse/IfcWritableEntity.h b/src/ifcparse/IfcWritableEntity.h index cad0c7df7d..ed919df508 100644 --- a/src/ifcparse/IfcWritableEntity.h +++ b/src/ifcparse/IfcWritableEntity.h @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -56,9 +56,9 @@ namespace IfcWrite { std::string toString(bool upper=false); unsigned int id(); bool isWritable(); + void setArgument(int i); void setArgument(int i,int v); void setArgument(int i,int v, const char* c); - void setArgument(int i,const Nullable& v); void setArgument(int i,const std::string& v); void setArgument(int i,double v); void setArgument(int i,IfcUtil::IfcSchemaEntity v); @@ -70,4 +70,4 @@ namespace IfcWrite { } -#endif \ No newline at end of file +#endif diff --git a/src/ifcparse/IfcWrite.cpp b/src/ifcparse/IfcWrite.cpp index a2edabafe4..8c594e4038 100644 --- a/src/ifcparse/IfcWrite.cpp +++ b/src/ifcparse/IfcWrite.cpp @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -26,12 +26,14 @@ using namespace IfcWrite; IfcWritableEntity::IfcWritableEntity(Ifc2x3::Type::Enum t) { _type = t; _id = 0; + file = 0; } int IfcWritableEntity::setId(int i) { - return *(_id = new int(i > 0 ? i : Ifc::FreshId())); + return *(_id = new int(i > 0 ? i : file->FreshId())); } IfcWritableEntity::IfcWritableEntity(IfcAbstractEntity* e) { + file = e->file; _type = e->type(); _id = new int(e->id()); @@ -45,7 +47,7 @@ IfcWritableEntity::IfcWritableEntity(IfcAbstractEntity* e) IfcEntities IfcWritableEntity::getInverse(Ifc2x3::Type::Enum c) { IfcEntities l = IfcEntities(new IfcEntityList()); int id = _id ? *_id : setId(); - IfcEntities all = Ifc::EntitiesByReference(id); + IfcEntities all = file->EntitiesByReference(id); if ( ! all ) return l; for( IfcEntityList::it it = all->begin(); it != all->end();++ it ) { if ( c == Ifc2x3::Type::ALL || (*it)->is(c) ) { @@ -87,7 +89,7 @@ std::string IfcWritableEntity::toString(bool upper) { ss << ")"; return ss.str(); } -unsigned int IfcWritableEntity::id() { if ( !_id ) _id = new int(Ifc::FreshId()); return *_id; } +unsigned int IfcWritableEntity::id() { if ( !_id ) _id = new int(file->FreshId()); return *_id; } bool IfcWritableEntity::isWritable() { return true; } bool IfcWritableEntity::arg_writable(int i) { std::map::const_iterator it = writemask.find(i); @@ -97,6 +99,11 @@ bool IfcWritableEntity::arg_writable(int i) { void IfcWritableEntity::arg_writable(int i, bool b) { writemask[i] = b; } +void IfcWritableEntity::setArgument(int i) { + if ( arg_writable(i) ) delete args[i]; + args[i] = new IfcWriteNullArgument(); + arg_writable(i,true); +} void IfcWritableEntity::setArgument(int i,int v) { if ( arg_writable(i) ) delete args[i]; args[i] = new IfcWriteIntegralArgument(v); @@ -112,12 +119,6 @@ void IfcWritableEntity::setArgument(int i,const std::string& v){ args[i] = new IfcWriteIntegralArgument(v); arg_writable(i,true); } -void IfcWritableEntity::setArgument(int i,const Nullable& v){ - if ( arg_writable(i) ) delete args[i]; - if ( v.IsNull() ) new IfcWriteNullArgument(); - else args[i] = new IfcWriteIntegralArgument(v); - arg_writable(i,true); -} void IfcWritableEntity::setArgument(int i,double v){ if ( arg_writable(i) ) delete args[i]; args[i] = new IfcWriteIntegralArgument(v); @@ -369,4 +370,22 @@ IfcSelectHelper::IfcSelectHelper(bool v, Ifc2x3::Type::Enum t) { this->entity = new IfcSelectHelperEntity(t,a); } bool IfcSelectHelper::is(Ifc2x3::Type::Enum t) const { return entity->is(t); } -Ifc2x3::Type::Enum IfcSelectHelper::type() const { return entity->type(); } \ No newline at end of file +Ifc2x3::Type::Enum IfcSelectHelper::type() const { return entity->type(); } + +EntityBuffer* EntityBuffer::i = 0; +EntityBuffer* EntityBuffer::instance() { + if ( ! i ) { + i = new EntityBuffer(); + i->buffer = IfcEntities(new IfcEntityList()); + } + return i; +} +IfcEntities EntityBuffer::Get() { + return instance()->buffer; +} +void EntityBuffer::Clear() { + instance()->buffer = IfcEntities(new IfcEntityList()); +} +void EntityBuffer::Add(IfcUtil::IfcSchemaEntity e) { + instance()->buffer->push(e); +} diff --git a/src/ifcparse/IfcWrite.h b/src/ifcparse/IfcWrite.h index fb5c681a94..565351f523 100644 --- a/src/ifcparse/IfcWrite.h +++ b/src/ifcparse/IfcWrite.h @@ -1,4 +1,4 @@ -/******************************************************************************** +/******************************************************************************** * * * This file is part of IfcOpenShell. * * * @@ -189,6 +189,19 @@ namespace IfcWrite { operator std::string() const; }; + // Accumulates all schema instances created from constructors + // This way they can be added in a single batch to the IfcFile + class EntityBuffer { + private: + IfcEntities buffer; + static EntityBuffer* i; + static EntityBuffer* instance(); + public: + static IfcEntities Get(); + static void Clear(); + static void Add(IfcUtil::IfcSchemaEntity e); + }; + } -#endif \ No newline at end of file +#endif diff --git a/src/ifcwrap/Interface.h b/src/ifcwrap/Interface.h index f75512371a..aa13f393d6 100644 --- a/src/ifcwrap/Interface.h +++ b/src/ifcwrap/Interface.h @@ -24,6 +24,8 @@ namespace IfcGeomObjects { const int CONVERT_BACK_UNITS = 3; const int USE_BREP_DATA = 4; const int SEW_SHELLS = 5; + const int FASTER_BOOLEANS = 6; + const int FORCE_CCW_FACE_ORIENTATION = 7; class IfcMesh { public: