void EFX::calculatePoint(Function::Direction direction, int startOffset, qreal iterator, qreal* x, qreal* y) const { iterator = calculateDirection(direction, iterator); iterator += convertOffset(startOffset + m_startOffset); if (iterator >= M_PI * 2.0) iterator -= M_PI * 2.0; calculatePoint(iterator, x, y); }
void EFX::calculatePoint(Function::Direction direction, int startOffset, float iterator, float* x, float* y) const { iterator = calculateDirection(direction, iterator); iterator += convertOffset(startOffset + getAttributeValue(StartOffset)); if (iterator >= M_PI * 2.0) iterator -= M_PI * 2.0; calculatePoint(iterator, x, y); }
String Location::key(unsigned flags) const { if (isNull()) return String(); int extra = 0; const int off = offset(); int line = 0, col = 0; if (flags & Location::Padded) { extra = 7; } else if (flags & Location::ShowLineNumbers && convertOffset(line, col)) { extra = RTags::digits(line) + RTags::digits(col) + 3; } else { flags &= ~Location::ShowLineNumbers; extra = RTags::digits(off) + 1; } String ctx; if (flags & Location::ShowContext) { ctx += '\t'; ctx += context(); extra += ctx.size(); } const Path p = path(); String ret(p.size() + extra, '0'); if (flags & Location::Padded) { snprintf(ret.data(), ret.size() + extra + 1, "%s,%06d%s", p.constData(), off, ctx.constData()); } else if (flags & Location::ShowLineNumbers) { snprintf(ret.data(), ret.size() + extra + 1, "%s:%d:%d:%s", p.constData(), line, col, ctx.constData()); } else { snprintf(ret.data(), ret.size() + extra + 1, "%s,%d%s", p.constData(), off, ctx.constData()); } return ret; }
void main(void) { /* Configure the oscillator for the device */ ConfigureOscillator(); /* Initialize I/O and Peripherals for application */ InitApp(); resetCS(); startCSConversion(); line1(); writeLCD("START CALIBRATION"); calibration(); writeRegister(MODE, 0x00006000); writeRegister(VOLTAGE_GAIN, 0x2F9000); writeRegister(CURRENT_GAIN, 0x3Fe0000); startCSConversion(); while (1) { uint24_t status = readRegister(STATUS_REG); line2(); if (!(status & 0x1)) { convertExe(status); writeLCD(buffer); resetCS(); startCSConversion(); continue; } double readVal; const char * measure; switch (showStatus) { case ssConf: data.lData = readRegister(showStatus); sprintf(buffer, "%02X%02X%02X ", data.bytes[2], data.bytes[1], data.bytes[0]); measure = "CONF "; break; case ssCycleCount: data.lData = readRegister(showStatus); sprintf(buffer, "%d ", data.lData); measure = "CYCLE "; break; case ssStatus: data.lData = readRegister(showStatus); sprintf(buffer, "%02X%02X%02X ", data.bytes[2], data.bytes[1], data.bytes[0]); measure = "STATUS "; break; case ssMode: data.lData = readRegister(showStatus); sprintf(buffer, "%02X%02X%02X ", data.bytes[2], data.bytes[1], data.bytes[0]); measure = "MODE "; break; case ssTemperature: data.lData = readRegister(showStatus); sprintf(buffer, "%02X%02X%02X ", data.bytes[2], data.bytes[1], data.bytes[0]); measure = "TEMP "; break; case ssCurrentGain: data.lData = readRegister(showStatus); readVal = convertCurrentGain(data.lData); measure = "I GAIN "; sprintf(buffer, "%f ", readVal); break; case ssVoltageOffset: data.lData = readRegister(showStatus); readVal = convertOffset(data.lData); measure = "VDC offset"; sprintf(buffer, "%f ", readVal); break; case ssVoltageGain: data.lData = readRegister(showStatus); readVal = convertCurrentGain(data.lData); measure = "V GAIN "; sprintf(buffer, "%f ", readVal); break; case ssVoltageAcOffset: data.lData = readRegister(showStatus); readVal = convertOffset(data.lData); measure = "VAC offset"; sprintf(buffer, "%f ", readVal); break; case ssCurrent: data.lData = readRegister(showStatus); readVal = convertCurrent(data.lData); measure = "CURRENT "; sprintf(buffer, "%f ", readVal); break; case ssVolt: data.lData = readRegister(INST_VOLT); readVal = convertInstVolt(data.lData); measure = "VOLT "; sprintf(buffer, "%f ", readVal); break; case ssRMSVoltage: data.lData = readRegister(ssRMSVoltage); readVal = convertRMSVolt(data.lData); sprintf(buffer, "%f ", readVal); measure = "RMS VOLT"; break; case ssRMSCurrent: data.lData = readRegister(ssRMSCurrent); readVal = convertRMSCurrent(data.lData); sprintf(buffer, "%f ", readVal); measure = "RMS I"; break; case ssPower: data.lData = readRegister(INST_POWER); readVal = convertPower(data.lData); measure = "I POWER "; sprintf(buffer, "%f ", readVal); break; case ssActivePower: data.lData = readRegister(ssActivePower); readVal = convertPower(data.lData); measure = "I POWER "; sprintf(buffer, "%f ", readVal); break; default: data.lData = readRegister(showStatus); sprintf(buffer, "%02X%02X%02X ", data.bytes[2], data.bytes[1], data.bytes[0]); measure = " "; break; } line1(); writeLCD(buffer); line2(); writeLCD(measure); if (PORTBbits.RB2 == 0) { if (PORTBbits.RB2 == 0) { showStatus++; if (showStatus == ssLast) { showStatus = ssConf; } while (1) { if (PORTBbits.RB2 == 1) { if (PORTBbits.RB2 == 1) { break; } } } } } } }