libgig  3.3.0.19svn2660
RIFF.h File Reference
#include <string>
#include <list>
#include <map>
#include <iostream>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdint.h>
#include <stdio.h>

Go to the source code of this file.

Classes

class  RIFF::Chunk
 Ordinary RIFF Chunk. More...
 
class  RIFF::List
 RIFF List Chunk. More...
 
class  RIFF::File
 RIFF File. More...
 
class  RIFF::Exception
 Will be thrown whenever an error occurs while handling a RIFF file. More...
 

Namespaces

 RIFF
 RIFF specific classes and definitions.
 

Macros

#define POSIX   1
 
#define DEBUG   0
 
#define CHUNK_ID_RIFF   0x46464952
 
#define CHUNK_ID_RIFX   0x58464952
 
#define CHUNK_ID_LIST   0x5453494C
 
#define LIST_TYPE_INFO   0x4F464E49
 
#define CHUNK_ID_ICMT   0x544D4349
 
#define CHUNK_ID_ICOP   0x504F4349
 
#define CHUNK_ID_ICRD   0x44524349
 
#define CHUNK_ID_IENG   0x474E4549
 
#define CHUNK_ID_INAM   0x4D414E49
 
#define CHUNK_ID_IPRD   0x44525049
 
#define CHUNK_ID_ISFT   0x54465349
 
#define CHUNK_ID_SMPL   0x6C706D73
 
#define CHUNK_HEADER_SIZE   8
 
#define LIST_HEADER_SIZE   12
 
#define RIFF_HEADER_SIZE   12
 

Typedefs

typedef std::string RIFF::String
 

Enumerations

enum  RIFF::stream_mode_t { RIFF::stream_mode_read = 0, RIFF::stream_mode_read_write = 1, RIFF::stream_mode_closed = 2 }
 Whether file stream is open in read or in read/write mode. More...
 
enum  RIFF::stream_state_t { RIFF::stream_ready = 0, RIFF::stream_end_reached = 1, RIFF::stream_closed = 2 }
 Current state of the file stream. More...
 
enum  RIFF::stream_whence_t { RIFF::stream_start = 0, RIFF::stream_curpos = 1, RIFF::stream_backward = 2, RIFF::stream_end = 3 }
 File stream position dependent to these relations. More...
 
enum  RIFF::endian_t { RIFF::endian_little = 0, RIFF::endian_big = 1, RIFF::endian_native = 2 }
 Alignment of data bytes in memory (system dependant). More...
 
enum  RIFF::layout_t { RIFF::layout_standard = 0, RIFF::layout_flat = 1 }
 General chunk structure of a file. More...
 

Functions

String RIFF::libraryName ()
 Returns the name of this C++ library. More...
 
String RIFF::libraryVersion ()
 Returns version of this C++ library. More...
 

Macro Definition Documentation

#define CHUNK_ID_ICMT   0x544D4349

Definition at line 98 of file RIFF.h.

Referenced by sf2::Info::Info(), DLS::Info::Info(), and DLS::Info::UpdateChunks().

#define CHUNK_ID_ICOP   0x504F4349

Definition at line 99 of file RIFF.h.

Referenced by sf2::Info::Info(), DLS::Info::Info(), and DLS::Info::UpdateChunks().

#define CHUNK_ID_ICRD   0x44524349

Definition at line 100 of file RIFF.h.

Referenced by sf2::Info::Info(), DLS::Info::Info(), and DLS::Info::UpdateChunks().

#define CHUNK_ID_IENG   0x474E4549

Definition at line 101 of file RIFF.h.

Referenced by sf2::Info::Info(), DLS::Info::Info(), and DLS::Info::UpdateChunks().

#define CHUNK_ID_INAM   0x4D414E49
#define CHUNK_ID_IPRD   0x44525049

Definition at line 103 of file RIFF.h.

Referenced by sf2::Info::Info(), DLS::Info::Info(), and DLS::Info::UpdateChunks().

#define CHUNK_ID_ISFT   0x54465349
#define CHUNK_ID_RIFF   0x46464952
#define CHUNK_ID_RIFX   0x58464952

Definition at line 94 of file RIFF.h.

Referenced by RIFF::File::File(), RIFF::Chunk::ReadHeader(), and RIFF::Chunk::WriteHeader().

#define CHUNK_ID_SMPL   0x6C706D73

Definition at line 106 of file RIFF.h.

Referenced by sf2::File::File(), gig::Sample::Sample(), and gig::Sample::UpdateChunks().

#define DEBUG   0

Definition at line 36 of file RIFF.h.

#define LIST_HEADER_SIZE   12
#define LIST_TYPE_INFO   0x4F464E49
#define POSIX   1

Definition at line 32 of file RIFF.h.

#define RIFF_HEADER_SIZE   12

Definition at line 112 of file RIFF.h.

Referenced by RIFF::File::File(), and RIFF::File::Save().