Changeset 8111 for lang/cplusplus
- Timestamp:
- 03/19/08 02:15:52 (5 years ago)
- Location:
- lang/cplusplus/gainer++
- Files:
-
- 2 modified
-
gainer-button.cc (modified) (1 diff)
-
gainer.cc (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/cplusplus/gainer++/gainer-button.cc
r8110 r8111 42 42 std::cerr << "process_next_event" << std::endl; 43 43 //gainer->process_next_event(); 44 gainer->peek_analog_inputs(); 44 //gainer->peek_analog_inputs(); 45 gainer->peek_digital_inputs(); 45 46 usleep(100000); 46 47 /* -
lang/cplusplus/gainer++/gainer.cc
r8110 r8111 153 153 on_released(); 154 154 break; 155 case 'I': // analog_input 155 case 'I': { // analog_input 156 std::string::size_type ast(event.find('*')); 157 std::string nums(event.substr(1, ast-1)); 158 std::cout << nums << std::endl; 156 159 for (int i(1); ; i++) { 157 160 char ch(event[i]); … … 162 165 } 163 166 break; 164 case 'R': // digital input165 for (int i(1); ; i++) {166 char ch(event[i]);167 if (isdigit(ch) or ('A' <= ch and 'F' >= ch))168 digital_inputs[i-1] = ch-'0';169 else170 break;171 }167 } 168 case 'R': { // digital input 169 std::string::size_type ast(event.find('*')); 170 std::stringstream ss(event.substr(1, ast-1)); 171 int num; 172 ss >> std::hex >> num; 173 for (size_t i(0); i<digital_inputs.size(); i++) 174 digital_inputs[i] = num & (1<<i); 172 175 break; 176 } 173 177 default: 174 178 break;
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)