#ifndef  ENTITY_SDAIIFCTELECOMADDRESS_H
#define  ENTITY_SDAIIFCTELECOMADDRESS_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 SdaiIfctelecomaddress : public SdaiIfcaddress {
     protected:
        StringAggregate_ptr _telephonenumbers = NULL;    //  OPTIONAL          //  of  ifclabel

        StringAggregate_ptr _facsimilenumbers = NULL;    //  OPTIONAL          //  of  ifclabel

        SDAI_String _pagernumber;    //  OPTIONAL
        StringAggregate_ptr _electronicmailaddresses = NULL;    //  OPTIONAL          //  of  ifclabel

        SDAI_String _wwwhomepageurl;    //  OPTIONAL
        StringAggregate_ptr _messagingids = NULL;    //  OPTIONAL          //  of  ifcurireference

    public: 
        SdaiIfctelecomaddress();
        SdaiIfctelecomaddress( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiIfctelecomaddress( SdaiIfctelecomaddress & e );
        ~SdaiIfctelecomaddress();
        int opcode() {
            return 233;
        }
        StringAggregate_ptr_c telephonenumbers_() const;
        StringAggregate_ptr   telephonenumbers_();
        void telephonenumbers_( const StringAggregate_ptr x );

        StringAggregate_ptr_c facsimilenumbers_() const;
        StringAggregate_ptr   facsimilenumbers_();
        void facsimilenumbers_( const StringAggregate_ptr x );

  const SdaiIfclabel   pagernumber_() const;
        SdaiIfclabel   pagernumber_();
        void pagernumber_( const SdaiIfclabel x );

        StringAggregate_ptr_c electronicmailaddresses_() const;
        StringAggregate_ptr   electronicmailaddresses_();
        void electronicmailaddresses_( const StringAggregate_ptr x );

  const SdaiIfcurireference   wwwhomepageurl_() const;
        SdaiIfcurireference   wwwhomepageurl_();
        void wwwhomepageurl_( const SdaiIfcurireference x );

        StringAggregate_ptr_c messagingids_() const;
        StringAggregate_ptr   messagingids_();
        void messagingids_( const StringAggregate_ptr x );

};

inline SdaiIfctelecomaddress * create_SdaiIfctelecomaddress() {
    return new SdaiIfctelecomaddress;
}

void init_SdaiIfctelecomaddress(Registry& reg);

namespace ifc4 {
    extern EntityDescriptor *e_ifctelecomaddress;
    extern AttrDescriptor *a_534telephonenumbers;
    extern AttrDescriptor *a_535facsimilenumbers;
    extern AttrDescriptor *a_536pagernumber;
    extern AttrDescriptor *a_537electronicmailaddresses;
    extern AttrDescriptor *a_538wwwhomepageurl;
    extern AttrDescriptor *a_539messagingids;
}

#endif
