static void atbr (struct uart * uart) { clearcommand (); insert ('A'); insert ('T'); insert ('B'); insert ('R'); decode (&uart->mode, sizeof (uart->mode)); insert (','); uart->baudrate = HTOBE64 (uart->baudrate); decode (&uart->baudrate, sizeof (uart->baudrate)); uart->baudrate = BE64TOH (uart->baudrate); insert (','); decode (&uart->databits, sizeof (uart->databits)); insert (','); decode (&uart->parity, sizeof (uart->parity)); insert (','); decode (&uart->stopbits, sizeof (uart->stopbits)); insert (','); decode (&uart->flowctrl, sizeof (uart->flowctrl)); insert ('\r'); sendcommand (&uart->port, uart->flags); readcommand (&uart->port, uart->flags); mustbe ('O'); mustbe ('K'); mustbe ('\r'); return; }
static void at_wake (struct uart * uart) { clearcommand (); insert ('+'); insert ('+'); insert ('+'); sendcommand (&uart->port, uart->flags); readcommand (&uart->port, uart->flags); mustbe ('O'); mustbe ('K'); mustbe ('\r'); return; }
void ConfParameterIterator::next () { mustbe (hasNext ()); // // if (_useInitParameters) { _useInitParameters = false; } else { // // next options _it.next (); } _updated = false; }
Preprocessor* SeedSearcherMain::PreprocessorFactory::createPreprocessor ( PrepType prepType, const SequenceDB& db, const SeqWeightFunction& wf, const Langauge& langauge, int featureLength, bool useReverse, bool removeNegatives ) { AutoPtr <Preprocessor> prep; if (prepType == _prep_leaf_) { LeafPreprocessor::Rep* rep; if (removeNegatives) { rep = LeafPreprocessor::buildNoNegatives ( featureLength, db, langauge, wf ); } else { rep = LeafPreprocessor::build ( featureLength, db, langauge ); } prep = new LeafPreprocessor (rep); } else { mustbe (prepType == _prep_tree_); PrefixTreePreprocessor::TreeRep* rep = PrefixTreePreprocessor::build ( removeNegatives, wf, db, langauge, featureLength); prep = new PrefixTreePreprocessor (rep); } return prep.release (); }
int binarysearch(int number) { int mid, start = 0, end = LEN -1; assert(is_sorted()); while(start <= end){ assert(mustbe(start, end,number)); mid = (start +end)/2; if(a[mid] < number) start = mid + 1; else if(a[mid] > number) end = mid - 1; else{ assert(mid >= start && mid <= end); return mid; } } assert(!contains(number)); return -1; }
int bsearch(int number) { int mid = 0; int start = 0; int end = LEN - 1; while (start <= end) { assert(mustbe(start, end, number)); mid = (start + end) / 2; if (a[mid] < number) { start = mid + 1; } else if (a[mid] > number) { end = mid - 1; } else if (a[mid] == number) { while (a[mid - 1] == number) { mid--; } return mid; } } return -1; }
int binarysearch(int number) { int mid, start = 0, end = LEN - 1; assert(is_sorted()); /* Precondition */ while (start <= end) { assert(mustbe(start, end, number)); /* Maintenance */ mid = (start + end) / 2; if (a[mid] < number) start = mid + 1; else if (a[mid] > number) end = mid - 1; else { assert(mid >= start && mid <= end && a[mid] == number); /* Postcondition 1 */ return mid; } } assert(!contains(number)); /* Postcondition 2 */ return -1; }
int bsearch(int number) { int mid = 0; int start = 0; int end = LEN - 1; assert(is_sorted()); while (start <= end) { assert(mustbe(start, end, number)); mid = (start + end) / 2; if (a[mid] < number) { start = mid + 1; } else if (a[mid] > number) { end = mid - 1; } else { assert(mid >= start && mid <= end && a[mid] == number); return mid; } } assert(contains(number)); return -1; }