equal
deleted
inserted
replaced
14 |
14 |
15 /*****************************************************************************/ |
15 /*****************************************************************************/ |
16 |
16 |
17 #define DEFAULT_MASTER 0 |
17 #define DEFAULT_MASTER 0 |
18 #define DEFAULT_COMMAND "slaves" |
18 #define DEFAULT_COMMAND "slaves" |
19 #define DEFAULT_SLAVESPEC "" |
19 #define DEFAULT_SLAVEPOSITION -1 |
20 |
20 |
21 static unsigned int masterIndex = DEFAULT_MASTER; |
21 static unsigned int masterIndex = DEFAULT_MASTER; |
22 static int slavePosition = -1; |
22 static int slavePosition = DEFAULT_SLAVEPOSITION; |
23 static string command = DEFAULT_COMMAND; |
23 static string command = DEFAULT_COMMAND; |
24 |
24 |
25 /*****************************************************************************/ |
25 /*****************************************************************************/ |
26 |
26 |
27 void printUsage() |
27 void printUsage() |
32 << " list (ls, slaves) List all slaves (former 'lsec')." << endl |
32 << " list (ls, slaves) List all slaves (former 'lsec')." << endl |
33 << " pdos List Pdo mapping of given slaves." << endl |
33 << " pdos List Pdo mapping of given slaves." << endl |
34 << "Global options:" << endl |
34 << "Global options:" << endl |
35 << " --master -m <master> Index of the master to use. Default: " |
35 << " --master -m <master> Index of the master to use. Default: " |
36 << DEFAULT_MASTER << endl |
36 << DEFAULT_MASTER << endl |
37 << " --slave -s <slave> Numerical ring position. Default: All " |
37 << " --slave -s <slave> Positive numerical ring position," |
38 "slaves." << endl |
38 << endl |
|
39 << " or 'all' for all slaves. Default: 'all'." |
|
40 << endl |
39 << " --help -h Show this help." << endl; |
41 << " --help -h Show this help." << endl; |
40 } |
42 } |
41 |
43 |
42 /*****************************************************************************/ |
44 /*****************************************************************************/ |
43 |
45 |
67 } |
69 } |
68 masterIndex = number; |
70 masterIndex = number; |
69 break; |
71 break; |
70 |
72 |
71 case 's': |
73 case 's': |
72 number = strtoul(optarg, &remainder, 0); |
74 if (!strcmp(optarg, "all")) { |
73 if (remainder == optarg || *remainder |
75 slavePosition = -1; |
74 || number < 0 || number > 0xFFFF) { |
76 } else { |
75 cerr << "Invalid slave position " << optarg << "!" << endl; |
77 number = strtoul(optarg, &remainder, 0); |
76 printUsage(); |
78 if (remainder == optarg || *remainder |
77 exit(1); |
79 || number < 0 || number > 0xFFFF) { |
|
80 cerr << "Invalid slave position " |
|
81 << optarg << "!" << endl; |
|
82 printUsage(); |
|
83 exit(1); |
|
84 } |
|
85 slavePosition = number; |
78 } |
86 } |
79 slavePosition = number; |
|
80 break; |
87 break; |
81 |
88 |
82 case 'h': |
89 case 'h': |
83 case '?': |
90 case '?': |
84 printUsage(); |
91 printUsage(); |