public virtual void IfcParse(int propIndex, IPropertyValue value)
        {
            switch (propIndex)
            {
            case 0:
                ((IXbimNoNotifyCollection)_shapeRepresentations).Add((IfcShapeModel)value.EntityVal);
                break;

            case 1:
                _name = value.StringVal;
                break;

            case 2:
                _description = value.StringVal;
                break;

            case 3:
                _productDefinitional = value.BooleanVal;
                break;

            case 4:
                _partOfProductDefinitionShape = (IfcProductDefinitionShape)value.EntityVal;
                break;

            default:
                this.HandleUnexpectedAttribute(propIndex, value); break;
            }
        }
        public override void Parse(int propIndex, IPropertyValue value, int[] nestedIndex)
        {
            switch (propIndex)
            {
            case 0:
                _shapeRepresentations.InternalAdd((IfcShapeModel)value.EntityVal);
                return;

            case 1:
                _name = value.StringVal;
                return;

            case 2:
                _description = value.StringVal;
                return;

            case 3:
                _productDefinitional = value.BooleanVal;
                return;

            case 4:
                _partOfProductDefinitionShape = (IfcProductDefinitionShape)(value.EntityVal);
                return;

            default:
                throw new XbimParserException(string.Format("Attribute index {0} is out of range for {1}", propIndex + 1, GetType().Name.ToUpper()));
            }
        }
 public virtual void IfcParse(int propIndex, IPropertyValue value)
 {
     switch (propIndex)
     {
         case 0:
             ((IXbimNoNotifyCollection)_shapeRepresentations).Add((IfcShapeModel) value.EntityVal);
             break;
         case 1:
             _name = value.StringVal;
             break;
         case 2:
             _description = value.StringVal;
             break;
         case 3:
             _productDefinitional = value.BooleanVal;
             break;
         case 4:
             _partOfProductDefinitionShape = (IfcProductDefinitionShape) value.EntityVal;
             break;
         default:
             this.HandleUnexpectedAttribute(propIndex, value); break;
     }
 }