Example #1
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="aggregate">Handle of an aggregation (i.e. sorted collection).</param>
 /// <param name="aggragateType">Type of the aggregation, for example sdaiINSTANCE, sdaiREAL, ...</param>
 public void GetAggregationType(IntPtr aggregate, ref SdaiType aggragateType)
 {
     if (_engiGetAggrType == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     var aType = IntPtr.Zero;
     _engiGetAggrType.Invoke(aggregate, ref aType);
     aggragateType = (SdaiType)aType.ToInt32();
 }
Example #2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="instance">Handle of an instance within an IFC file, for example #31313 = IFCWALLSTANDARDCASE(...)</param>
 /// <param name="attributeName">Name of the attribute, for example Name of IFCROOT as defined in IFC4.exp.</param>
 /// <param name="valueType">Type of the value, for example sdaiSTRING, sdaiINSTANCE, sdaiREAL, ...</param>
 /// <param name="value">Placeholder for the information, formatting depending on defined valueType.</param>
 /// <returns></returns>
 public IntPtr GetAttribute(IntPtr instance, string attributeName, SdaiType valueType, out IntPtr value)
 {
     if (_sdaiGetAttrBn == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     return _sdaiGetAttrBn.Invoke(instance, attributeName, new IntPtr((int)valueType), out value);
 }
Example #3
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="ADB">Handle to ADB type, a typical representation is IFCLABEL('myLabel') or IFCINTEGER(313).</param>
 /// <param name="valueType">Type of the value, for example sdaiSTRING, sdaiINSTANCE, sdaiREAL, ...</param>
 /// <param name="value">Placeholder for the information, formatting depending on defined valueType.</param>
 public void GetADBValue(IntPtr ADB, SdaiType valueType, out double value)
 {
     if (_sdaiGetAdbValue_d == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _sdaiGetAdbValue_d.Invoke(ADB, new IntPtr((int)valueType), out value);
 }
Example #4
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="aggregate">Handle of an aggregation (i.e. sorted collection).</param>
 /// <param name="elementIndex">Integer value equal or larger then 0 and smaller than given maximum length of list of elements used.</param>
 /// <param name="valueType">Type of the value, for example sdaiSTRING, sdaiINSTANCE, sdaiREAL, ...</param>
 /// <param name="value">Placeholder for the information, formatting depending on defined valueType.</param>
 /// <returns></returns>
 public IntPtr GetAggregationElement(IntPtr aggregate, int elementIndex, SdaiType valueType,
     out double value)
 {
     if (_engiGetAggrElement_d == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     return _engiGetAggrElement_d.Invoke(aggregate, new IntPtr(elementIndex), new IntPtr((int)valueType), out value);
 }
Example #5
0
 public void Append(IntPtr list, SdaiType valueType, byte[] value)
 {
     if (_sdaiAppend_b == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _sdaiAppend_b.Invoke(list, new IntPtr((int)valueType), value);
 }
Example #6
0
 public IntPtr CreateADB(SdaiType valueType, byte[] value)
 {
     if (_sdaiCreateAdb_b == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     return _sdaiCreateAdb_b.Invoke(new IntPtr((int)valueType), value);
 }
Example #7
0
 public void PutAttribute(IntPtr instance, byte[] attributeName, SdaiType valueType, byte[] value)
 {
     if (_sdaiPutAttrBN_byte_b == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _sdaiPutAttrBN_byte_b.Invoke(instance, attributeName, new IntPtr((int)valueType), value);
 }
Example #8
0
 public IntPtr SetSPFFHeaderItem(IntPtr model, int itemIndex, int itemSubIndex, SdaiType valueType, byte[] value)
 {
     if (_setSpffHeaderItem_byte == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     return _setSpffHeaderItem_byte.Invoke(model, new IntPtr(itemIndex), new IntPtr(itemSubIndex), new IntPtr((int)valueType), value);
 }
Example #9
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="instance">Handle of an instance within an IFC file, for example #31313 = IFCWALLSTANDARDCASE(...)</param>
 /// <param name="attributeName">Name of the attribute, for example Name of IFCROOT as defined in IFC4.exp.</param>
 /// <param name="valueType">Type of the value, for example sdaiSTRING, sdaiINSTANCE, sdaiREAL, ...</param>
 /// <param name="value">Placeholder for the information, formatting depending on defined valueType.</param>
 public void PutAttribute(IntPtr instance, string attributeName, SdaiType valueType, ref double value)
 {
     if (_sdaiPutAttrBN_d == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _sdaiPutAttrBN_d.Invoke(instance, attributeName, new IntPtr((int)valueType), ref value);
 }
Example #10
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="instance">Handle of an instance within an IFC file, for example #31313 = IFCWALLSTANDARDCASE(...)</param>
 /// <param name="attribute">A handle to the an attribute of a certain entity, for example attribute Name of entity IFCROOT.</param>
 /// <param name="valueType">Type of the value, for example sdaiSTRING, sdaiINSTANCE, sdaiREAL, ...</param>
 /// <param name="value">Placeholder for the information, formatting depending on defined valueType.</param>
 public void PutAttribute(IntPtr instance, IntPtr attribute, SdaiType valueType, string value)
 {
     if (_sdaiPutAttr_s == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _sdaiPutAttr_s.Invoke(instance, attribute, new IntPtr((int)valueType), value);
 }
Example #11
0
 public IntPtr GetSPFFHeaderItem(IntPtr model, int itemIndex, int itemSubIndex, SdaiType valueType, out IntPtr value)
 {
     if (_getSpffHeaderItem == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     return _getSpffHeaderItem.Invoke(model, new IntPtr(itemIndex), new IntPtr(itemSubIndex), new IntPtr((int)valueType), out value);
 }
Example #12
0
 /// <summary>
 /// This call can be used to get the name of the given entity.
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="valueType"></param>
 /// <param name="entityName"></param>
 public void GetEntityName(IntPtr entity, SdaiType valueType, out IntPtr entityName)
 {
     if (_engiGetEntityName == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     _engiGetEntityName.Invoke(entity, new IntPtr((int)valueType), out entityName);
 }
Example #13
0
 /// <summary>
 /// This call can be used to retrieve the type of the n-th argument of the given entity. In case of a select argument no relevant information is given by this call as it depends on the instance. Arguments of parent entities are included in the index. Both direct and inverse arguments are included.
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="index"></param>
 /// <param name="argumentType"></param>
 public void GetEntityArgumentType(IntPtr entity, int index, ref SdaiType argumentType)
 {
     if (_engiGetEntityArgumentType == null) {
         throw new Exception("Failed in loading IfcEngine.");
     }
     var aType = IntPtr.Zero;
     _engiGetEntityArgumentType.Invoke(entity, new IntPtr(index), ref aType);
     argumentType = (SdaiType)aType.ToInt32();
 }