2 #ifndef SCAFFOLD_IO_HPP
3 #define SCAFFOLD_IO_HPP
7 #include "utils/scaffolding_typedefs.hpp"
9 #include "io/read_dimacs_graph.hpp"
10 #include "io/write_dimacs_graph.hpp"
11 #include "io/read_dot.hpp"
12 #include "io/write_dot.hpp"
13 #include "io/read_adj_list.hpp"
14 #include "io/write_adj_list.hpp"
19 Instance* read_instance(std::ifstream& infile,
20 const unsigned num_paths,
21 const unsigned num_cycles,
22 const unsigned num_objects,
23 SequenceMap& sequence_orientations)
27 DEBUG1(std::cout <<
"reading input file" << std::endl);
29 result = io::read_dot(infile, num_paths, num_cycles, num_objects, sequence_orientations);
31 DEBUG1(std::cout <<
"file is not in DOT format, trying DIMACS..."<<std::endl);
33 infile.seekg(0, std::ios::beg);
36 result = io::read_dimacs_graph(infile, num_paths, num_cycles, num_objects);
38 DEBUG1(std::cout <<
"file is not in DIMACS format, trying adjacency list format..."<<std::endl);
40 infile.seekg(0, std::ios::beg);
43 result = io::read_adj_list(infile, num_paths, num_cycles, num_objects);
45 DEBUG1(std::cout <<
"file is not in adjacency list format, giving up"<<std::endl);
55 Instance* read_instance(std::ifstream& infile, SequenceMap& sequences)
57 return read_instance(infile, 0, 0, UINT_MAX, sequences);
61 Instance* read_instance(std::ifstream& infile,
62 const unsigned num_paths,
63 const unsigned num_cycles,
64 const unsigned num_objects)
67 return read_instance(infile, num_paths, num_cycles, num_objects, seq);
Definition: read_adj_list.hpp:22
Definition: read_phytree.hpp:10