00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef CAFEROAST_H
00011 #define CAFEROAST_H
00012
00013
00014 int setAndGet (const unsigned int handleSet, dbr_double_t valSet, dbr_double_t &valGet) {
00015 status=cafeDoppio.setAndGet((unsigned int) handleSet, DBR_DOUBLE, valSet, valGet);
00016 return status;
00017 }
00018 int setAndGet (const unsigned int handleSet, dbr_float_t valSet, dbr_float_t &valGet) {
00019 status=cafeFrappuccino.setAndGet((unsigned int) handleSet, DBR_FLOAT, valSet, valGet);
00020 return status;
00021 }
00022 int setAndGet (const unsigned int handleSet, dbr_char_t valSet, dbr_char_t &valGet) {
00023 status=cafeCappuccino.setAndGet((unsigned int) handleSet, DBR_CHAR, valSet, valGet);
00024 return status;
00025 }
00026 int setAndGet (const unsigned int handleSet, dbr_enum_t valSet, dbr_enum_t &valGet) {
00027 status=cafeEspresso.setAndGet((unsigned int) handleSet, DBR_ENUM, valSet, valGet);
00028 return status;
00029 }
00030 int setAndGet (const unsigned int handleSet, dbr_short_t valSet, dbr_short_t &valGet) {
00031 status=cafeSchale.setAndGet((unsigned int) handleSet, DBR_SHORT, valSet, valGet);
00032 return status;
00033 }
00034 int setAndGet (const unsigned int handleSet, dbr_long_t valSet, dbr_long_t &valGet) {
00035 status=cafeLatte.setAndGet((unsigned int) handleSet, DBR_LONG, valSet, valGet);
00036 return status;
00037 }
00038 int setAndGet (const unsigned int handleSet, long long valSet, long long &valGet) {
00039 double valSetD=valSet; double valGetD=0;
00040 status=cafeDoppio.setAndGet((unsigned int) handleSet, DBR_DOUBLE, valSetD, valGetD);
00041 valGet=(long long) valGetD;
00042 return status;
00043 }
00044 int setAndGet (const unsigned int handleSet, dbr_string_t valSet, dbr_string_t &valGet) {
00045 status=cafeSoluble.setAndGetDbrString((unsigned int) handleSet, valSet, valGet);
00046 return status;
00047 }
00048 int setAndGet (const unsigned int handleSet, std::string valSet, std::string &valGet) {
00049 status=cafeSoluble.setAndGetString((unsigned int) handleSet, valSet, valGet);
00050 return status;
00051 }
00052
00053
00054 int match(dbr_double_t valSet, unsigned int handleMatch,
00055 dbr_double_t tolerance, double timeout, bool printFlag){
00056 return cafeDoppio.match(DBR_DOUBLE, valSet, handleMatch, tolerance, timeout, printFlag);
00057 }
00058
00059
00060 int match(dbr_float_t valSet, unsigned int handleMatch,
00061 dbr_float_t tolerance, double timeout, bool printFlag){
00062 return cafeFrappuccino.match(DBR_FLOAT, valSet, handleMatch, tolerance, timeout, printFlag);
00063 }
00064
00065
00066 int match(dbr_char_t valSet, unsigned int handleMatch,
00067 dbr_char_t tolerance, double timeout, bool printFlag){
00068 return cafeCappuccino.match(DBR_CHAR, valSet, handleMatch, tolerance, timeout, printFlag);
00069 }
00070
00071 int match(dbr_enum_t valSet, unsigned int handleMatch,
00072 dbr_enum_t tolerance, double timeout, bool printFlag){
00073 return cafeEspresso.match(DBR_ENUM, valSet, handleMatch, tolerance, timeout, printFlag);
00074 }
00075
00076 int match(dbr_short_t valSet, unsigned int handleMatch,
00077 dbr_short_t tolerance, double timeout, bool printFlag){
00078 return cafeSchale.match(DBR_SHORT, valSet, handleMatch, tolerance, timeout, printFlag);
00079 }
00080
00081
00082 int match(dbr_long_t valSet, unsigned int handleMatch,
00083 dbr_long_t tolerance, double timeout, bool printFlag){
00084 return cafeLatte.match(DBR_LONG, valSet, handleMatch, tolerance, timeout, printFlag);
00085 }
00086
00087
00088 int match(long long valSet, unsigned int handleMatch,
00089 long long tolerance, double timeout, bool printFlag){
00090 dbr_double_t valSetDouble=valSet;
00091 dbr_double_t toleranceDouble = tolerance;
00092 return cafeDoppio.match(DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00093 }
00094
00095 int match(std::string valSet, unsigned int handleMatch,
00096 std::string tolerance, double timeout, bool printFlag){
00097 #define __METHOD__ "match (string valSet, unsigned int handleMatch,\
00098 string tolerance, double timeout, bool printFlag)"
00099
00100 std::istringstream ss;
00101 dbr_double_t d=0; dbr_double_t valSetDouble=0; dbr_double_t toleranceDouble = 0;
00102 ss.clear();
00103 ss.str(valSet);
00104 ss>>d;
00105
00106 if ( !ss.fail()) {
00107 valSetDouble=d;
00108 }
00109 else {
00110 std::cout << __METHOD__ << __LINE__ << std::endl;
00111 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00112 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00113 std::cout << valSet;
00114 std::cout << " TO DOUBLE!" << std::endl;
00115 return ECAFE_NO_CONVERT;
00116 }
00117 d=0;
00118 ss.clear();
00119 ss.str(tolerance);
00120 ss>>d;
00121
00122 if ( !ss.fail()) {
00123 toleranceDouble=d;
00124 }
00125 else {
00126 std::cout << __METHOD__ << __LINE__ << std::endl;
00127 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00128 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00129 std::cout << tolerance;
00130 std::cout << " TO DOUBLE!" << std::endl;
00131 return ECAFE_NO_CONVERT;
00132 }
00133
00134 return cafeDoppio.match(DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00135 #undef __METHOD__
00136 }
00137
00138
00139
00140 int match(dbr_string_t valSet, unsigned int handleMatch,
00141 dbr_string_t tolerance, double timeout, bool printFlag){
00142 #define __METHOD__ "match (dbr_string_t valSet, unsigned int handleMatch,\
00143 dbr_string_t tolerance, double timeout, bool printFlag)"
00144 std::istringstream ss;
00145 dbr_double_t d=0; dbr_double_t valSetDouble=0; dbr_double_t toleranceDouble = 0;
00146 ss.clear();
00147 ss.str(valSet);
00148 ss>>d;
00149
00150 if ( !ss.fail()) {
00151 valSetDouble=d;
00152 }
00153 else {
00154 std::cout << __METHOD__ << __LINE__ << std::endl;
00155 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00156 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00157 std::cout << valSet;
00158 std::cout << " TO DOUBLE!" << std::endl;
00159 return ECAFE_NO_CONVERT;
00160 }
00161 d=0;
00162 ss.clear();
00163 ss.str(tolerance);
00164 ss>>d;
00165
00166 if ( !ss.fail()) {
00167 toleranceDouble=d;
00168 }
00169 else {
00170 std::cout << __METHOD__ << __LINE__ << std::endl;
00171 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00172 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00173 std::cout << tolerance;
00174 std::cout << " TO DOUBLE!" << std::endl;
00175 return ECAFE_NO_CONVERT;
00176 }
00177
00178 return cafeDoppio.match(DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00179 #undef __METHOD__
00180 }
00181
00182
00183 int matchMany(std::vector<dbr_double_t> valSet, std::vector<unsigned int> handleMatch,
00184 dbr_double_t tolerance, double timeout, bool printFlag){
00185 return cafeDoppio.matchMany(DBR_DOUBLE, valSet, handleMatch, tolerance, timeout, printFlag);
00186 }
00187
00188
00189 int matchMany(std::vector<dbr_float_t> valSet, std::vector<unsigned int> handleMatch,
00190 dbr_float_t tolerance, double timeout, bool printFlag){
00191 return cafeFrappuccino.matchMany(DBR_FLOAT, valSet, handleMatch, tolerance, timeout, printFlag);
00192 }
00193
00194
00195 int matchMany(std::vector<dbr_char_t> valSet, std::vector<unsigned int> handleMatch,
00196 dbr_char_t tolerance, double timeout, bool printFlag){
00197 return cafeCappuccino.matchMany(DBR_CHAR, valSet, handleMatch, tolerance, timeout, printFlag);
00198 }
00199
00200 int matchMany(std::vector<dbr_enum_t> valSet, std::vector<unsigned int> handleMatch,
00201 dbr_enum_t tolerance, double timeout, bool printFlag){
00202 return cafeEspresso.matchMany(DBR_ENUM, valSet, handleMatch, tolerance, timeout, printFlag);
00203 }
00204
00205 int matchMany(std::vector<dbr_short_t> valSet, std::vector<unsigned int> handleMatch,
00206 dbr_short_t tolerance, double timeout, bool printFlag){
00207 return cafeSchale.matchMany(DBR_SHORT, valSet, handleMatch, tolerance, timeout, printFlag);
00208 }
00209
00210
00211 int matchMany(std::vector<dbr_long_t> valSet, std::vector<unsigned int> handleMatch,
00212 dbr_long_t tolerance, double timeout, bool printFlag){
00213 return cafeLatte.matchMany(DBR_LONG, valSet, handleMatch, tolerance, timeout, printFlag);
00214 }
00215
00216
00217 int matchMany(std::vector<long long> valSet, std::vector<unsigned int> handleMatch,
00218 long long tolerance, double timeout, bool printFlag){
00219
00220 std::vector<dbr_double_t> valSetDoubleV;
00221 valSetDoubleV.reserve(valSet.size());
00222
00223 std::copy(valSet.begin(), valSet.end(),
00224 std::back_inserter(valSetDoubleV));
00225
00226 dbr_double_t toleranceDouble = tolerance;
00227
00228 return cafeDoppio.matchMany(DBR_DOUBLE, valSetDoubleV, handleMatch, toleranceDouble, timeout, printFlag);
00229 }
00230
00231 int matchMany(std::vector<std::string> valSetV, std::vector<unsigned int> handleMatchV,
00232 std::string tolerance, double timeout, bool printFlag){
00233 #define __METHOD__ "matchMany (std::vector<string> valSetV, std::vector<unsigned int> handleMatchV, \
00234 string tolerance, double timeout, bool printFlag)"
00235
00236 std::vector<dbr_double_t> valSetDoubleV;
00237
00238 std::istringstream ss;
00239 dbr_double_t d=0; dbr_double_t toleranceDouble = 0;
00240 for (size_t i=0; i< valSetV.size(); ++i) {
00241 d=0;
00242 ss.clear();
00243 ss.str(valSetV[i]);
00244 ss>>d;
00245
00246 if ( !ss.fail()) {
00247 valSetDoubleV.push_back(d);
00248 }
00249 else {
00250 std::cout << __METHOD__ << __LINE__ << std::endl;
00251 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00252 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00253 std::cout << valSetV[i];
00254 std::cout << " TO DOUBLE!" << std::endl;
00255 return ECAFE_NO_CONVERT;
00256 }
00257 }
00258
00259 d=0;
00260 ss.clear();
00261 ss.str(tolerance);
00262 ss>>d;
00263
00264 if ( !ss.fail()) {
00265 toleranceDouble=d;
00266 }
00267 else {
00268 std::cout << __METHOD__ << __LINE__ << std::endl;
00269 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00270 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00271 std::cout << tolerance;
00272 std::cout << " TO DOUBLE!" << std::endl;
00273 return ECAFE_NO_CONVERT;
00274 }
00275
00276 return cafeDoppio.matchMany(DBR_DOUBLE, valSetDoubleV, handleMatchV, toleranceDouble, timeout, printFlag);
00277 #undef __METHOD__
00278 }
00279
00280
00281
00282
00283 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_double_t> valSet, std::vector<unsigned int> handleMatch,
00284 dbr_double_t tolerance, double timeout, bool printFlag){
00285 return cafeDoppio.setAndMatchMany(handleSet, DBR_DOUBLE, valSet, handleMatch, tolerance, timeout, printFlag);
00286 }
00287
00288
00289 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_float_t> valSet, std::vector<unsigned int> handleMatch,
00290 dbr_float_t tolerance, double timeout, bool printFlag){
00291 return cafeFrappuccino.setAndMatchMany(handleSet, DBR_FLOAT, valSet, handleMatch, tolerance, timeout, printFlag);
00292 }
00293
00294
00295 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_char_t> valSet, std::vector<unsigned int> handleMatch,
00296 dbr_char_t tolerance, double timeout, bool printFlag){
00297 return cafeCappuccino.setAndMatchMany(handleSet, DBR_CHAR, valSet, handleMatch, tolerance, timeout, printFlag);
00298 }
00299
00300
00301 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_enum_t> valSet, std::vector<unsigned int> handleMatch,
00302 dbr_enum_t tolerance, double timeout, bool printFlag){
00303 return cafeEspresso.setAndMatchMany(handleSet, DBR_ENUM, valSet, handleMatch, tolerance, timeout, printFlag);
00304 }
00305
00306 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_short_t> valSet, std::vector<unsigned int> handleMatch,
00307 dbr_short_t tolerance, double timeout, bool printFlag){
00308 return cafeSchale.setAndMatchMany(handleSet, DBR_SHORT, valSet, handleMatch, tolerance, timeout, printFlag);
00309 }
00310
00311
00312 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<dbr_long_t> valSet, std::vector<unsigned int> handleMatch,
00313 dbr_long_t tolerance, double timeout, bool printFlag){
00314 return cafeLatte.setAndMatchMany(handleSet, DBR_LONG, valSet, handleMatch, tolerance, timeout, printFlag);
00315 }
00316
00317
00318 int setAndMatchMany(std::vector<unsigned int> handleSet, std::vector<long long> valSet, std::vector<unsigned int> handleMatch,
00319 long long tolerance, double timeout, bool printFlag){
00320
00321 std::vector<dbr_double_t> valSetDoubleV;
00322 valSetDoubleV.reserve(valSet.size());
00323
00324 std::copy(valSet.begin(), valSet.end(),
00325 std::back_inserter(valSetDoubleV));
00326
00327 dbr_double_t toleranceDouble = tolerance;
00328
00329 return cafeDoppio.setAndMatchMany(handleSet, DBR_DOUBLE, valSetDoubleV, handleMatch, toleranceDouble, timeout, printFlag);
00330 }
00331
00332
00333 int setAndMatchMany(std::vector<unsigned int> handleSetV, std::vector<std::string> valSetV, std::vector<unsigned int> handleMatchV,
00334 std::string tolerance, double timeout, bool printFlag){
00335 #define __METHOD__ "setAndMatchMany (std::vector<unsigned int> handleSetV, std::vector<string> valSetV, std::vector<unsigned int> handleMatchV, \
00336 string tolerance, double timeout, bool printFlag)"
00337
00338 std::vector<dbr_double_t> valSetDoubleV;
00339
00340 std::istringstream ss;
00341 dbr_double_t d=0; dbr_double_t toleranceDouble = 0;
00342 for (size_t i=0; i< valSetV.size(); ++i) {
00343 d=0;
00344 ss.clear();
00345 ss.str(valSetV[i]);
00346 ss>>d;
00347
00348 if ( !ss.fail()) {
00349 valSetDoubleV.push_back(d);
00350 }
00351 else {
00352 std::cout << __METHOD__ << __LINE__ << std::endl;
00353 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00354 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00355 std::cout << valSetV[i];
00356 std::cout << " TO DOUBLE!" << std::endl;
00357 return ECAFE_NO_CONVERT;
00358 }
00359 }
00360
00361 d=0;
00362 ss.clear();
00363 ss.str(tolerance);
00364 ss>>d;
00365
00366 if ( !ss.fail()) {
00367 toleranceDouble=d;
00368 }
00369 else {
00370 std::cout << __METHOD__ << __LINE__ << std::endl;
00371 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00372 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00373 std::cout << tolerance;
00374 std::cout << " TO DOUBLE!" << std::endl;
00375 return ECAFE_NO_CONVERT;
00376 }
00377
00378 return cafeDoppio.setAndMatchMany(handleSetV, DBR_DOUBLE, valSetDoubleV, handleMatchV, toleranceDouble, timeout, printFlag);
00379 #undef __METHOD__
00380
00381 }
00382
00383
00384
00385
00386
00387 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_double_t> valSet,
00388 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00389 dbr_double_t tolerance, double timeout, bool printFlag){
00390 cafeDoppio.setMany (handleSet, DBR_DOUBLE, valSet, false);
00391 cafeSoluble.setManyString (handleAction, valAction, false);
00392 return cafeDoppio.compareAndMatchMany(handleSet, DBR_DOUBLE, valSet, handleMatch, tolerance, timeout, printFlag);
00393 }
00394
00395
00396 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_float_t> valSet,
00397 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00398 dbr_float_t tolerance, double timeout, bool printFlag){
00399 cafeFrappuccino.setMany (handleSet, DBR_FLOAT, valSet, false);
00400 cafeSoluble.setManyString (handleAction, valAction, false);
00401 return cafeFrappuccino.compareAndMatchMany(handleSet, DBR_FLOAT, valSet, handleMatch, tolerance, timeout, printFlag);
00402 }
00403
00404
00405 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_char_t> valSet,
00406 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00407 dbr_char_t tolerance, double timeout, bool printFlag){
00408 cafeCappuccino.setMany (handleSet, DBR_CHAR, valSet, false);
00409 cafeSoluble.setManyString (handleAction, valAction, false);
00410 return cafeCappuccino.compareAndMatchMany(handleSet, DBR_CHAR, valSet, handleMatch, tolerance, timeout, printFlag);
00411 }
00412
00413
00414 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_enum_t> valSet,
00415 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00416 dbr_enum_t tolerance, double timeout, bool printFlag){
00417 cafeEspresso.setMany (handleSet, DBR_ENUM, valSet, false);
00418 cafeSoluble.setManyString (handleAction, valAction, false);
00419 return cafeEspresso.compareAndMatchMany(handleSet, DBR_ENUM, valSet, handleMatch, tolerance, timeout, printFlag);
00420 }
00421
00422 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_short_t> valSet,
00423 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00424 dbr_short_t tolerance, double timeout, bool printFlag){
00425 cafeSchale.setMany (handleSet, DBR_SHORT, valSet, false);
00426 cafeSoluble.setManyString (handleAction, valAction, false);
00427 return cafeSchale.compareAndMatchMany(handleSet, DBR_SHORT, valSet, handleMatch, tolerance, timeout, printFlag);
00428 }
00429
00430
00431 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<dbr_long_t> valSet,
00432 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00433 dbr_long_t tolerance, double timeout, bool printFlag){
00434 cafeLatte.setMany (handleSet, DBR_LONG, valSet, false);
00435 cafeSoluble.setManyString (handleAction, valAction, false);
00436 return cafeLatte.compareAndMatchMany(handleSet, DBR_LONG, valSet, handleMatch, tolerance, timeout, printFlag);
00437 }
00438
00439
00440 int gameSetAndMatch(std::vector<unsigned int> handleSet, std::vector<long long> valSet,
00441 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatch,
00442 long long tolerance, double timeout, bool printFlag){
00443
00444 std::vector<dbr_double_t> valSetDoubleV;
00445 valSetDoubleV.reserve(valSet.size());
00446
00447 std::copy(valSet.begin(), valSet.end(),
00448 std::back_inserter(valSetDoubleV));
00449
00450 dbr_double_t toleranceDouble = tolerance;
00451
00452 return gameSetAndMatch(handleSet, valSetDoubleV,
00453 handleAction, valAction, handleMatch, toleranceDouble, timeout, printFlag);
00454 }
00455
00456
00457 int gameSetAndMatch(std::vector<unsigned int> handleSetV, std::vector<std::string> valSetV,
00458 std::vector<unsigned int> handleAction, std::vector<std::string> valAction, std::vector<unsigned int> handleMatchV,
00459 std::string tolerance, double timeout, bool printFlag){
00460 #define __METHOD__ "gameSetAndMatch (std::vector<unsigned int> handleSetV, std::vector<string> valSetV, \
00461 std::vector<unsigned int> handleAction, std::vector<string> valAction, std::vector<unsigned int> handleMatchV, \
00462 string tolerance, double timeout, bool printFlag)"
00463
00464 std::vector<dbr_double_t> valSetDoubleV;
00465
00466 std::istringstream ss;
00467 dbr_double_t d=0; dbr_double_t toleranceDouble = 0;
00468 for (size_t i=0; i< valSetV.size(); ++i) {
00469 d=0;
00470 ss.clear();
00471 ss.str(valSetV[i]);
00472 ss>>d;
00473
00474 if ( !ss.fail()) {
00475 valSetDoubleV.push_back(d);
00476 }
00477 else {
00478 std::cout << __METHOD__ << __LINE__ << std::endl;
00479 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00480 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00481 std::cout << valSetV[i];
00482 std::cout << " TO DOUBLE!" << std::endl;
00483 return ECAFE_NO_CONVERT;
00484 }
00485 }
00486
00487 d=0;
00488 ss.clear();
00489 ss.str(tolerance);
00490 ss>>d;
00491
00492 if ( !ss.fail()) {
00493 toleranceDouble=d;
00494 }
00495 else {
00496 std::cout << __METHOD__ << __LINE__ << std::endl;
00497 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00498 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00499 std::cout << tolerance;
00500 std::cout << " TO DOUBLE!" << std::endl;
00501 return ECAFE_NO_CONVERT;
00502 }
00503
00504 return gameSetAndMatch(handleSetV, valSetDoubleV, handleAction, valAction, handleMatchV, toleranceDouble, timeout, printFlag);
00505 #undef __METHOD__
00506
00507 }
00508
00509
00510
00511
00512
00513
00514
00515 int setAndMatch(const unsigned int handleSet, dbr_double_t valSet, const unsigned int handleMatch,
00516 dbr_double_t tolerance, double timeout, bool printFlag){
00517 return cafeDoppio.setAndMatch(handleSet, DBR_DOUBLE, valSet, handleMatch, tolerance, timeout, printFlag);
00518 }
00519
00520 int setAndMatch(const unsigned int handleSet, dbr_float_t valSet, const unsigned int handleMatch,
00521 dbr_float_t tolerance, double timeout, bool printFlag){
00522 return cafeFrappuccino.setAndMatch(handleSet, DBR_FLOAT, valSet, handleMatch, tolerance, timeout, printFlag);
00523 }
00524
00525 int setAndMatch(const unsigned int handleSet, dbr_char_t valSet, const unsigned int handleMatch,
00526 dbr_char_t tolerance, double timeout, bool printFlag){
00527 return cafeCappuccino.setAndMatch(handleSet, DBR_CHAR, valSet, handleMatch, tolerance, timeout, printFlag);
00528 }
00529
00530 int setAndMatch(const unsigned int handleSet, dbr_enum_t valSet, const unsigned int handleMatch,
00531 dbr_enum_t tolerance, double timeout, bool printFlag){
00532 return cafeEspresso.setAndMatch(handleSet, DBR_ENUM, valSet, handleMatch, tolerance, timeout, printFlag);
00533 }
00534
00535 int setAndMatch(const unsigned int handleSet, dbr_short_t valSet, const unsigned int handleMatch,
00536 dbr_short_t tolerance, double timeout, bool printFlag){
00537 return cafeSchale.setAndMatch(handleSet, DBR_SHORT, valSet, handleMatch, tolerance, timeout, printFlag);
00538 }
00539
00540 int setAndMatch(const unsigned int handleSet, dbr_long_t valSet, const unsigned int handleMatch,
00541 dbr_long_t tolerance, double timeout, bool printFlag){
00542 return cafeLatte.setAndMatch(handleSet, DBR_LONG, valSet, handleMatch, tolerance, timeout, printFlag);
00543 }
00544 int setAndMatch(const unsigned int handleSet, long long valSet, const unsigned int handleMatch,
00545 long long tolerance, double timeout, bool printFlag){
00546 dbr_double_t valSetDouble=valSet;
00547 dbr_double_t toleranceDouble = tolerance;
00548 return cafeDoppio.setAndMatch(handleSet, DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00549 }
00550
00551
00552 int setAndMatch(const unsigned int handleSet, dbr_string_t valSet, const unsigned int handleMatch,
00553 dbr_string_t tolerance, double timeout, bool printFlag){
00554 #define __METHOD__ "setAndMatch (dbr_string_t input)"
00555 std::istringstream ss;
00556 dbr_double_t d=0; dbr_double_t valSetDouble=0; dbr_double_t toleranceDouble = 0;
00557 ss.clear();
00558 ss.str(valSet);
00559 ss>>d;
00560
00561 if ( !ss.fail()) {
00562 valSetDouble=d;
00563 }
00564 else {
00565 std::cout << __METHOD__ << __LINE__ << std::endl;
00566 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00567 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00568 std::cout << valSet;
00569 std::cout << " TO DOUBLE!" << std::endl;
00570 return ECAFE_NO_CONVERT;
00571 }
00572 d=0;
00573 ss.clear();
00574 ss.str(tolerance);
00575 ss>>d;
00576
00577 if ( !ss.fail()) {
00578 toleranceDouble=d;
00579 }
00580 else {
00581 std::cout << __METHOD__ << __LINE__ << std::endl;
00582 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00583 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00584 std::cout << tolerance;
00585 std::cout << " TO DOUBLE!" << std::endl;
00586 return ECAFE_NO_CONVERT;
00587 }
00588
00589 return cafeDoppio.setAndMatch(handleSet, DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00590 #undef __METHOD__
00591 }
00592
00593 int setAndMatch(const unsigned int handleSet, std::string valSet, const unsigned int handleMatch,
00594 std::string tolerance, double timeout, bool printFlag){
00595 #define __METHOD__ "setAndMatch (string input)"
00596 std::istringstream ss;
00597 dbr_double_t d=0; dbr_double_t valSetDouble=0; dbr_double_t toleranceDouble = 0;
00598 ss.clear();
00599 ss.str(valSet);
00600 ss>>d;
00601
00602 if ( !ss.fail()) {
00603 valSetDouble=d;
00604 }
00605 else {
00606 std::cout << __METHOD__ << __LINE__ << std::endl;
00607 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00608 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00609 std::cout << valSet;
00610 std::cout << " TO DOUBLE!" << std::endl;
00611 return ECAFE_NO_CONVERT;
00612 }
00613 d=0;
00614 ss.clear();
00615 ss.str(tolerance);
00616 ss>>d;
00617
00618 if ( !ss.fail()) {
00619 toleranceDouble=d;
00620 }
00621 else {
00622 std::cout << __METHOD__ << __LINE__ << std::endl;
00623 std::cout << "***WARNING*** NO STRING TO DBR_DOUBLE CONVERSION " << std::endl;
00624 std::cout << "***WARNING*** COULD NOT CONVERT: ";
00625 std::cout << tolerance;
00626 std::cout << " TO DOUBLE!" << std::endl;
00627 return ECAFE_NO_CONVERT;
00628 }
00629
00630 return cafeDoppio.setAndMatch(handleSet, DBR_DOUBLE, valSetDouble, handleMatch, toleranceDouble, timeout, printFlag);
00631 #undef __METHOD__
00632 }
00633
00634 #endif // CAFEROAST_H