if HMMER_IMPL == "VMX":
    from libhmmer.impl_vmx.p7_oprofile cimport (
        p7O_NQB, 
        p7O_NQW,
        p7O_NQF,
        p7O_NXSTATES,
        p7o_xstates_e,
        p7O_NXTRANS,
        p7o_xtransitions_e,
        p7O_NTRANS,
        p7o_tsc_e,
        P7_OPROFILE,
        P7_OM_BLOCK,
        p7_oprofile_Create,
        p7_oprofile_IsLocal,
        p7_oprofile_Destroy,
        p7_oprofile_Sizeof,
        p7_oprofile_Copy,
        p7_oprofile_Clone,
        p7_oprofile_UpdateFwdEmissionScores,
        p7_oprofile_UpdateVitEmissionScores,
        p7_oprofile_UpdateMSVEmissionScores,
        p7_oprofile_Convert,
        p7_oprofile_ReconfigLength,
        p7_oprofile_ReconfigMSVLength,
        p7_oprofile_ReconfigRestLength,
        p7_oprofile_ReconfigMultihit,
        p7_oprofile_ReconfigUnihit,
        p7_oprofile_Dump,
        p7_oprofile_Sample,
        p7_oprofile_Compare,
        p7_profile_SameAsMF,
        p7_profile_SameAsVF,
        p7_oprofile_GetFwdTransitionArray,
        p7_oprofile_GetSSVEmissionScoreArray,
        p7_oprofile_GetFwdEmissionScoreArray,
        p7_oprofile_GetFwdEmissionArray,
        p7_oprofile_CreateBlock,
        p7_oprofile_DestroyBlock, 
    )
elif HMMER_IMPL == "NEON":
    from libhmmer.impl_neon.p7_oprofile cimport (
        p7O_NQB, 
        p7O_NQW,
        p7O_NQF,
        p7O_NXSTATES,
        p7o_xstates_e,
        p7O_NXTRANS,
        p7o_xtransitions_e,
        p7O_NTRANS,
        p7o_tsc_e,
        P7_OPROFILE,
        P7_OM_BLOCK,
        p7_oprofile_Create,
        p7_oprofile_IsLocal,
        p7_oprofile_Destroy,
        p7_oprofile_Sizeof,
        p7_oprofile_Copy,
        p7_oprofile_Clone,
        p7_oprofile_UpdateFwdEmissionScores,
        p7_oprofile_UpdateVitEmissionScores,
        p7_oprofile_UpdateMSVEmissionScores,
        p7_oprofile_Convert,
        p7_oprofile_ReconfigLength,
        p7_oprofile_ReconfigMSVLength,
        p7_oprofile_ReconfigRestLength,
        p7_oprofile_ReconfigMultihit,
        p7_oprofile_ReconfigUnihit,
        p7_oprofile_Dump,
        p7_oprofile_Sample,
        p7_oprofile_Compare,
        p7_profile_SameAsMF,
        p7_profile_SameAsVF,
        p7_oprofile_GetFwdTransitionArray,
        p7_oprofile_GetSSVEmissionScoreArray,
        p7_oprofile_GetFwdEmissionScoreArray,
        p7_oprofile_GetFwdEmissionArray,
        p7_oprofile_CreateBlock,
        p7_oprofile_DestroyBlock, 
    )
elif HMMER_IMPL == "SSE":
    from libhmmer.impl_sse.p7_oprofile cimport (
        p7O_NQB, 
        p7O_NQW,
        p7O_NQF,
        p7O_NXSTATES,
        p7o_xstates_e,
        p7O_NXTRANS,
        p7o_xtransitions_e,
        p7O_NTRANS,
        p7o_tsc_e,
        P7_OPROFILE,
        P7_OM_BLOCK,
        p7_oprofile_Create,
        p7_oprofile_IsLocal,
        p7_oprofile_Destroy,
        p7_oprofile_Sizeof,
        p7_oprofile_Copy,
        p7_oprofile_Clone,
        p7_oprofile_UpdateFwdEmissionScores,
        p7_oprofile_UpdateVitEmissionScores,
        p7_oprofile_UpdateMSVEmissionScores,
        p7_oprofile_Convert,
        p7_oprofile_ReconfigLength,
        p7_oprofile_ReconfigMSVLength,
        p7_oprofile_ReconfigRestLength,
        p7_oprofile_ReconfigMultihit,
        p7_oprofile_ReconfigUnihit,
        p7_oprofile_Dump,
        p7_oprofile_Sample,
        p7_oprofile_Compare,
        p7_profile_SameAsMF,
        p7_profile_SameAsVF,
        p7_oprofile_GetFwdTransitionArray,
        p7_oprofile_GetSSVEmissionScoreArray,
        p7_oprofile_GetFwdEmissionScoreArray,
        p7_oprofile_GetFwdEmissionArray,
        p7_oprofile_CreateBlock,
        p7_oprofile_DestroyBlock, 
    )
   
