#ifndef  ENTITY_SDAIIFCDISTRIBUTIONPORT_H
#define  ENTITY_SDAIIFCDISTRIBUTIONPORT_H

// This file was generated by exp2cxx,
// 0.8.1.
// You probably don't want to edit it since your modifications
// will be lost if exp2cxx is used to regenerate it.

class SC_SCHEMA_EXPORT SdaiIfcdistributionport : public SdaiIfcport {
     protected:
        SdaiIfcflowdirectionenum_var _flowdirection;    //  OPTIONAL
        SdaiIfcdistributionporttypeenum_var _predefinedtype;    //  OPTIONAL
        SdaiIfcdistributionsystemenum_var _systemtype;    //  OPTIONAL
    public: 
        SdaiIfcdistributionport();
        SdaiIfcdistributionport( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfcdistributionport( SdaiIfcdistributionport & e );
        ~SdaiIfcdistributionport();
        int opcode() {
            return 10;
        }
  const SdaiIfcflowdirectionenum_var   flowdirection_() const;
        SdaiIfcflowdirectionenum_var   flowdirection_();
        void flowdirection_( const SdaiIfcflowdirectionenum_var x );

  const SdaiIfcdistributionporttypeenum_var   predefinedtype_() const;
        SdaiIfcdistributionporttypeenum_var   predefinedtype_();
        void predefinedtype_( const SdaiIfcdistributionporttypeenum_var x );

  const SdaiIfcdistributionsystemenum_var   systemtype_() const;
        SdaiIfcdistributionsystemenum_var   systemtype_();
        void systemtype_( const SdaiIfcdistributionsystemenum_var x );

};

inline SdaiIfcdistributionport * create_SdaiIfcdistributionport() {
    return new SdaiIfcdistributionport;
}

void init_SdaiIfcdistributionport(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifcdistributionport;
    extern AttrDescriptor *a_30flowdirection;
    extern AttrDescriptor *a_31predefinedtype;
    extern AttrDescriptor *a_32systemtype;
}

#endif
