#ifndef  ENTITY_SDAIPROJECTED_ZONE_DEFINITION_H
#define  ENTITY_SDAIPROJECTED_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 SdaiProjected_zone_definition : public SdaiTolerance_zone_definition {
     protected:
        SDAI_Application_instance_ptr _projection_end = NULL;
        SDAI_Application_instance_ptr _projected_length = NULL;
    public: 
        SdaiProjected_zone_definition();
        SdaiProjected_zone_definition( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiProjected_zone_definition( SdaiProjected_zone_definition & e );
        ~SdaiProjected_zone_definition();
        int opcode() {
            return 389;
        }
        SdaiShape_aspect_ptr_c projection_end_() const;
        SdaiShape_aspect_ptr   projection_end_();
        void projection_end_( const SdaiShape_aspect_ptr x );

        SdaiMeasure_with_unit_ptr_c projected_length_() const;
        SdaiMeasure_with_unit_ptr   projected_length_();
        void projected_length_( const SdaiMeasure_with_unit_ptr x );

};

inline SdaiProjected_zone_definition * create_SdaiProjected_zone_definition() {
    return new SdaiProjected_zone_definition;
}

void init_SdaiProjected_zone_definition(Registry& reg);

namespace process_planning_schema {
    extern EntityDescriptor *e_projected_zone_definition;
    extern AttrDescriptor *a_501projection_end;
    extern AttrDescriptor *a_502projected_length;
}

#endif
