
export(
    bertinplot,
    criterion, 
    dissplot,
    get_method,
    get_order,
    hmap,
    panel.bars, 
    panel.circles, 
    panel.squares, 
    panel.lines,
    permute,
    ser_permutation,
    ser_permutation_vector,
    pimage, 
    seriate,
    set_criterion_method,
    get_criterion_method,
    list_criterion_methods,
    show_criterion_methods,
    set_seriation_method,
    get_seriation_method,
    list_seriation_methods,
    show_seriation_methods
    )

S3method("c", "ser_permutation")
S3method("[", "ser_permutation")

S3method(criterion, dist)
S3method(criterion, matrix)
S3method(criterion, array)

S3method(get_order, ser_permutation_vector)
S3method(get_order, integer)
S3method(get_order, hclust)
S3method(get_order, ser_permutation)

S3method(length, ser_permutation_vector)
# ser_permutations gets length from list

S3method(pimage, matrix)
S3method(pimage, dist)

S3method(plot, cluster_dissimilarity_matrix)

S3method(print, ser_permutation_vector)
S3method(print, ser_permutation)
S3method(print, cluster_dissimilarity_matrix)
S3method(print, seriation_method)
S3method(print, criterion_method)

S3method(permute, array)
S3method(permute, matrix)
S3method(permute, numeric)
S3method(permute, list)
S3method(permute, dist)

S3method(seriate, dist)
S3method(seriate, matrix)
S3method(seriate, array)

S3method(summary, ser_permutation)
S3method(summary, ser_permutation_vector)

useDynLib(seriation)
