equal
deleted
inserted
replaced
40 use strict; |
40 use strict; |
41 use Getopt::Std; |
41 use Getopt::Std; |
42 |
42 |
43 my $master_index; |
43 my $master_index; |
44 my $master_dir; |
44 my $master_dir; |
|
45 my $show_sii_desc; |
45 |
46 |
46 #------------------------------------------------------------------------------ |
47 #------------------------------------------------------------------------------ |
47 |
48 |
48 &get_options; |
49 &get_options; |
49 &query_master; |
50 &query_master; |
83 $slave = {}; |
84 $slave = {}; |
84 $slave->{'ring_position'} = |
85 $slave->{'ring_position'} = |
85 &read_integer("$slave_dir/ring_position"); |
86 &read_integer("$slave_dir/ring_position"); |
86 $slave->{'coupler_address'} = |
87 $slave->{'coupler_address'} = |
87 &read_string("$slave_dir/coupler_address"); |
88 &read_string("$slave_dir/coupler_address"); |
88 $slave->{'vendor_name'} = |
89 unless ($show_sii_desc) { |
89 &read_string("$slave_dir/vendor_name"); |
90 $slave->{'vendor_name'} = |
90 $slave->{'product_name'} = |
91 &read_string("$slave_dir/vendor_name"); |
91 &read_string("$slave_dir/product_name"); |
92 $slave->{'product_name'} = |
92 $slave->{'product_desc'} = |
93 &read_string("$slave_dir/product_name"); |
93 &read_string("$slave_dir/product_desc"); |
94 $slave->{'product_desc'} = |
|
95 &read_string("$slave_dir/product_desc"); |
|
96 } |
|
97 else { |
|
98 $slave->{'sii_desc'} = |
|
99 &read_string("$slave_dir/sii_desc"); |
|
100 } |
94 $slave->{'type'} = |
101 $slave->{'type'} = |
95 &read_string("$slave_dir/type"); |
102 &read_string("$slave_dir/type"); |
96 |
103 |
97 push @slaves, $slave; |
104 push @slaves, $slave; |
98 } |
105 } |
105 if ($slave->{'type'} eq "coupler") { |
112 if ($slave->{'type'} eq "coupler") { |
106 print "--------------------------------------------------------\n"; |
113 print "--------------------------------------------------------\n"; |
107 } |
114 } |
108 |
115 |
109 $abs = sprintf "%i", $slave->{'ring_position'}; |
116 $abs = sprintf "%i", $slave->{'ring_position'}; |
110 printf(" %3s %8s %-12s %-10s %s\n", $abs, |
117 printf(" %3s %8s ", $abs, $slave->{'coupler_address'}); |
111 $slave->{'coupler_address'}, $slave->{'vendor_name'}, |
118 unless ($show_sii_desc) { |
112 $slave->{'product_name'}, $slave->{'product_desc'}); |
119 printf("%-12s %-10s %s\n", $slave->{'vendor_name'}, |
|
120 $slave->{'product_name'}, $slave->{'product_desc'}); |
|
121 } |
|
122 else { |
|
123 printf("%s\n", $slave->{'sii_desc'}); |
|
124 } |
113 } |
125 } |
114 } |
126 } |
115 |
127 |
116 #------------------------------------------------------------------------------ |
128 #------------------------------------------------------------------------------ |
117 |
129 |
149 sub get_options |
161 sub get_options |
150 { |
162 { |
151 my %opt; |
163 my %opt; |
152 my $optret; |
164 my $optret; |
153 |
165 |
154 $optret = getopts "m:h", \%opt; |
166 $optret = getopts "m:sh", \%opt; |
155 |
167 |
156 &print_usage if defined $opt{'h'} or $#ARGV > -1; |
168 &print_usage if defined $opt{'h'} or $#ARGV > -1 or !$optret; |
157 |
169 |
158 if (defined $opt{'m'}) { |
170 if (defined $opt{'m'}) { |
159 $master_index = $opt{'m'}; |
171 $master_index = $opt{'m'}; |
160 } |
172 } |
161 else { |
173 else { |
162 $master_index = 0; |
174 $master_index = 0; |
163 } |
175 } |
|
176 |
|
177 $show_sii_desc = defined $opt{'s'}; |
164 } |
178 } |
165 |
179 |
166 #------------------------------------------------------------------------------ |
180 #------------------------------------------------------------------------------ |
167 |
181 |
168 sub print_usage |
182 sub print_usage |
169 { |
183 { |
170 print "Usage: ec_list [OPTIONS]\n"; |
184 print "Usage: ec_list [OPTIONS]\n"; |
171 print " -m <IDX> Query master IDX.\n"; |
185 print " -m <IDX> Query master <IDX>.\n"; |
|
186 print " -s Show SII slave description instead of"; |
|
187 print " vendor/product/description.\n"; |
172 print " -h Show this help.\n"; |
188 print " -h Show this help.\n"; |
173 exit 0; |
189 exit 0; |
174 } |
190 } |
175 |
191 |
176 #------------------------------------------------------------------------------ |
192 #------------------------------------------------------------------------------ |