#ifndef  ENTITY_SDAITOLERANCE_ZONE_DEFINITION_H
#define  ENTITY_SDAITOLERANCE_ZONE_DEFINITION_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 SdaiTolerance_zone_definition : public SDAI_Application_instance {
    protected:
        SDAI_Application_instance_ptr _zone = NULL;
        EntityAggregate_ptr _boundaries = NULL;          //  of  shape_aspect

    public: 
        SdaiTolerance_zone_definition();
        SdaiTolerance_zone_definition( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiTolerance_zone_definition( SdaiTolerance_zone_definition & e );
        ~SdaiTolerance_zone_definition();
        int opcode() {
            return 12;
        }
        SdaiTolerance_zone_ptr_c zone_() const;
        SdaiTolerance_zone_ptr   zone_();
        void zone_( const SdaiTolerance_zone_ptr x );

        EntityAggregate_ptr_c boundaries_() const;
        EntityAggregate_ptr   boundaries_();
        void boundaries_( const EntityAggregate_ptr x );

};

inline SdaiTolerance_zone_definition * create_SdaiTolerance_zone_definition() {
    return new SdaiTolerance_zone_definition;
}

void init_SdaiTolerance_zone_definition(Registry& reg);

namespace ap203_configuration_controlled_3d_design_of_mechanical_parts_and_assemblies_mim_lf {
    extern EntityDescriptor *e_tolerance_zone_definition;
    extern AttrDescriptor *a_24zone;
    extern AttrDescriptor *a_25boundaries;
}

#endif
