useDynLib(Rcsdp, .registration = TRUE, .fixes = "C_")

importFrom("methods", "as")
importFrom("stats", "rnorm")

export("csdp",
       "csdp_minimal",
       "csdp.control",
       "readsdpa",
       "writesdpa",
       "readsdpa.sol",
       "writesdpa.sol",
       "simple_triplet_sym_matrix",
       ".simple_triplet_zero_sym_matrix",
       ".simple_triplet_diag_sym_matrix",
       ".simple_triplet_random_sym_matrix")

S3method("as.simple_triplet_sym_matrix","simple_triplet_sym_matrix")
S3method("as.simple_triplet_sym_matrix","matrix")
S3method("as.matrix","simple_triplet_sym_matrix")
S3method("as.vector","simple_triplet_sym_matrix")
S3method("dim","simple_triplet_sym_matrix")
S3method("all.equal","simple_triplet_sym_matrix")

S3method("as.simple_triplet_sym_matrix","dgeMatrix")
S3method("as.simple_triplet_sym_matrix","dsyMatrix")
S3method("as.simple_triplet_sym_matrix","dpoMatrix")
S3method("as.simple_triplet_sym_matrix","dgTMatrix")
S3method("as.simple_triplet_sym_matrix","dsCMatrix")
S3method("as.simple_triplet_sym_matrix","dsTMatrix")
S3method("as.simple_triplet_sym_matrix","ddiMatrix")
