コード例 #1
0
void MmiAngleScreen::setCursorDown()
{
  if (0 != mmi() && (0 != mmi()->lcdKeypad()))
  {
    mmi()->lcdKeypad()->setBackLightOn(false);
  }
}
コード例 #2
0
void MmiAccelScreen::setCursorUp()
{
  if (0 != mmi())
  {
    mmi()->lcdKeypad()->setBackLightOn(true);
  }
}
コード例 #3
0
void MmiAngleScreen::setCursorLeft()
{
  if((0 != mmi()) && (0 != mmi()->adapter()))
  {
    mmi()->adapter()->resetAngles();
  }
}
コード例 #4
0
void LintillaMmiHomeScreen::setCursorDown()
{
  if (0 != mmi())
  {
    mmi()->setBackLightOn(false);
  }
}
コード例 #5
0
void LintillaMmiHomeScreen::setCursorUp()
{
  if (0 != mmi())
  {
    mmi()->setBackLightOn(true);
  }
}
コード例 #6
0
ファイル: MarkerStorage.cpp プロジェクト: Dalboz/molap
void MarkerStorage::addMarker(const IdentifiersType& key)
{
	const uint32_t* path = &key[0];
	const int16_t* perm = permutations;

	MarkerMappingIterator mmi(numberDimensions, permutations, maps, path, dimensions);

	ICellSet *pMarkerSet = markerSet.get();
	do {
		if (!maps && !dimensions) {
			for (size_t i = 0; i < numberDimensions; i++, perm++) {
				if (*perm != FIXED_ELEMENT) {
					tmpKeyBuffer[i] = path[*perm];
				}
			}
		} else {
			if (!mmi.init()) {
				// no combination -> return
				return;
			}
			// generate all combinations
			for (size_t targetDim = 0; targetDim < numberDimensions; targetDim++) {
				int16_t sourceDim = permutations[targetDim];
				if (sourceDim != FIXED_ELEMENT) {
					tmpKeyBuffer[targetDim] = mmi[targetDim];
				}
			}

			++mmi; // next combination
		}

		pMarkerSet->set(tmpKeyBuffer);
	} while (!mmi.isEndOfCombinations());
}
コード例 #7
0
void MmiAngleScreen::updateDisplay()
{
  if ((0 != mmi()) && (0 != mmi()->lcdKeypad()) && (0 != mmi()->adapter()))
  {
    mmi()->adapter()->sampleAngles();

    //-------------------------------------------
    // LCD Display Line 1
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 0);

    mmi()->lcdKeypad()->print("Y:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getYawAngle(), 1);
    mmi()->lcdKeypad()->print("\337"); // print the degree character °
    mmi()->lcdKeypad()->print("                ");

    //-------------------------------------------
    // LCD Display Line 2
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 1);

    mmi()->lcdKeypad()->print("P:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getPitchAngle(), 0);
    mmi()->lcdKeypad()->print("\337"); // print the degree character °
    mmi()->lcdKeypad()->print(" - R:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getRollAngle(), 0);
    mmi()->lcdKeypad()->print("\337"); // print the degree character °
    mmi()->lcdKeypad()->print("           ");
  }
}
コード例 #8
0
void MmiMagnScreen::updateDisplay()
{
  if ((0 != mmi()) && (0 != mmi()->lcdKeypad()) && (0 != mmi()->adapter()))
  {
    mmi()->adapter()->sampleMagn();

    //-------------------------------------------
    // LCD Display Line 1
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 0);

    mmi()->lcdKeypad()->print("X:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getXMagn(), 0);
    //mmi()->lcdKeypad()->print("g"); // print g Unit
    mmi()->lcdKeypad()->print("                ");

    //-------------------------------------------
    // LCD Display Line 2
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 1);

    mmi()->lcdKeypad()->print("Y:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getYMagn(), 0);
    //mmi()->lcdKeypad()->print("g"); // print g Unit
    mmi()->lcdKeypad()->print(" Z:");
    mmi()->lcdKeypad()->print(mmi()->adapter()->getZMagn(), 0);
    //mmi()->lcdKeypad()->print("g"); // print g Unit
    mmi()->lcdKeypad()->print("           ");
  }
}
コード例 #9
0
void LintillaMmiHomeScreen::updateDisplay()
{
  if ((0 != mmi()) && (0 != mmi()->lcdKeypad()) && (0 != mmi()->adapter()) && (0 != mmi()->displayBlanking()))
  {
    //-------------------------------------------
    // LCD Display Line 1
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 0);

    mmi()->lcdKeypad()->print("Dst:");
    if (mmi()->adapter()->isFrontDistSensLimitExceeded())
    {
      mmi()->lcdKeypad()->print("infin ");
    }
    else
    {
      unsigned long frontDistanceCM = mmi()->adapter()->getFrontDistanceCM();
      mmi()->lcdKeypad()->print(frontDistanceCM > 99 ? "" : frontDistanceCM > 9 ? " " : "  ");
      mmi()->lcdKeypad()->print(frontDistanceCM);
      mmi()->lcdKeypad()->print("cm ");
    }

    if (mmi()->displayBlanking()->isSignalBlanked() && (mmi()->adapter()->isBattVoltageBelowWarnThreshold()))
    {
      mmi()->lcdKeypad()->print("      ");
    }
    else
    {
      mmi()->lcdKeypad()->print("B:");
      mmi()->lcdKeypad()->print(mmi()->adapter()->getBatteryVoltage());
      mmi()->lcdKeypad()->print("[V]");
    }

    //-------------------------------------------
    // LCD Display Line 2
    //-------------------------------------------
    mmi()->lcdKeypad()->setCursor(0, 1);

    if (!mmi()->adapter()->isWlanConnected())
    {
      mmi()->lcdKeypad()->print("Connecting WiFi ");
    }
    else if (mmi()->lcdKeypad()->isUpKey() || (4 != mmi()->adapter()->getDeviceId()))
    {
      uint32_t currentIpAddress = mmi()->adapter()->getCurrentIpAddress();
      // IP Address presentation: either on up key pressed or always on robots not having ID = 4
      mmi()->lcdKeypad()->print((uint8_t)(currentIpAddress >> 24));
      mmi()->lcdKeypad()->print('.');
      mmi()->lcdKeypad()->print((uint8_t)(currentIpAddress >> 16));
      mmi()->lcdKeypad()->print('.');
      mmi()->lcdKeypad()->print((uint8_t)(currentIpAddress >>  8));
      mmi()->lcdKeypad()->print('.');
      mmi()->lcdKeypad()->print((uint8_t)(currentIpAddress));
      mmi()->lcdKeypad()->print("                 ");
    }