Skip to content
Snippets Groups Projects
Commit 9bec4838 authored by Florian Pose's avatar Florian Pose
Browse files

Added -q flag (quiet).

parent 6ec1fdcd
No related branches found
No related tags found
No related merge requests found
...@@ -209,31 +209,31 @@ void Master::showMaster() ...@@ -209,31 +209,31 @@ void Master::showMaster()
/****************************************************************************/ /****************************************************************************/
void Master::listPdos(int slavePosition) void Master::listPdos(int slavePosition, bool quiet)
{ {
if (slavePosition == -1) { if (slavePosition == -1) {
unsigned int numSlaves = slaveCount(), i; unsigned int numSlaves = slaveCount(), i;
for (i = 0; i < numSlaves; i++) { for (i = 0; i < numSlaves; i++) {
listSlavePdos(i, true); listSlavePdos(i, quiet, true);
} }
} else { } else {
listSlavePdos(slavePosition, false); listSlavePdos(slavePosition, quiet, false);
} }
} }
/****************************************************************************/ /****************************************************************************/
void Master::listSdos(int slavePosition) void Master::listSdos(int slavePosition, bool quiet)
{ {
if (slavePosition == -1) { if (slavePosition == -1) {
unsigned int numSlaves = slaveCount(), i; unsigned int numSlaves = slaveCount(), i;
for (i = 0; i < numSlaves; i++) { for (i = 0; i < numSlaves; i++) {
listSlaveSdos(i, true); listSlaveSdos(i, quiet, true);
} }
} else { } else {
listSlaveSdos(slavePosition, false); listSlaveSdos(slavePosition, quiet, false);
} }
} }
...@@ -390,7 +390,11 @@ void Master::showDomain(unsigned int domainIndex) ...@@ -390,7 +390,11 @@ void Master::showDomain(unsigned int domainIndex)
/****************************************************************************/ /****************************************************************************/
void Master::listSlavePdos(uint16_t slavePosition, bool withHeader) void Master::listSlavePdos(
uint16_t slavePosition,
bool quiet,
bool withHeader
)
{ {
ec_ioctl_slave_t slave; ec_ioctl_slave_t slave;
ec_ioctl_sync_t sync; ec_ioctl_sync_t sync;
...@@ -424,6 +428,9 @@ void Master::listSlavePdos(uint16_t slavePosition, bool withHeader) ...@@ -424,6 +428,9 @@ void Master::listSlavePdos(uint16_t slavePosition, bool withHeader)
<< hex << setfill('0') << setw(4) << pdo.index << hex << setfill('0') << setw(4) << pdo.index
<< " \"" << pdo.name << "\"" << endl; << " \"" << pdo.name << "\"" << endl;
if (quiet)
continue;
for (k = 0; k < pdo.entry_count; k++) { for (k = 0; k < pdo.entry_count; k++) {
getPdoEntry(&entry, slavePosition, i, j, k); getPdoEntry(&entry, slavePosition, i, j, k);
...@@ -440,7 +447,11 @@ void Master::listSlavePdos(uint16_t slavePosition, bool withHeader) ...@@ -440,7 +447,11 @@ void Master::listSlavePdos(uint16_t slavePosition, bool withHeader)
/****************************************************************************/ /****************************************************************************/
void Master::listSlaveSdos(uint16_t slavePosition, bool withHeader) void Master::listSlaveSdos(
uint16_t slavePosition,
bool quiet,
bool withHeader
)
{ {
ec_ioctl_slave_t slave; ec_ioctl_slave_t slave;
ec_ioctl_sdo_t sdo; ec_ioctl_sdo_t sdo;
...@@ -459,6 +470,9 @@ void Master::listSlaveSdos(uint16_t slavePosition, bool withHeader) ...@@ -459,6 +470,9 @@ void Master::listSlaveSdos(uint16_t slavePosition, bool withHeader)
<< hex << setfill('0') << setw(4) << sdo.sdo_index << hex << setfill('0') << setw(4) << sdo.sdo_index
<< ", \"" << sdo.name << "\"" << endl; << ", \"" << sdo.name << "\"" << endl;
if (quiet)
continue;
for (j = 0; j <= sdo.max_subindex; j++) { for (j = 0; j <= sdo.max_subindex; j++) {
getSdoEntry(&entry, slavePosition, i, j); getSdoEntry(&entry, slavePosition, i, j);
......
...@@ -47,16 +47,16 @@ class Master ...@@ -47,16 +47,16 @@ class Master
void showDomains(int); void showDomains(int);
void listSlaves(); void listSlaves();
void showMaster(); void showMaster();
void listPdos(int); void listPdos(int, bool = false);
void listSdos(int); void listSdos(int, bool = false);
void requestStates(int, const vector<string> &); void requestStates(int, const vector<string> &);
void generateXml(int); void generateXml(int);
protected: protected:
void outputDomainData(unsigned int); void outputDomainData(unsigned int);
void showDomain(unsigned int); void showDomain(unsigned int);
void listSlavePdos(uint16_t, bool = false); void listSlavePdos(uint16_t, bool = false, bool = false);
void listSlaveSdos(uint16_t, bool = false); void listSlaveSdos(uint16_t, bool = false, bool = false);
void generateSlaveXml(uint16_t); void generateSlaveXml(uint16_t);
unsigned int domainCount(); unsigned int domainCount();
unsigned int slaveCount(); unsigned int slaveCount();
......
...@@ -25,6 +25,7 @@ static int slavePosition = DEFAULT_SLAVEPOSITION; ...@@ -25,6 +25,7 @@ static int slavePosition = DEFAULT_SLAVEPOSITION;
static int domainIndex = DEFAULT_DOMAININDEX; static int domainIndex = DEFAULT_DOMAININDEX;
static string command = DEFAULT_COMMAND; static string command = DEFAULT_COMMAND;
vector<string> commandArgs; vector<string> commandArgs;
static bool quiet = false;
/*****************************************************************************/ /*****************************************************************************/
...@@ -53,6 +54,7 @@ void printUsage() ...@@ -53,6 +54,7 @@ void printUsage()
<< endl << endl
<< " or 'all' for all domains (default)." << " or 'all' for all domains (default)."
<< endl << endl
<< " --quiet -q Show less output." << endl
<< " --help -h Show this help." << endl; << " --help -h Show this help." << endl;
} }
...@@ -68,12 +70,13 @@ void getOptions(int argc, char **argv) ...@@ -68,12 +70,13 @@ void getOptions(int argc, char **argv)
{"master", required_argument, NULL, 'm'}, {"master", required_argument, NULL, 'm'},
{"slave", required_argument, NULL, 's'}, {"slave", required_argument, NULL, 's'},
{"domain", required_argument, NULL, 'd'}, {"domain", required_argument, NULL, 'd'},
{"quiet", no_argument, NULL, 'q'},
{"help", no_argument, NULL, 'h'}, {"help", no_argument, NULL, 'h'},
{} {}
}; };
do { do {
c = getopt_long(argc, argv, "m:s:d:h", longOptions, &optionIndex); c = getopt_long(argc, argv, "m:s:d:qh", longOptions, &optionIndex);
switch (c) { switch (c) {
case 'm': case 'm':
...@@ -117,6 +120,10 @@ void getOptions(int argc, char **argv) ...@@ -117,6 +120,10 @@ void getOptions(int argc, char **argv)
} }
break; break;
case 'q':
quiet = true;
break;
case 'h': case 'h':
case '?': case '?':
printUsage(); printUsage();
...@@ -163,9 +170,9 @@ int main(int argc, char **argv) ...@@ -163,9 +170,9 @@ int main(int argc, char **argv)
} else if (command == "master") { } else if (command == "master") {
master.showMaster(); master.showMaster();
} else if (command == "pdos") { } else if (command == "pdos") {
master.listPdos(slavePosition); master.listPdos(slavePosition, quiet);
} else if (command == "sdos") { } else if (command == "sdos") {
master.listSdos(slavePosition); master.listSdos(slavePosition, quiet);
} else if (command == "state") { } else if (command == "state") {
master.requestStates(slavePosition, commandArgs); master.requestStates(slavePosition, commandArgs);
} else if (command == "xml") { } else if (command == "xml") {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment