Skip to content
Snippets Groups Projects
main.cpp 1.69 KiB
Newer Older
  • Learn to ignore specific revisions
  • theazgra's avatar
    theazgra committed
    #include "czi_parser.h"
    
    theazgra's avatar
    theazgra committed
    int main(int argc, char **argv)
    {
    
        std::string cziFile;
    
    theazgra's avatar
    theazgra committed
        // #if DEBUG
        //     printf("***DEBUG MODE***\n");
        //     if (argc == 1)
        //     {
        //         argv[1] = (char *)"/home/mor0146/gitlab/data_project/czi-format/data/MultiResolution-Mosaic.czi";
        //         argv[2] = (char *)"--dump-image-data";
        //         argv[3] = (char *)"imgdump/";
        //     }
        //     argc = 4;
        //     cziFile = argv[1];
        // #else
    
        // #endif
    
        cziFile = (argc > 1) ? argv[1] : "/home/mor0146/gitlab/data_project/czi-format/data/CZT-Stack-Anno.czi"; //"/home/mor0146/gitlab/data_project/czi-format/data/m2/exampleSingleChannel.czi";
    
        always_assert(is_file(cziFile));
    
    
    theazgra's avatar
    theazgra committed
        std::string method = argc > 2 ? argv[2] : "";
        std::string dumpName = argc > 3 ? argv[3] : "";
    
    theazgra's avatar
    theazgra committed
        bool report = method == "--report";
        bool reportAll = method == "--report-verbose";
    
    theazgra's avatar
    theazgra committed
        bool dumpRawImageData = method == "--dump-raw-image-data";
        bool dumpImageData = method == "--dump-image-data";
    
        auto name = get_filename_without_extension(cziFile);
        auto x = get_files_in_parent_directory(cziFile, true);
        auto y = get_files_with_same_prefix(x, name);
    
    
        CziParser parser;
        auto parseResult = parser.parse_czi_file(cziFile);
    
    theazgra's avatar
    theazgra committed
            parseResult.report_verbose();
        else if (report)
            parseResult.report();
    
    theazgra's avatar
    theazgra committed
        else if (dumpRawImageData)
    
            parseResult.dump_image_data(dumpName);
    
    theazgra's avatar
    theazgra committed
        else if (dumpImageData)
    
    theazgra's avatar
    theazgra committed
        {
            auto imgMat = parseResult.get_image(0);
            imgMat.save_as_ppm("matrix");
            //TODO: Re-Enable it.
            //parseResult.extract_images(dumpName);
        }
    
    theazgra's avatar
    theazgra committed
        return 0;