diff --git a/src/generate_database.cpp b/src/generate_database.cpp new file mode 100644 index 0000000..d6c3e98 --- /dev/null +++ b/src/generate_database.cpp @@ -0,0 +1,39 @@ +#include +#include +#include + +extern "C" { +#include +} + +#include + +using namespace std; + +template +void generate(const string & database_directory) { + auto const db = read_database(database_directory); + cout << colors::green("Read database: ") << db.size() << endl; +} + +int main(int argc, char * argv[]) { + if (argc != 3) { + cerr << "usage: main \n"; + return 1; + } + + av_register_all(); + av_log_set_level(AV_LOG_QUIET); + + string const database_directory = argv[1]; + string const type = argv[2]; + + if (type == "rgb") { + generate(database_directory); + } else if (type == "wvlt_rgb") { + generate(database_directory); + } else { + cerr << "No known type given\n"; + return 1; + } +} diff --git a/src/main.cpp b/src/main.cpp index 9597206..9eb1c53 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -10,7 +10,6 @@ #include extern "C" { -#include #include #include } @@ -74,16 +73,21 @@ static void save_mozaic(Mozaiq const & mozaic, string filename){ encode_as_jpg(frame, filename); } -int main(){ +int main(int argc, char *argv[]){ + if(argc != 6){ + cerr << "usage: main \n"; + return 1; + } + av_register_all(); av_log_set_level(AV_LOG_QUIET); // TODO: use boost::program_options - string const database_directory = "basbram"; - string const filename = "basbram.jpg"; - string const output = "output/basbram.jpg"; - int const h_tiles = 4*4; - int const v_tiles = 3*4; + string const database_directory = argv[1]; + string const filename = argv[2]; + string const output = argv[3]; + int const h_tiles = stoi(argv[4]); + int const v_tiles = stoi(argv[5]); auto const db = read_database(database_directory); cout << colors::green("Read database: ") << db.size() << endl;