Loading .gitignore +1 −0 Original line number Diff line number Diff line build bin include/Home.h +8 −5 Original line number Diff line number Diff line Loading @@ -17,6 +17,11 @@ #define real8 double using namespace std; typedef struct { string name; vector<string> vals; }Var_t; /* * Define a structure containing all items corresponding to * all command line options that have associated values. This Loading @@ -28,8 +33,8 @@ typedef struct { int seed; int type; std::vector<string> inpFiles; std::vector<string> outFiles; vector<string> inpFiles, outFiles; vector<Var_t> priVars; }InArgs_t; /* Loading @@ -56,6 +61,7 @@ typedef enum{ OPT_OUTFILE, OPT_SEED, OPT_TYPE, OPT_PRIVATEVALS, OPT_MAX }OPT_t; Loading Loading @@ -91,7 +97,4 @@ typedef struct { } Table_t; #endif src/CMakeLists.txt +1 −1 Original line number Diff line number Diff line Loading @@ -10,5 +10,5 @@ add_definitions( -DPARALLEL=1) INCLUDE_DIRECTORIES(../include) target_link_libraries(prodata m pthread) Install(TARGETS prodata RUNTIME DESTINATION ${PARADIS_SOURCE_DIR}/bin) RUNTIME DESTINATION ${PRODATA_SOURCE_DIR}/bin) src/Main.cpp +25 −3 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ Option_t optList[OPT_MAX] = { {OPT_INPFILE, "inputfile", 1, 1}, {OPT_OUTFILE, "outfile", 1, 1}, {OPT_SEED, "seed", 3, 1}, {OPT_TYPE, "type", 1, 1} {OPT_TYPE, "type", 1, 1}, {OPT_PRIVATEVALS, "d", 1, 1} }; Loading Loading @@ -169,8 +170,9 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) int i, j, k; char *argName; char *token; Var_t var; string argValue; string argValue, arg; std::vector<string> argValues; for (i = 1; i < argc; i++) { Loading Loading @@ -200,6 +202,7 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) if (j == OPT_MAX) { Usage(argv[0]); printf("1\n"); exit(1); } Loading @@ -209,6 +212,7 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) */ if (optList[j].optPaired) { if (i+1 >= argc) { printf("2\n"); Usage(argv[0]); exit(1); } else { Loading @@ -220,9 +224,9 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) if(i >= argc)break; if(argv[i][0] == '-')break; } i--; } } /* * Do any option-specific processing... */ Loading @@ -242,9 +246,27 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) case OPT_TYPE: inArgs->type = atoi(argValue.c_str()); break; case OPT_PRIVATEVALS: var.name = argName; var.name.erase(0,1); swap(var.vals, argValues); inArgs->priVars.push_back(var); break; default: break; } } printf("Private vars for type %d:\n", inArgs->type); for(i=0; i<inArgs->priVars.size(); i++){ printf("%s: ", inArgs->priVars[i].name.c_str()); for(j=0; j<inArgs->priVars[i].vals.size(); j++){ printf("%s ", inArgs->priVars[i].vals[j].c_str()); } printf("\n"); } return; } Loading Loading
include/Home.h +8 −5 Original line number Diff line number Diff line Loading @@ -17,6 +17,11 @@ #define real8 double using namespace std; typedef struct { string name; vector<string> vals; }Var_t; /* * Define a structure containing all items corresponding to * all command line options that have associated values. This Loading @@ -28,8 +33,8 @@ typedef struct { int seed; int type; std::vector<string> inpFiles; std::vector<string> outFiles; vector<string> inpFiles, outFiles; vector<Var_t> priVars; }InArgs_t; /* Loading @@ -56,6 +61,7 @@ typedef enum{ OPT_OUTFILE, OPT_SEED, OPT_TYPE, OPT_PRIVATEVALS, OPT_MAX }OPT_t; Loading Loading @@ -91,7 +97,4 @@ typedef struct { } Table_t; #endif
src/CMakeLists.txt +1 −1 Original line number Diff line number Diff line Loading @@ -10,5 +10,5 @@ add_definitions( -DPARALLEL=1) INCLUDE_DIRECTORIES(../include) target_link_libraries(prodata m pthread) Install(TARGETS prodata RUNTIME DESTINATION ${PARADIS_SOURCE_DIR}/bin) RUNTIME DESTINATION ${PRODATA_SOURCE_DIR}/bin)
src/Main.cpp +25 −3 Original line number Diff line number Diff line Loading @@ -44,7 +44,8 @@ Option_t optList[OPT_MAX] = { {OPT_INPFILE, "inputfile", 1, 1}, {OPT_OUTFILE, "outfile", 1, 1}, {OPT_SEED, "seed", 3, 1}, {OPT_TYPE, "type", 1, 1} {OPT_TYPE, "type", 1, 1}, {OPT_PRIVATEVALS, "d", 1, 1} }; Loading Loading @@ -169,8 +170,9 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) int i, j, k; char *argName; char *token; Var_t var; string argValue; string argValue, arg; std::vector<string> argValues; for (i = 1; i < argc; i++) { Loading Loading @@ -200,6 +202,7 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) if (j == OPT_MAX) { Usage(argv[0]); printf("1\n"); exit(1); } Loading @@ -209,6 +212,7 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) */ if (optList[j].optPaired) { if (i+1 >= argc) { printf("2\n"); Usage(argv[0]); exit(1); } else { Loading @@ -220,9 +224,9 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) if(i >= argc)break; if(argv[i][0] == '-')break; } i--; } } /* * Do any option-specific processing... */ Loading @@ -242,9 +246,27 @@ static void GetInArgs(int argc, char *argv[], InArgs_t *inArgs) case OPT_TYPE: inArgs->type = atoi(argValue.c_str()); break; case OPT_PRIVATEVALS: var.name = argName; var.name.erase(0,1); swap(var.vals, argValues); inArgs->priVars.push_back(var); break; default: break; } } printf("Private vars for type %d:\n", inArgs->type); for(i=0; i<inArgs->priVars.size(); i++){ printf("%s: ", inArgs->priVars[i].name.c_str()); for(j=0; j<inArgs->priVars[i].vals.size(); j++){ printf("%s ", inArgs->priVars[i].vals[j].c_str()); } printf("\n"); } return; } Loading