#ifndef  ENTITY_SDAIEXTRUDED_FACE_SOLID_WITH_TRIM_CONDITIONS_H
#define  ENTITY_SDAIEXTRUDED_FACE_SOLID_WITH_TRIM_CONDITIONS_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 SdaiExtruded_face_solid_with_trim_conditions : public SdaiExtruded_face_solid {
     protected:
        SdaiTrim_condition_select _first_trim_condition;
        SdaiTrim_condition_select _second_trim_condition;
        SdaiTrim_intent_var _first_trim_intent;
        SdaiTrim_intent_var _second_trim_intent;
        SDAI_Real _first_offset = 0.0;
        SDAI_Real _second_offset = 0.0;
    public: 
        SdaiExtruded_face_solid_with_trim_conditions();
        SdaiExtruded_face_solid_with_trim_conditions( SDAI_Application_instance *se, bool addAttrs = true );
        SdaiExtruded_face_solid_with_trim_conditions( SdaiExtruded_face_solid_with_trim_conditions & e );
        ~SdaiExtruded_face_solid_with_trim_conditions();
        int opcode() {
            return 212;
        }
        SdaiTrim_condition_select_ptr_c first_trim_condition_() const;
        SdaiTrim_condition_select_ptr   first_trim_condition_();
        void first_trim_condition_( const SdaiTrim_condition_select_ptr x );

        SdaiTrim_condition_select_ptr_c second_trim_condition_() const;
        SdaiTrim_condition_select_ptr   second_trim_condition_();
        void second_trim_condition_( const SdaiTrim_condition_select_ptr x );

  const SdaiTrim_intent_var   first_trim_intent_() const;
        SdaiTrim_intent_var   first_trim_intent_();
        void first_trim_intent_( const SdaiTrim_intent_var x );

  const SdaiTrim_intent_var   second_trim_intent_() const;
        SdaiTrim_intent_var   second_trim_intent_();
        void second_trim_intent_( const SdaiTrim_intent_var x );

        SdaiNon_negative_length_measure   first_offset_() const;
        void first_offset_( const SdaiNon_negative_length_measure x );

        SdaiNon_negative_length_measure   second_offset_() const;
        void second_offset_( const SdaiNon_negative_length_measure x );

};

inline SdaiExtruded_face_solid_with_trim_conditions * create_SdaiExtruded_face_solid_with_trim_conditions() {
    return new SdaiExtruded_face_solid_with_trim_conditions;
}

void init_SdaiExtruded_face_solid_with_trim_conditions(Registry& reg);

namespace ap210_electronic_assembly_interconnect_and_packaging_design_mim_lf {
    extern EntityDescriptor *e_extruded_face_solid_with_trim_conditions;
    extern AttrDescriptor *a_250first_trim_condition;
    extern AttrDescriptor *a_251second_trim_condition;
    extern AttrDescriptor *a_252first_trim_intent;
    extern AttrDescriptor *a_253second_trim_intent;
    extern AttrDescriptor *a_254first_offset;
    extern AttrDescriptor *a_255second_offset;
}

#endif
