X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttv%2Flttv%2Fsync%2Fsync_chain.h;h=5d10a08bf6b696178351b2e7043df4b8ba8b792c;hb=b670bb7cf8ff6e781462434a2273e47e055e54db;hp=852e8e4a0ad855f448f6ee210e3dd23534ca0541;hpb=2f07659468ff3427bb3923cdc5a7ec61b6e8bbce;p=lttv.git diff --git a/lttv/lttv/sync/sync_chain.h b/lttv/lttv/sync/sync_chain.h index 852e8e4a..5d10a08b 100644 --- a/lttv/lttv/sync/sync_chain.h +++ b/lttv/lttv/sync/sync_chain.h @@ -43,18 +43,18 @@ typedef struct _SyncState typedef struct { + char shortName; const char* longName; enum { NO_ARG, REQUIRED_ARG, - //OPTIONAL_ARG, // Not yet implemented because not supported by LTTV + OPTIONAL_ARG, HAS_ARG_COUNT // This must be the last field } hasArg; - union - { - bool present; - const char* arg; - }; + bool present; + // in the case of OPTIONAL_ARG, arg can be initialized to a default value. + // If an argument is present, arg will be modified + const char* arg; const char* optionHelp; const char* argHelp; } ModuleOption; @@ -65,11 +65,13 @@ extern GQueue matchingModules; extern GQueue analysisModules; extern GQueue moduleOptions; +void printStats(SyncState* const syncState); void timeDiff(struct timeval* const end, const struct timeval* const start); gint gcfCompareProcessing(gconstpointer a, gconstpointer b); gint gcfCompareMatching(gconstpointer a, gconstpointer b); gint gcfCompareAnalysis(gconstpointer a, gconstpointer b); +void gfAppendAnalysisName(gpointer data, gpointer user_data); #endif