From a2d6b9543dfcb832498f2b58b985e159ab85876c Mon Sep 17 00:00:00 2001
From: Kris Burney <burneykb@iastate.edu>
Date: Sat, 3 Dec 2016 17:32:37 -0600
Subject: [PATCH] Added monitor help messages

---
 groundStation/src/cli/cli.c         | 13 +++++--------
 groundStation/src/cli/cli_monitor.c |  7 ++++++-
 groundStation/src/cli/cli_setpid.c  | 14 +++++++++++++-
 3 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/groundStation/src/cli/cli.c b/groundStation/src/cli/cli.c
index bd9e9d648..acec4dbc6 100644
--- a/groundStation/src/cli/cli.c
+++ b/groundStation/src/cli/cli.c
@@ -28,9 +28,9 @@ int main(int argc, char **argv)
 	// Verify the user has entered enough information to continue
 	if (argc < 2 && !useSymlink) {
 		printf("Incorrect usage :\n");
-		printf("\n\tUsage : ./Cli command [options] \n");
-		printf("\tFor a list of available commands run ./Cli --help\n\n");
-		printf("\tFor a list of available options for a command run ./Cli command --help\n");
+		printf("Usage Syntax: \n\t./Cli command [options...]\n\n");
+		printf("For a list of available 'command' names\n\t./Cli --help\n\n");
+		printf("For a list of available options for a 'command'\n\t./Cli command --help\n");
 		return -1;
 	}
 
@@ -41,9 +41,8 @@ int main(int argc, char **argv)
 
 	// If the user runs './Cli help' , provide the user with a list of commands available.
 	if (needCliHelp) {
-		printf("Usage : ./Cli command [options]\n");
-		printf("For a list of available options for a command run ./Cli command --help\n\n");
-		printf("Available commands include the following\n");
+		printf("Usage Syntax: \n\t./Cli command [options...]\n\n");
+		printf("Available 'command' names include the following\n");
 		for(int i = 0; i < MAX_COMMANDS; ++i) {
 			printf("\t '%s'\n",commandNames[i]);
 		}
@@ -67,8 +66,6 @@ int main(int argc, char **argv)
 		return -1;
 	}
 
-	printf("Parsed Command : %s\n", commandNames[cmdID]);
-
 	// Determine if the user called for help on the command
 	if (!useSymlink && argc > 2) {
 		if (strncmp("--help", argv[2], strlen(argv[2])) == 0) {
diff --git a/groundStation/src/cli/cli_monitor.c b/groundStation/src/cli/cli_monitor.c
index 54e81fb5e..f26dfb963 100644
--- a/groundStation/src/cli/cli_monitor.c
+++ b/groundStation/src/cli/cli_monitor.c
@@ -51,7 +51,12 @@ int cli_monitor(struct backend_conn * conn,	int argc, char **argv) {
 	}
 	
 	if (needHelp) {
-		printf("helping you\n");
+		printf("Usage Syntax : \n\t./Cli monitor [options...]\n");
+		printf("Symlink Usage Syntax : \n\t./monitor [options...]\n\n");
+		printf("Available options include the following\n");
+		printf("\t[-f] : Run monitor continuously until you kill the program. (ctrl-C)\n");
+		printf("\t[-c] 'count' : Sets the number of times the monitor will refresh\n");
+		printf("\t[-r] 'rate' : Sets the 'rate' at which the monitor will refresh per second\n");
 		return 0;
 	}
 
diff --git a/groundStation/src/cli/cli_setpid.c b/groundStation/src/cli/cli_setpid.c
index 2fdc16fdb..f2e1a7f98 100644
--- a/groundStation/src/cli/cli_setpid.c
+++ b/groundStation/src/cli/cli_setpid.c
@@ -13,6 +13,7 @@ int cli_setpid(struct backend_conn * conn,	int argc, char **argv) {
 	struct frontend_pid_data pid_data;
 	static int mask;
 	static float pval = 0, ival = 0, dval = 0;
+	static needHelp = 0;
 	static struct option long_options[] = {
  		/* These options don’t set a flag. We distinguish them by their indices. */
  		{"roll",	no_argument,	&setRoll,	1},
@@ -24,6 +25,7 @@ int cli_setpid(struct backend_conn * conn,	int argc, char **argv) {
  		{"height",   no_argument,   &setHeight,	1},
  		{"lat",   no_argument,   	&setLat, 	1},
  		{"long",   no_argument,   	&setLong, 	1},
+ 		{"help",	no_argument,	&needHelp,	1},
  		{0, 0, 0, 0}
  	};
 
@@ -56,7 +58,17 @@ int cli_setpid(struct backend_conn * conn,	int argc, char **argv) {
 		}
 	}
 
-	if(setRoll) {
+	if (needHelp) {
+		printf("Usage Syntax : \n\t./Cli monitor [options...]\n");
+		printf("Symlink Usage Syntax : \n\t./monitor [options...]\n\n");
+		printf("Available options include the following\n");
+		printf("\t[-f] : Run monitor continuously until you kill the program. (ctrl-C)\n");
+		printf("\t[-c] 'count' : Sets the number of times the monitor will refresh\n");
+		printf("\t[-r] 'rate' : Sets the 'rate' at which the monitor will refresh per second\n");
+		return 0;
+	}
+
+	if (setRoll) {
 		pid_data.controller = PID_ROLL;
 	} else if (setYaw) {
 		pid_data.controller = PID_YAW;
-- 
GitLab