Ejemplo n.º 1
0
/**
 * Write raw string result to the output
 * @param context
 * @param data
 * @return
 */
size_t SCPI_ResultCharacters(scpi_t * context, const char * data, size_t len) {
    size_t result = 0;
    result += writeDelimiter(context);
    result += writeData(context, data, len);
    context->output_count++;
    return result;
}
Ejemplo n.º 2
0
Archivo: parser.c Proyecto: WCP52/gpha
/**
 * Write raw string result to the output
 * @param context
 * @param data
 * @return 
 */
size_t SCPI_ResultString(scpi_t * context, const char * data) {
    size_t len = strlen(data);
    size_t result = 0;
    result += writeDelimiter(context);
    result += writeData(context, data, len);
    context->output_count++;
    return result;
}
Ejemplo n.º 3
0
/**
 * Write raw string result to the output
 * @param context
 * @param data
 * @return
 */
size_t SCPIParser::SCPI_ResultString(const char * data) {
    size_t len = strlen(data);
    size_t result = 0;
    result += writeDelimiter();
    result += writeData(data, len);
    context.output_count++;
    return result;
}
Ejemplo n.º 4
0
/**
 * Write double (64bit) value to the result
 * @param context
 * @param val
 * @return
 */
size_t SCPI_ResultDouble(scpi_t * context, double val) {
    char buffer[32];
    size_t result = 0;
    size_t len = SCPI_DoubleToStr(val, buffer, sizeof (buffer));
    result += writeDelimiter(context);
    result += writeData(context, buffer, len);
    context->output_count++;
    return result;
}
Ejemplo n.º 5
0
Archivo: parser.c Proyecto: WCP52/gpha
/**
 * Write string withn " to the result
 * @param context
 * @param data
 * @return 
 */
size_t SCPI_ResultText(scpi_t * context, const char * data) {
    size_t result = 0;
    result += writeDelimiter(context);
    result += writeData(context, "\"", 1);
    result += writeData(context, data, strlen(data));
    result += writeData(context, "\"", 1);
    context->output_count++;
    return result;
}
Ejemplo n.º 6
0
Archivo: parser.c Proyecto: WCP52/gpha
/**
 * Write integer value to the result
 * @param context
 * @param val
 * @return 
 */
size_t SCPI_ResultInt(scpi_t * context, int32_t val) {
    char buffer[12];
    size_t result = 0;
    size_t len = longToStr(val, buffer, sizeof (buffer));
    result += writeDelimiter(context);
    result += writeData(context, buffer, len);
    context->output_count++;
    return result;
}
Ejemplo n.º 7
0
/**
 * Write string withn " to the result
 * @param context
 * @param data
 * @return
 */
size_t SCPIParser::SCPI_ResultText(const char * data) {
    size_t result = 0;
    result += writeDelimiter();
    result += writeData("\"", 1);
    result += writeData(data, strlen(data));
    result += writeData("\"", 1);
    context.output_count++;
    return result;
}
Ejemplo n.º 8
0
/**
 * Write integer value to the result
 * @param context
 * @param val
 * @return
 */
size_t SCPIParser::SCPI_ResultInt(int32_t val) {
    char buffer[12];
    size_t result = 0;
    size_t len = longToStr(val, buffer, sizeof (buffer));
    result += writeDelimiter();
    result += writeData(buffer, len);
    context.output_count++;
    return result;
}
Ejemplo n.º 9
0
/**
 * Write double walue to the result
 * @param context
 * @param val
 * @return
 */
size_t SCPIParser::SCPI_ResultDouble(double val) {
    char buffer[32];
    size_t result = 0;
    size_t len = doubleToStr(val, buffer, sizeof (buffer));
    result += writeDelimiter();
    result += writeData(buffer, len);
    context.output_count++;
    return result;

}
Ejemplo n.º 10
0
/**
 * Write signed/unsigned 64 bit integer value in specific base to the result
 * @param context
 * @param val
 * @param base
 * @param sign
 * @return
 */
static size_t resultUInt64BaseSign(scpi_t * context, uint64_t val, int8_t base, scpi_bool_t sign) {
    char buffer[64+1];
    const char * basePrefix;
    size_t result = 0;
    size_t len;

    len = UInt64ToStrBaseSign(val, buffer, sizeof (buffer), base, sign);
    basePrefix = getBasePrefix(base);

    result += writeDelimiter(context);
    if (basePrefix != NULL) {
        result += writeData(context, basePrefix, 2);
    }
    result += writeData(context, buffer, len);
    context->output_count++;
    return result;
}
Ejemplo n.º 11
0
/**
 * Write string withn " to the result
 * @param context
 * @param data
 * @return
 */
size_t SCPI_ResultText(scpi_t * context, const char * data) {
    size_t result = 0;
    size_t len = strlen(data);
    const char * quote;
    result += writeDelimiter(context);
    result += writeData(context, "\"", 1);
    while ((quote = strnpbrk(data, len, "\""))) {
        result += writeData(context, data, quote - data + 1);
        result += writeData(context, "\"", 1);
        len -= quote - data + 1;
        data = quote + 1;
    }
    result += writeData(context, data, len);
    result += writeData(context, "\"", 1);
    context->output_count++;
    return result;
}
Ejemplo n.º 12
0
/**
 * Write integer value in specific base to the result
 * @param context
 * @param val
 * @param base
 * @return
 */
size_t SCPI_ResultIntBase(scpi_t * context, int32_t val, int8_t base) {
    char buffer[33];
    const char * basePrefix;
    size_t result = 0;
    size_t len;

    len = SCPI_LongToStr(val, buffer, sizeof (buffer), base);
    basePrefix = getBasePrefix(base);

    result += writeDelimiter(context);
    if (basePrefix != NULL) {
        result += writeData(context, basePrefix, 2);
    }
    result += writeData(context, buffer, len);
    context->output_count++;
    return result;
}