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 ();
}
Exemple #5
0
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;
}
Exemple #6
0
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;
}
Exemple #7
0
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;
}
Exemple #8
0
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;
}