BOOL sentStrategyRobotPosition(unsigned char status, unsigned int x, unsigned int y, int angleInDeciDegree) { OutputStream* debugOutputStream = getOutputStreamLogger(INFO); appendString(debugOutputStream, "sentStrategyRobotPosition:"); OutputStream* outputStream = getDriverRequestOutputStream(); append(outputStream, COMMAND_STRATEGY_SET_ROBOT_POSITION); appendHex2(outputStream, status); appendSeparator(outputStream); appendHex4(outputStream, x); appendSeparator(outputStream); appendHex4(outputStream, y); appendSeparator(outputStream); appendHex4(outputStream, angleInDeciDegree); appendStringAndDec(debugOutputStream, "status=", status); appendStringAndDec(debugOutputStream, ", x=", x); appendStringAndDec(debugOutputStream, ", y=", y); appendStringAndDec(debugOutputStream, ", angle=", angleInDeciDegree); println(debugOutputStream); BOOL result = transmitFromDriverRequestBuffer(); return result; }
void deviceColorSensorHandleRawData(unsigned char commandHeader, InputStream* inputStream, OutputStream* outputStream, OutputStream* notificationOutputStream) { if (commandHeader == COMMAND_COLOR_SENSOR_READ) { ackCommand(outputStream, COLOR_SENSOR_DEVICE_HEADER, COMMAND_COLOR_SENSOR_READ); Color* color = colorSensor->colorSensorReadValue(colorSensor); appendHex4(outputStream, color->R); appendSeparator(outputStream); appendHex4(outputStream, color->G); appendSeparator(outputStream); appendHex4(outputStream, color->B); } else if (commandHeader == COMMAND_COLOR_SENSOR_READ_TYPE) { ackCommand(outputStream, COLOR_SENSOR_DEVICE_HEADER, COMMAND_COLOR_SENSOR_READ_TYPE); enum ColorType colorType = colorSensor->colorSensorFindColorType(colorSensor); appendHex2(outputStream, colorType); } else if (commandHeader == COMMAND_COLOR_SENSOR_DEBUG) { ackCommand(outputStream, COLOR_SENSOR_DEVICE_HEADER, COMMAND_COLOR_SENSOR_DEBUG); OutputStream* debugOutputStream = getInfoOutputStreamLogger(); printColorSensorTable(debugOutputStream, colorSensor); } /** Only for PC */ else if (commandHeader == COMMAND_COLOR_SENSOR_WRITE) { ackCommand(outputStream, COLOR_SENSOR_DEVICE_HEADER, COMMAND_COLOR_SENSOR_WRITE); colorSensor->color->R = readHex4(inputStream); checkIsSeparator(inputStream); colorSensor->color->G = readHex4(inputStream); checkIsSeparator(inputStream); colorSensor->color->B = readHex4(inputStream); } }
void notifyAbsolutePositionWithoutHeader(OutputStream* outputStream) { Position* p = getPosition(); appendHexFloat4(outputStream, p->pos.x, 1); appendSeparator(outputStream); appendHexFloat4(outputStream, p->pos.y, 1); appendSeparator(outputStream); appendHexFloat4(outputStream, p->orientation / PI_DIVIDE_1800, 1); }
bool havePathDependencySameAbfType(const AbstractBaseFolder& other) const override { const Zstring& lhs = appendSeparator(baseDirPath); const Zstring& rhs = appendSeparator(static_cast<const NativeBaseFolder&>(other).baseDirPath); const size_t lenMin = std::min(lhs.length(), rhs.length()); return cmpFilePath(lhs.c_str(), lenMin, rhs.c_str(), lenMin) == 0; //note: don't make this an equivalence relation! }
const char* ARMv7DOpcodeAddSubtractImmediate3::format() { appendInstructionName(opName(), !inITBlock()); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rn()); appendSeparator(); appendUnsignedImmediate(immediate3()); return m_formatBuffer; }
const char* ARMv7DOpcodeAddSubtractT1::format() { appendInstructionName(opName(), !inITBlock()); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rn()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; }
const char* ARMv7DOpcodeMiscAddSubSP::format() { appendInstructionName(opName()); appendRegisterName(RegSP); appendSeparator(); appendRegisterName(RegSP); appendSeparator(); appendUnsignedImmediate(immediate7()); return m_formatBuffer; }
const char* ARMv7DOpcodeAddSPPlusImmediate::format() { appendInstructionName("add"); appendRegisterName(rd()); appendSeparator(); appendRegisterName(RegSP); appendSeparator(); appendUnsignedImmediate(immediate8()); return m_formatBuffer; }
const char* ARMv7DOpcodeLoadStoreRegisterOffsetT1::format() { appendInstructionName(opName()); appendRegisterName(rt()); appendSeparator(); appendCharacter('['); appendRegisterName(rn()); appendSeparator(); appendRegisterName(rm()); appendCharacter(']'); return m_formatBuffer; }
const char* ARMv7DOpcodeDataProcessingRegisterT1::format() { appendInstructionName(opName(), inITBlock() && (!(op() == 0x8) || (op() == 0xa) || (op() == 0xb))); appendRegisterName(rdn()); appendSeparator(); appendRegisterName(rm()); if (op() == 0x9) // rsb T1 appendString(", #0"); else if (op() == 0xd) { // mul T1 appendSeparator(); appendRegisterName(rdn()); } return m_formatBuffer; }
const char* ARMv7DOpcodeLoadStoreRegisterSPRelative::format() { appendInstructionName(opName()); appendRegisterName(rt()); appendSeparator(); appendCharacter('['); appendRegisterName(RegSP); if (immediate8()) { appendSeparator(); appendUnsignedImmediate(immediate8() << 2); } appendCharacter(']'); return m_formatBuffer; }
const char* ARMv7DOpcodeGeneratePCRelativeAddress::format() { appendInstructionName("adr"); appendRegisterName(rd()); appendSeparator(); appendPCRelativeOffset(static_cast<int32_t>(immediate8())); return m_formatBuffer; }
const char* ARMv7DOpcodeCompareImmediateT1::format() { appendInstructionName("cmp"); appendRegisterName(rn()); appendSeparator(); appendUnsignedImmediate(immediate8()); return m_formatBuffer; }
const char* ARMv7DOpcodeAddRegisterT2::format() { appendInstructionName("add"); appendRegisterName(rdn()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; }
const char* ARMv7DOpcodeMoveImmediateT1::format() { appendInstructionName("mov", !inITBlock()); appendRegisterName(rd()); appendSeparator(); appendUnsignedImmediate(immediate8()); return m_formatBuffer; }
const char* ARMv7DOpcodeMoveRegisterT1::format() { appendInstructionName("mov"); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; }
const char* ARMv7DOpcodeLoadFromLiteralPool::format() { appendInstructionName("ldr"); appendRegisterName(rt()); appendSeparator(); appendPCRelativeOffset(static_cast<int32_t>(immediate8())); return m_formatBuffer; }
const char* ARMv7DOpcodeCompareRegisterT2::format() { appendInstructionName("compare"); appendRegisterName(rn()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; }
BOOL motionDriverBSplineAbsolute(float x, float y, float angle, float dist0, float dist1, int accelerationFactor, int speedFactor) { OutputStream* outputStream = getDriverRequestOutputStream(); append(outputStream, COMMAND_MOTION_SPLINE_ABSOLUTE); appendHex4(outputStream, x); appendSeparator(outputStream); appendHex4(outputStream, y); appendSeparator(outputStream); appendHex4(outputStream, angle); appendSeparator(outputStream); appendHex2(outputStream, dist0); appendSeparator(outputStream); appendHex2(outputStream, dist1); appendSeparator(outputStream); appendHex(outputStream, accelerationFactor); appendHex(outputStream, speedFactor); BOOL result = transmitFromDriverRequestBuffer(); return result; }
const char* ARMv7DOpcodeLoadStoreRegisterImmediate::format() { const char* instructionName = opName(); if (!instructionName) return defaultFormat(); appendInstructionName(opName()); appendRegisterName(rt()); appendSeparator(); appendCharacter('['); appendRegisterName(rn()); if (immediate5()) { appendSeparator(); appendUnsignedImmediate(immediate5() << scale()); } appendCharacter(']'); return m_formatBuffer; }
const char* ARMv7DOpcodeLogicalImmediateT1::format() { if (!op() && !immediate5()) { // mov T2 appendInstructionName("movs"); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; } appendInstructionName(opName(), !inITBlock()); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rm()); appendSeparator(); appendUnsignedImmediate((op() && !immediate5()) ? 32 : immediate5()); return m_formatBuffer; }
unsigned int appendMotionEndDetectionStatusRegister(OutputStream* outputStream, MotionEndDetectionStatusRegister motionEndDetectionStatusRegister) { if (motionEndDetectionStatusRegister.absAccelerationTooHighThanExpected) { append(outputStream, 'A'); } else { appendSeparator(outputStream); } if (motionEndDetectionStatusRegister.absSpeedTooLowThanExpected) { append(outputStream, 'S'); } else { appendSeparator(outputStream); } if (motionEndDetectionStatusRegister.absUTooHighThanExpected) { append(outputStream, 'U'); } else { appendSeparator(outputStream); } // Length of written chars return 3; }
GeneralMenu::GeneralMenu() : MenuWindow(0, 0, AUTOSIZE, AUTOSIZE) { setColorScheme("generalmenu"); appendItem(_("Change status"), sigc::mem_fun(this, &GeneralMenu::openStatusWindow)); appendItem(_("Accounts..."), sigc::mem_fun(this, &GeneralMenu::openAccountWindow)); appendItem(_("Add buddy..."), sigc::mem_fun(this, &GeneralMenu::openAddBuddyRequest)); appendItem(_("Add chat..."), sigc::mem_fun(this, &GeneralMenu::openAddChatRequest)); appendItem(_("Add group..."), sigc::mem_fun(this, &GeneralMenu::openAddGroupRequest)); appendItem(_("Pending requests..."), sigc::mem_fun(this, &GeneralMenu::openPendingRequests)); appendItem(_("Config options..."), sigc::mem_fun(this, &GeneralMenu::openOptionWindow)); appendItem(_("Plugins..."), sigc::mem_fun(this, &GeneralMenu::openPluginWindow)); appendSeparator(); #ifdef DEBUG MenuWindow *submenu = new MenuWindow(0, 0, AUTOSIZE, AUTOSIZE); submenu->setColorScheme("generalmenu"); submenu->appendItem("Request input", sigc::mem_fun(this, &GeneralMenu::openRequestInputTest)); submenu->appendItem("Request choice", sigc::mem_fun(this, &GeneralMenu::openRequestChoiceTest)); submenu->appendItem("Request action", sigc::mem_fun(this, &GeneralMenu::openRequestActionTest)); submenu->appendItem("Request fields", sigc::mem_fun(this, &GeneralMenu::openRequestFieldsTest)); appendSubMenu("Debug...", *submenu); appendSeparator(); #endif // DEBUG appendItem(_("Quit"), sigc::hide(sigc::mem_fun(CENTERIM, &CenterIM::quit))); }
const char* ARMv7DOpcodeMiscByteHalfwordOps::format() { const char* instructionName = opName(); if (!instructionName) return defaultFormat(); appendInstructionName(instructionName); appendRegisterName(rd()); appendSeparator(); appendRegisterName(rm()); return m_formatBuffer; }
void ARMv7DOpcode::appendRegisterList(unsigned registers) { unsigned numberPrinted = 0; appendCharacter('{'); for (unsigned i = 0; i < 16; i++) { if (registers & (1 << i)) { if (numberPrinted++) appendSeparator(); appendRegisterName(i); } } appendCharacter('}'); }
void BuddyListNode::ContextMenu::appendExtendedMenu() { GList *ll = purple_blist_node_get_extended_menu( parent_node->getPurpleBlistNode()); for (GList *l = ll; l; l = l->next) { PurpleMenuAction *act = reinterpret_cast<PurpleMenuAction*>(l->data); appendMenuAction(*this, act); } if (ll) { // append a separator because there has been some items appendSeparator(); } g_list_free(ll); }
BOOL sendStrategyOpponentRobotPosition(Point* opponentRobotPosition) { OutputStream* debugOutputStream = getOutputStreamLogger(INFO); appendString(debugOutputStream, "sendStrategyOpponentRobotPosition: "); OutputStream* outputStream = getDriverRequestOutputStream(); append(outputStream, COMMAND_STRATEGY_SET_OPPONENT_ROBOT_POSITION); appendHex4(outputStream, opponentRobotPosition->x); appendSeparator(outputStream); appendHex4(outputStream, opponentRobotPosition->y); appendStringAndDec(debugOutputStream, " x=", opponentRobotPosition->x); appendStringAndDec(debugOutputStream, ", y=", opponentRobotPosition->y); println(debugOutputStream); BOOL result = transmitFromDriverRequestBuffer(); return result; }
void BuddyListNode::ContextMenu::appendProtocolMenu(PurpleConnection *gc) { PurplePluginProtocolInfo *prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(purple_connection_get_prpl(gc)); if (!prpl_info || !prpl_info->blist_node_menu) return; GList *ll = prpl_info->blist_node_menu(parent_node->getPurpleBlistNode()); for (GList *l = ll; l; l = l->next) { PurpleMenuAction *act = reinterpret_cast<PurpleMenuAction*>(l->data); appendMenuAction(*this, act); } if (ll) { // append a separator because there has been some items appendSeparator(); } g_list_free(ll); }
//used during folder creation if parent folder is missing Opt<Zstring> getParentFolderPathImpl(const Zstring& itemPathImpl) const override { #ifdef ZEN_WIN //remove trailing separator (even for C:\ root directories) const Zstring itemPathFmt = endsWith(itemPathImpl, FILE_NAME_SEPARATOR) ? beforeLast(itemPathImpl, FILE_NAME_SEPARATOR, IF_MISSING_RETURN_NONE) : itemPathImpl; const Zstring parentDir = beforeLast(itemPathFmt, FILE_NAME_SEPARATOR, IF_MISSING_RETURN_NONE); if (parentDir.empty()) return NoValue(); if (parentDir.size() == 2 && isAlpha(parentDir[0]) && parentDir[1] == L':') return appendSeparator(parentDir); #elif defined ZEN_LINUX || defined ZEN_MAC if (itemPathImpl == "/") return NoValue(); const Zstring parentDir = beforeLast(itemPathImpl, FILE_NAME_SEPARATOR, IF_MISSING_RETURN_NONE); if (parentDir.empty()) return Zstring("/"); #endif return parentDir; }
std::unique_ptr<RecycleSession> createRecyclerSession() const override //throw FileError, return value must be bound! { initComForThread(); //throw FileError assert(supportsRecycleBin(nullptr)); return std::make_unique<RecycleSessionNative>(appendSeparator(baseDirPath)); }