Changeset 24143
- Timestamp:
- May 12, 2009, 7:17:26 AM (17 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/types/psArguments.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/types/psArguments.h
r13582 r24143 78 78 ); 79 79 80 /** Macro to implement some generic command line arguments. A package- 81 * specific routine called pkgnameVersionLong() is presumed to exist. 82 */ 83 #define PSARGUMENTS_INSTANTIATE_GENERICS( pkgname, config, argc, argv ) \ 84 { int N= psArgumentGet (argc, argv, "-version"); \ 85 if (N) { \ 86 psString version; \ 87 version = pkgname ## VersionLong(); \ 88 fprintf (stdout, "%s\n", version); \ 89 psFree (version); \ 90 version = psModulesVersionLong(); \ 91 fprintf (stdout, "%s\n", version); \ 92 psFree (version); \ 93 version = psLibVersionLong(); \ 94 fprintf (stdout, "%s\n", version); psFree (version); \ 95 exit (0); \ 96 } \ 97 N = psArgumentGet(argc, argv, "-dumpconfig"); \ 98 if (N) { \ 99 if (N<argc-1) { \ 100 psArgumentRemove(N, &argc, argv); \ 101 psMetadataAddStr(config->arguments, \ 102 PS_LIST_TAIL, "DUMP_CONFIG", PS_META_REPLACE, \ 103 "Filename for configuration dump", argv[N]); \ 104 psArgumentRemove(N, &argc, argv); \ 105 } \ 106 else { \ 107 fprintf(stderr,"-dumpconfig requires a filename argument\n"); \ 108 exit(-1); \ 109 } \ 110 } \ 111 } 112 113 /** Macro to implement handling of '-threads' argument. A package- 114 * specific routine called pkgnameSetThreads(int nThreads) is 115 * presumed to exist. 116 */ 117 #define PSARGUMENTS_INSTANTIATE_THREADSARG( pkgname, config, argc, argv ) \ 118 { int N= psArgumentGet(argc, argv, "-threads"); \ 119 if (N) { \ 120 psArgumentRemove(N, &argc, argv); \ 121 int nThreads = atoi(argv[N]); \ 122 psMetadataAddS32(config->arguments, PS_LIST_TAIL, "NTHREADS", 0, "number of "#pkgname" threads", nThreads); \ 123 psArgumentRemove(N, &argc, argv); \ 124 psThreadPoolInit (nThreads); \ 125 } \ 126 pkgname ## SetThreads(); \ 127 } 128 129 80 130 /// @} 81 131 #endif // #ifndef PS_ARGUMENTS_H
Note:
See TracChangeset
for help on using the changeset viewer.
