#ifndef  ENTITY_SDAICONFIGURATION_ITEM_H
#define  ENTITY_SDAICONFIGURATION_ITEM_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 SdaiConfiguration_item : public SDAI_Application_instance {
    protected:
        SDAI_String _id;
        SDAI_String _name;
        SDAI_String _description;    //  OPTIONAL
        SDAI_Application_instance_ptr _item_concept = NULL;
        SDAI_String _purpose;    //  OPTIONAL
    public: 
        SdaiConfiguration_item();
        SdaiConfiguration_item( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiConfiguration_item( SdaiConfiguration_item & e );
        ~SdaiConfiguration_item();
        int opcode() {
            return 5;
        }
  const SdaiIdentifier   id_() const;
        SdaiIdentifier   id_();
        void id_( const SdaiIdentifier x );

  const SdaiLabel   name_() const;
        SdaiLabel   name_();
        void name_( const SdaiLabel x );

  const SdaiText   description_() const;
        SdaiText   description_();
        void description_( const SdaiText x );

        SdaiProduct_concept_ptr_c item_concept_() const;
        SdaiProduct_concept_ptr   item_concept_();
        void item_concept_( const SdaiProduct_concept_ptr x );

  const SdaiLabel   purpose_() const;
        SdaiLabel   purpose_();
        void purpose_( const SdaiLabel x );

};

inline SdaiConfiguration_item * create_SdaiConfiguration_item() {
    return new SdaiConfiguration_item;
}

void init_SdaiConfiguration_item(Registry& reg);

namespace ap209_multidisciplinary_analysis_and_design_mim_lf {
    extern EntityDescriptor *e_configuration_item;
    extern AttrDescriptor *a_10id;
    extern AttrDescriptor *a_11name;
    extern AttrDescriptor *a_12description;
    extern AttrDescriptor *a_13item_concept;
    extern AttrDescriptor *a_14purpose;
}

#endif
