bool SLine::readProperties(const QDomElement& e) { if (Element::readProperties(e)) return true; const QString& tag(e.tagName()); const QString& val(e.text()); int i = val.toInt(); if (tag == "tick2") // obsolete __setTick2(score()->fileDivision(i)); else if (tag == "tick") // obsolete __setTick1(score()->fileDivision(i)); else if (tag == "Segment") { LineSegment* ls = createLineSegment(); ls->read(e); add(ls); } else if (tag == "track") setTrack(i); else if (tag == "length") setLen(val.toDouble()); else if (tag == "diagonal") setDiagonal(i); else if (tag == "anchor") setAnchor(Anchor(i)); else return false; return true; }
TextLine::TextLine(Score* s) : SLine(s) { _beginText = 0; _continueText = 0; _beginHookHeight = Spatium(1.5); _endHookHeight = Spatium(1.5); _beginHook = false; _endHook = false; _beginHookType = HOOK_90; _endHookType = HOOK_90; _lineWidth = Spatium(0.15); _lineStyle = Qt::SolidLine; _beginTextPlace = PLACE_LEFT; _continueTextPlace = PLACE_LEFT; _lineColor = Qt::black; _mxmlOff2 = 0; _beginSymbol = -1; _continueSymbol = -1; _endSymbol = -1; setLen(spatium() * 7); // for use in palettes _sp = 0; }
/// <summary> /// Remove existing hardware breakpoint /// </summary> /// <param name="ptr">Breakpoint address</param> /// <returns>true on success</returns> bool Thread::RemoveHWBP( ptr_t ptr ) { _CONTEXT64 context64 = { 0 }; _CONTEXT32 context32 = { 0 }; bool use64 = !_core->native()->GetWow64Barrier().x86OS; bool res = use64 ? GetContext( context64, CONTEXT64_DEBUG_REGISTERS, true ) : GetContext( context32, CONTEXT_DEBUG_REGISTERS, true ); auto pDR7 = use64 ? reinterpret_cast<regDR7*>(&context64.Dr7) : reinterpret_cast<regDR7*>(&context32.Dr7); if (!res) return false; // Search for breakpoint for (int i = 0; i < 4; i++) { if ((&context64.Dr0)[i] == ptr || (&context32.Dr0)[i] == static_cast<DWORD>(ptr)) { use64 ? *(&context64.Dr0 + i) = 0 : *(&context32.Dr0 + i) = 0; pDR7->setLocal( i, 0 ); pDR7->setLen( i, 0 ); pDR7->setRW( i, 0 ); if (pDR7->empty()) pDR7->l_enable = 0; return use64 ? SetContext( context64 ) : SetContext( context32 ); } } return false; }
Trill::Trill(Score* s) : SLine(s) { _accidental = 0; setLen(spatium() * 7); // for use in palettes setYoff(-1.0); // default position }
bool SLine::readProperties(XmlReader& e) { const QStringRef& tag(e.name()); if (tag == "tick2") // obsolete __setTick2(score()->fileDivision(e.readInt())); else if (tag == "tick") // obsolete __setTick1(score()->fileDivision(e.readInt())); else if (tag == "Segment") { LineSegment* ls = createLineSegment(); ls->read(e); add(ls); } else if (tag == "length") setLen(e.readDouble()); else if (tag == "diagonal") setDiagonal(e.readInt()); else if (tag == "anchor") setAnchor(Anchor(e.readInt())); else if (Element::readProperties(e)) ; else return false; return true; }
/// <summary> /// Add hardware breakpoint to thread /// </summary> /// <param name="addr">Breakpoint address</param> /// <param name="type">Breakpoint type(read/write/execute)</param> /// <param name="length">Number of bytes to include into breakpoint</param> /// <returns>Index of used breakpoint; -1 if failed</returns> int Thread::AddHWBP( ptr_t addr, HWBPType type, HWBPLength length ) { _CONTEXT64 context64 = { 0 }; _CONTEXT32 context32 = { 0 }; bool use64 = !_core->native()->GetWow64Barrier().x86OS; // CONTEXT_DEBUG_REGISTERS can be operated without thread suspension bool res = use64 ? GetContext( context64, CONTEXT64_DEBUG_REGISTERS, true ) : GetContext( context32, CONTEXT_DEBUG_REGISTERS, true ); auto pDR7 = use64 ? reinterpret_cast<regDR7*>(&context64.Dr7) : reinterpret_cast<regDR7*>(&context32.Dr7); if (!res) return -1; // Get free DR int freeIdx = pDR7->getFreeIndex(); // If all 4 registers are occupied - error if (freeIdx < 0) { LastNtStatus( STATUS_NO_MORE_ENTRIES ); return -1; } // Enable corresponding HWBP and local BP flag pDR7->l_enable = 1; pDR7->setLocal( freeIdx, 1 ); pDR7->setRW( freeIdx, static_cast<char>(type) ); pDR7->setLen( freeIdx, static_cast<char>(length) ); use64 ? *(&context64.Dr0 + freeIdx) = addr : *(&context32.Dr0 + freeIdx) = static_cast<DWORD>(addr); // Write values to registers res = use64 ? SetContext( context64, true ) : SetContext( context32, true ); return res ? freeIdx : -1; }
Animation::Animation(const char *name, int pin, bool is_buzzer) : Resource(name, pin), _len(0), _loop(true), _play(true), _delay(100), _buzzer(is_buzzer) { memset(_frames, 0, sizeof(_frames)); pinMode(pin, OUTPUT); setLen(1); }
Packet_v1::Packet_v1(field_t componentId, field_t requestId) :Packet() { setProtoVersion(PROTOV1); setLen(PROTOV1_START_OF_DATA); setComponentId(componentId); setRequestId(requestId); }
/// <summary> /// Remove existing hardware breakpoint /// </summary> /// <param name="idx">Breakpoint index</param> /// <returns>true on success</returns> bool Thread::RemoveHWBP( int idx ) { if (idx < 0 || idx > 4) return false; _CONTEXT64 context64 = { 0 }; _CONTEXT32 context32 = { 0 }; bool use64 = !_core->native()->GetWow64Barrier().x86OS; bool res = use64 ? GetContext( context64, CONTEXT64_DEBUG_REGISTERS, true ) : GetContext( context32, CONTEXT_DEBUG_REGISTERS, true ); auto pDR7 = use64 ? reinterpret_cast<regDR7*>(&context64.Dr7) : reinterpret_cast<regDR7*>(&context32.Dr7); if (!res) return false; pDR7->setLocal( idx, 0 ); pDR7->setLen( idx, 0 ); pDR7->setRW( idx, 0 ); if (pDR7->empty()) pDR7->l_enable = 0; return use64 ? SetContext( context64 ) : SetContext( context32 ); }
int VUMeter::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QWidget::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: overThreshold(); break; case 1: underThreshold(); break; case 2: dtmfCode((*reinterpret_cast< char*(*)>(_a[1]))); break; case 3: setVU((*reinterpret_cast< int(*)>(_a[1]))); break; case 4: setLen((*reinterpret_cast< int(*)>(_a[1]))); break; case 5: setFileLen((*reinterpret_cast< int(*)>(_a[1]))); break; case 6: showRecord(); break; case 7: hideRecord(); break; case 8: showPlayback(); break; case 9: updateThresholdTimer(); break; } _id -= 10; } return _id; }
DiamondAoE::DiamondAoE(const Cell* center, int len) : SquareAoE(center) { setLen(len); }
BombsCounter::BombsCounter() : bombX("bombx.png") { setLen(2); }