import oapackage.conference
import oapackage.Doptim
import oapackage.oahelper
from oapackage.Doptim import (  # noqa
    Doptimize,
    array2Dtable,
    calcScore,
    filterPareto,
    generateDscatter,
    optimDeffPython,
    scoreDn,
    selectDn,
)
from oapackage.oahelper import (  # noqa
    DefficiencyBound,
    array2html,
    array2latex,
    arrayfile_generator,
    checkArrayFile,
    checkFiles,
    checkFilesOA,
    checkOAfile,
    choose,
    compressOAfile,
    create_pareto_element,
    createPareto,
    deprecated,
    designStandardError,
    enlargelims,
    extendSingleArray,
    fac,
    fileinput,
    finddirectories,
    findfiles,
    findfilesR,
    floatformat,
    formatC,
    getArrayFile,
    guitest_monitorSizes,
    gwlp2str,
    helmert_contrasts,
    isstr,
    joinArrayLists,
    jseq,
    makearraylink,
    mkdirc,
    monitorSizes,
    nArrayFile,
    niceplot,
    oainfo,
    oaIsBinary,
    oalib,
    parseProcessingTime,
    plot2Dline,
    randomizearrayfile,
    runcommand,
    runExtend,
    safemax,
    safemin,
    selectArrays,
    selectArraysInFile,
    selectJ,
    selectParetoArrays,
    series2htmlstr,
    setWindowRectangle,
    sortcols,
    sortrows,
    static_var,
    strftime,
    test_selectJ,
    tilefigs,
    timeString,
    tprint,
    webbrowser,
    write_text_arrayfile,
)

""" Orthogonal Array package

The Orthogonal Array package is a package to generate and analyse orthogonal
arrays, optimal designs and conference matrices. For more information see

http://github.com/eendebakpt/oapackage

"""
from oalib import *  # noqa # legacy structure # ty: ignore
from oalib import (  # noqa
    ABINARY,
    ALATEX,
    ATEXT,
    GWLP,
    LMC_EQUAL,
    LMC_LESS,
    LMC_MORE,
    GWLPmixed,
    Jcharacteristics_conference,
    LMCcheck,
    LMCcheckOriginal,
    LMCreduction_t,
    OAextend,
    ParetoDoubleLong,
    PECsequence,
    PICsequence,
    array2eigenModelMatrixMixed,
    array2modelmatrix,
    array2modelmatrix_sizes,
    array_link,
    array_transformation_t,
    arraydata_t,
    arrayfile_t,
    arraylink2arraydata,
    arraylist_t,
    arrayrankInfo,
    compareJ54,
    compareLMC,
    conference2DSD,
    conference_design2modelmatrix,
    conference_t,
    create_array_link,
    depth_extend_t,
    distance_distribution,
    distance_distribution_mixed,
    distance_distribution_mixed_inplace,
    distance_distribution_shape,
    double_conference_foldover_permutation,
    exampleArray,
    extend_array,
    extend_conference_matrix,
    extend_conference_plain,
    extend_conference_restricted,
    generateConferenceExtensions,
    get_time_ms,
    getloglevel,
    intVector,
    is_root_form,
    isConferenceFoldover,
    jstruct_t,
    jstructconference_t,
    jvalue,
    krawtchouk,
    macwilliams_transform,
    macwilliams_transform_mixed,
    mvalue_t_double,
    mvalue_t_long,
    mycheck_handler,
    ndarray_double,
    oafilestring,
    oagraph2transformation,
    optimDeff,
    print_column,
    projDeff,
    projectionDOFvalues,
    rankStructure,
    readarrayfile,
    reduceConference,
    reduceDOPform,
    reduceGraphNauty,
    reduceLMCform,
    reduceOAnauty,
    reductionDOP,
    selectConferenceIsomorpismClasses,
    selectLMC0,
    splitDir,
    splitFile,
    splitTag,
    symmetry_group,
    throw_runtime_exception,
    transformGraphMatrix,
    update_array_link,
    writearrayfile,
)

oapackage.oalib.setloglevel(oapackage.oalib.SYSTEM)
oapackage.oalib.log_print(-oapackage.oalib.SYSTEM, "")
__version__ = oapackage.oalib.version()

__description__ = "Orthogonal Array package"
__uri__ = "http://www.pietereendebak.nl/oapackage/index.html"
