include/CaptureCmdLine.h File Reference

Go to the source code of this file.

Data Structures

struct  _sCmdLineArgs

Defines

#define MAX_LEN   256

Typedefs

typedef _sCmdLineArgs sCmdLineArgs
typedef _sCmdLineArgspsCmdLineArgs

Functions

int ParseCommandLine (int argc, char *argv[], psCmdLineArgs pCmdLineArgs)


Define Documentation

#define MAX_LEN   256


Typedef Documentation

typedef struct _sCmdLineArgs * psCmdLineArgs

Command line arguments structure.

typedef struct _sCmdLineArgs sCmdLineArgs

Command line arguments structure.


Function Documentation

int ParseCommandLine ( int  argc,
char *  argv[],
psCmdLineArgs  pCmdLineArgs 
)

Implementation of ParseCommandLine.

00028 {
00029    int c = 0;
00030    int is_valid = 0;
00031 
00032    while((c = getopt(argc, argv, "c:d:h:i:np:r:w:j:tz:l")) != -1)
00033    {
00034       switch(c)
00035       {
00036          case 'c':
00037             memset(pCmdLineArgs->cropping, 0, MAX_LEN);
00038             memcpy(pCmdLineArgs->cropping, optarg, strlen(optarg));
00039             break;
00040          case 'd':
00041             memset(pCmdLineArgs->device, 0, MAX_LEN);
00042             memcpy(pCmdLineArgs->device, optarg, strlen(optarg));
00043             break;
00044          case 'h':
00045             memset(pCmdLineArgs->output_height, 0, MAX_LEN);
00046             memcpy(pCmdLineArgs->output_height, optarg, strlen(optarg));
00047             break;
00048          case 'i':
00049             memset(pCmdLineArgs->output_io, 0, MAX_LEN);
00050             memcpy(pCmdLineArgs->output_io, optarg, strlen(optarg));
00051             break;
00052          case 'n':
00053             pCmdLineArgs->nonblocking = 1;
00054             break;
00055          case 'p':
00056             memset(pCmdLineArgs->output_pixfmt, 0, MAX_LEN);
00057             memcpy(pCmdLineArgs->output_pixfmt, optarg, strlen(optarg));
00058             break;
00059          case 'r':
00060             memset(pCmdLineArgs->frame_rate, 0, MAX_LEN);
00061             memcpy(pCmdLineArgs->frame_rate, optarg, strlen(optarg));
00062             break;
00063          case 'w':
00064             memset(pCmdLineArgs->output_width, 0, MAX_LEN);
00065             memcpy(pCmdLineArgs->output_width, optarg, strlen(optarg));
00066             break;
00067          case 'j':
00068             sscanf(optarg,"%d",&pCmdLineArgs->capture_count);
00069             break;
00070          case 't':
00071             pCmdLineArgs->timestamp = 1;
00072             break;
00073          case 'z':
00074             memset(pCmdLineArgs->delay, 0, MAX_LEN);
00075             memcpy(pCmdLineArgs->delay, optarg, strlen(optarg));
00076             break;
00077          case 'l':
00078             pCmdLineArgs->livestream = 1;
00079             break;
00080          case'?':
00081             if(optopt == 'c' ||
00082                optopt == 'd' ||
00083                optopt == 'h' ||
00084                optopt == 'i' ||
00085                optopt == 'p' ||
00086                optopt == 'r' ||
00087                optopt == 'w' ||
00088                optopt == 'z')
00089             {
00090                CapError("Option '-%c' required an argument.\n", optopt);
00091             }
00092             break;
00093          default:
00094             return -1;
00095       }
00096    }
00097    return 0;
00098 }


Generated on Fri Jan 20 10:36:57 2017 for Vision Utils by  doxygen 1.4.7