X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tools%2Fpj2if.cpp;h=19eb14ddac7980223ebc5595108fd9210a4805dd;hb=HEAD;hp=1bbfb112b00d6b4f7147e0aed4850ee0ef90c8b7;hpb=b9dfe2d5cee6f08652541f3c5318f78d50314161;p=ctsim.git diff --git a/tools/pj2if.cpp b/tools/pj2if.cpp index 1bbfb11..19eb14d 100644 --- a/tools/pj2if.cpp +++ b/tools/pj2if.cpp @@ -7,9 +7,7 @@ ** Date Started: April 2000 ** ** This is part of the CTSim program -** Copyright (C) 1983-2000 Kevin Rosenberg -** -** $Id: pj2if.cpp,v 1.6 2000/12/16 07:28:25 kevin Exp $ +** Copyright (C) 1983-2009 Kevin Rosenberg ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -26,7 +24,7 @@ ******************************************************************************/ /* FILE - * pj2if.c Convert Raysum to image + * pj2if.c Convert Raysum to image * * DATE * Apr 1999 @@ -36,39 +34,36 @@ #include "timer.h" -enum { O_VERBOSE, O_DUMP, O_HELP, O_VERSION }; +enum { O_VERBOSE, O_HELP, O_VERSION, O_POLAR }; static struct option my_options[] = { + {"polar", 0, 0, O_POLAR}, {"verbose", 0, 0, O_VERBOSE}, - {"dump", 0, 0, O_DUMP}, {"help", 0, 0, O_HELP}, {"version", 0, 0, O_VERSION}, {0, 0, 0, 0} }; -static const char* g_szIdStr = "$Id: pj2if.cpp,v 1.6 2000/12/16 07:28:25 kevin Exp $"; +static const char* g_szIdStr = "$Id$"; -void +void pj2if_usage (const char *program) { std::cout << "usage: " << fileBasename(program) << " in-proj-file out-if-file [OPTIONS]\n"; - std::cout << "Converts a projection file to a IF file\n"; + std::cout << "Converts a projection file to a imagefile\n"; std::cout << std::endl; + std::cout << " --polar Convert to polar format\n"; std::cout << " --verbose Verbose mode\n"; - std::cout << " --dump Dump all scan data\n"; std::cout << " --version Print version\n"; std::cout << " --help Print this help message\n"; } - - -int +int pj2if_main (const int argc, char *const argv[]) { char *pj_name, *im_name; bool optVerbose = false; - bool optDump = false; extern int optind; Timer timerProgram; @@ -76,33 +71,30 @@ pj2if_main (const int argc, char *const argv[]) { int c = getopt_long (argc, argv, "", my_options, NULL); if (c == -1) - break; - + break; + switch (c) - { - case O_VERBOSE: - optVerbose = true; - break; - case O_DUMP: - optDump = true; - break; + { + case O_VERBOSE: + optVerbose = true; + break; case O_VERSION: #ifdef VERSION - std::cout << "Version " << VERSION << std::endl << g_szIdStr << std::endl; + std::cout << "Version " << VERSION << std::endl << g_szIdStr << std::endl; #else std::cout << "Unknown version number\n"; #endif - return (0); - case O_HELP: - case '?': - pj2if_usage(argv[0]); - return (0); - default: - pj2if_usage(argv[0]); - return (1); - } + return (0); + case O_HELP: + case '?': + pj2if_usage(argv[0]); + return (0); + default: + pj2if_usage(argv[0]); + return (1); + } } - + if (argc - optind != 2) { pj2if_usage(argv[0]); return (1); @@ -117,16 +109,14 @@ pj2if_main (const int argc, char *const argv[]) return (1); } - if (optDump) - pj.printProjectionData(); - else if (optVerbose) { + if (optVerbose) { std::ostringstream os; pj.printScanInfo (os); std::cout << os.str(); } - + ImageFile im (pj.nDet(), pj.nView()); - + ImageFileArray v = im.getArray(); for (int iy = 0; iy < pj.nView(); iy++) { @@ -140,13 +130,13 @@ pj2if_main (const int argc, char *const argv[]) im.labelAdd (pj.getLabel()); im.labelAdd (Array2dFileLabel::L_HISTORY, "Conversion from .pj to .if", timerProgram.timerEnd()); im.fileWrite (im_name); - + return(0); } #ifndef NO_MAIN -int +int main (const int argc, char *const argv[]) { int retval = 1; @@ -154,9 +144,9 @@ main (const int argc, char *const argv[]) try { retval = pj2if_main(argc, argv); } catch (exception e) { - cerr << "Exception: " << e.what() << std::endl; + std::cerr << "Exception: " << e.what() << std::endl; } catch (...) { - cerr << "Unknown exception\n"; + std::cerr << "Unknown exception\n"; } return (retval);