Index: trunk/ippTools/src/pxtools.h
===================================================================
--- trunk/ippTools/src/pxtools.h	(revision 13564)
+++ trunk/ippTools/src/pxtools.h	(revision 13575)
@@ -32,9 +32,6 @@
 # include "pxdata.h"
 
-// load these values from the db in the init stage
-# define P2_TYPE_OBJECT 1
-# define P2_STATE_READY 2
-# define RECIPE "PHASE2"
 # define MAX_ROWS 10e9
+# define PXTOOL_MODE_NONE 0x0
 
 typedef struct {
@@ -57,3 +54,19 @@
 psExit pxerrorGetExitStatus ();
 
+void pxUsage(FILE *stream, int argc, char **argv, psMetadata *modes);
+void pxUsageMode(FILE *stream, int argc, char **argv, const char *modeName, psMetadata *argSet);
+bool pxGetOptions(FILE *stream, int argc, char **argv, pxConfig *config, psMetadata *modes, psMetadata *argSets);
+
+#define PXTOOL_ADD_MODE(option, comment, modeval, argset) \
+{ \
+    if (!psMetadataAddMetadata(argSets, PS_LIST_TAIL, option, 0, comment, argset)) {;\
+        psError(PS_ERR_UNKNOWN, false, "failed to add argset for %s", option); \
+    } \
+    psFree(argset); \
+\
+    if (!psMetadataAddU32(modes, PS_LIST_TAIL, option, 0, comment, modeval)) {;\
+        psError(PS_ERR_UNKNOWN, false, "failed to add argset for %s", option); \
+    } \
+}
+
 #endif // PXTOOLS_H
