コード例 #1
0
ファイル: RIFFParser.cpp プロジェクト: KDE/kwave
//***************************************************************************
Kwave::RIFFParser::RIFFParser(QIODevice &device,
                              const QStringList &main_chunks,
                              const QStringList &known_subchunks)
    :m_dev(device),
     m_root(0, "", "", toUint32(device.size()), 0, toUint32(device.size())),
     m_main_chunk_names(main_chunks), m_sub_chunk_names(known_subchunks),
     m_endianness(Kwave::UnknownEndian), m_cancel(false)
{
    m_root.setType(Kwave::RIFFChunk::Root);
}
コード例 #2
0
ファイル: Field.c プロジェクト: aivaras16/nitro
NITFPRIV(NITF_BOOL) toUint(nitf_Field * field,
                           NITF_DATA * outData,
                           size_t length, nitf_Error * error)
{
    /*  First we have to figure out what we are storing...
       See, its okay to convert a BCS-N to an int, and...
       its also okay to maintain a binary int...          */
    NITF_BOOL status = NITF_FAILURE;
    if (field->type == NITF_BINARY)
    {
        switch (field->length)
        {
            case 2:
                status = toUint16(field, (nitf_Uint16 *) outData, error);
                break;
            case 4:
                status = toUint32(field, (nitf_Uint32 *) outData, error);
                break;
            case 8:
                status = toUint64(field, (nitf_Uint64 *) outData, error);
                break;
            default:
                nitf_Error_initf(error, NITF_CTXT,
                                 NITF_ERR_INVALID_PARAMETER,
                                 "Unexpected field size for uint [%d]",
                                 field->length);
        }
    }
    else
    {
        status = fromStringToUint(field, outData, length, error);
    }
    return status;
}