Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

AudioDevice Class Reference

#include <audiodevice.h>

List of all members.

Public Member Functions

 AudioDevice ()
 ~AudioDevice ()
int open_input (AudioInConfig *config, VideoInConfig *vconfig, int rate, int samples)
int open_output (AudioOutConfig *config, int rate, int samples, int realtime)
int open_duplex (AudioOutConfig *config, int rate, int samples, int realtime)
int close_all ()
int reset_output ()
int restart ()
int set_vdevice (VideoDevice *vdevice)
int read_buffer (double **input, int samples, int channels, int *over, double *max, int input_offset=0)
int set_record_dither (int value)
int stop_recording ()
int interrupt_crash ()
int get_dc_offset (int *output, RecordGUIDCOffsetText **dc_offset_text)
int set_dc_offset (int dc_offset, int channel)
int write_buffer (double **output, int samples, int channels=-1)
void run ()
int set_last_buffer ()
int wait_for_startup ()
int wait_for_completion ()
int start_playback ()
int interrupt_playback ()
int set_play_dither (int status)
int set_software_positioning (int status=1)
int64_t current_position ()
int get_interrupted ()
int get_device_buffer ()
AudioLowLevelget_lowlevel_out ()
AudioLowLevelget_lowlevel_in ()

Private Member Functions

int initialize ()
int create_lowlevel (AudioLowLevel *&lowlevel, int driver)
int arm_buffer (int buffer, double **output, int samples, int channels)
int get_obits ()
int get_ochannels ()
int get_ibits ()
int get_ichannels ()
int get_orate ()
int get_irate ()
int get_orealtime ()

Private Attributes

DC_Offsetdc_offset_thread
int in_samplerate
int in_bits
int in_channels
int in_samples
int out_samplerate
int out_bits
int out_channels
int out_samples
int duplex_samplerate
int duplex_bits
int duplex_channels
int duplex_samples
int out_realtime
int duplex_realtime
int r
int w
int d
int osamples
int isamples
int dsamples
VideoDevicevdevice
int record_before_play
Condition * duplex_lock
Condition * startup_lock
int duplex_init
int rec_dither
int play_dither
int sharing
int buffer_size [TOTAL_BUFFERS]
int last_buffer [TOTAL_BUFFERS]
char * buffer [TOTAL_BUFFERS]
char * input_buffer
Sema * play_lock [TOTAL_BUFFERS]
Sema * arm_lock [TOTAL_BUFFERS]
Mutex * timer_lock
int arm_buffer_num
int total_samples
int last_buffer_size
int position_correction
int device_buffer
int last_position
Timer playback_timer
Timer record_timer
int is_playing_back
int is_recording
int global_timer_started
int software_position_info
int interrupt
int driver
AudioLowLevellowlevel_in
AudioLowLevellowlevel_out
AudioLowLevellowlevel_duplex
AudioOutConfigout_config
AudioInConfigin_config
VideoInConfigvconfig
int thread_buffer_num
int thread_result
int64_t total_samples_read

Friends

class AudioALSA
class AudioOSS
class AudioESound
class Audio1394
class VDevice1394
class Device1394Output


Detailed Description

Definition at line 51 of file audiodevice.h.


Constructor & Destructor Documentation

AudioDevice::AudioDevice  ) 
 

Definition at line 30 of file audiodevice.C.

References arm_lock, dc_offset_thread, duplex_lock, in_config, initialize(), out_config, play_lock, startup_lock, timer_lock, TOTAL_BUFFERS, and vconfig.

AudioDevice::~AudioDevice  ) 
 

Definition at line 48 of file audiodevice.C.

References arm_lock, dc_offset_thread, duplex_lock, in_config, out_config, play_lock, startup_lock, timer_lock, TOTAL_BUFFERS, and vconfig.


Member Function Documentation

int AudioDevice::arm_buffer int  buffer,
double **  output,
int  samples,
int  channels
[private]
 

Definition at line 35 of file audioodevice.C.

References arm_lock, buffer, buffer_size, CLAMP, get_obits(), get_ochannels(), interrupt, play_dither, and play_lock.

Referenced by write_buffer().

int AudioDevice::close_all  ) 
 

Definition at line 199 of file audiodevice.C.

References AudioLowLevel::close_all(), d, duplex_init, input_buffer, is_recording, last_buffer_size, lowlevel_duplex, lowlevel_in, lowlevel_out, play_dither, position_correction, r, rec_dither, reset_output(), sharing, software_position_info, vdevice, and w.

Referenced by RecordEngine::close_input_devices(), Record::close_input_devices(), RenderEngine::close_output(), and RecordEngine::close_output_devices().

int AudioDevice::create_lowlevel AudioLowLevel *&  lowlevel,
int  driver
[private]
 

Definition at line 95 of file audiodevice.C.

References Audio1394, AudioALSA, AudioESound, and AudioOSS.

Referenced by open_duplex(), open_input(), and open_output().

int64_t AudioDevice::current_position  ) 
 

Definition at line 283 of file audioodevice.C.

References AudioOutConfig::audio_offset, device_buffer, AudioLowLevel::device_position(), get_irate(), get_lowlevel_out(), get_obits(), get_ochannels(), get_orate(), last_buffer_size, last_position, out_config, playback_timer, r, record_timer, software_position_info, timer_lock, total_samples, total_samples_read, and w.

Referenced by ARender::run(), RenderEngine::session_position(), RenderEngine::sync_position(), and RecordAudio::sync_position().

int AudioDevice::get_dc_offset int *  output,
RecordGUIDCOffsetText **  dc_offset_text
 

Definition at line 14 of file audioidevice.C.

References DC_Offset::calibrate_dc_offset(), dc_offset_thread, and get_ichannels().

Referenced by RecordEngine::get_dc_offset().

int AudioDevice::get_device_buffer  ) 
 

Definition at line 315 of file audiodevice.C.

References device_buffer.

int AudioDevice::get_ibits  )  [private]
 

Definition at line 252 of file audiodevice.C.

References d, duplex_bits, in_bits, and r.

Referenced by read_buffer().

int AudioDevice::get_ichannels  )  [private]
 

Definition at line 245 of file audiodevice.C.

References d, duplex_channels, in_channels, and r.

Referenced by get_dc_offset(), and read_buffer().

int AudioDevice::get_interrupted  ) 
 

Definition at line 310 of file audiodevice.C.

References interrupt.

Referenced by VirtualAConsole::process_buffer().

int AudioDevice::get_irate  )  [private]
 

Definition at line 288 of file audiodevice.C.

References d, duplex_samplerate, in_samplerate, and r.

Referenced by current_position().

AudioLowLevel * AudioDevice::get_lowlevel_in  ) 
 

Definition at line 281 of file audiodevice.C.

References d, lowlevel_duplex, lowlevel_in, and r.

Referenced by read_buffer().

AudioLowLevel * AudioDevice::get_lowlevel_out  ) 
 

Definition at line 274 of file audiodevice.C.

References d, lowlevel_duplex, lowlevel_out, and w.

Referenced by current_position(), interrupt_playback(), and run().

int AudioDevice::get_obits  )  [private]
 

Definition at line 260 of file audiodevice.C.

References d, duplex_bits, out_bits, and w.

Referenced by arm_buffer(), current_position(), and run().

int AudioDevice::get_ochannels  )  [private]
 

Definition at line 267 of file audiodevice.C.

References d, duplex_channels, out_channels, and w.

Referenced by arm_buffer(), current_position(), and run().

int AudioDevice::get_orate  )  [private]
 

Definition at line 303 of file audiodevice.C.

References d, duplex_samplerate, out_samplerate, and w.

Referenced by current_position().

int AudioDevice::get_orealtime  )  [private]
 

Definition at line 295 of file audiodevice.C.

References d, duplex_realtime, out_realtime, and w.

Referenced by start_playback().

int AudioDevice::initialize  )  [private]
 

Definition at line 64 of file audiodevice.C.

References arm_buffer_num, buffer, buffer_size, d, duplex_init, duplex_realtime, input_buffer, interrupt, is_playing_back, is_recording, last_buffer, last_buffer_size, last_position, lowlevel_duplex, lowlevel_in, lowlevel_out, out_realtime, play_dither, position_correction, r, rec_dither, record_before_play, sharing, software_position_info, TOTAL_BUFFERS, total_samples, total_samples_read, vdevice, and w.

Referenced by AudioDevice().

int AudioDevice::interrupt_crash  ) 
 

Definition at line 192 of file audiodevice.C.

References AudioLowLevel::interrupt_crash(), and lowlevel_in.

Referenced by RecordAudio::stop_recording().

int AudioDevice::interrupt_playback  ) 
 

Definition at line 244 of file audioodevice.C.

References arm_lock, get_lowlevel_out(), interrupt, AudioLowLevel::interrupt_playback(), is_playing_back, play_lock, and TOTAL_BUFFERS.

Referenced by RenderEngine::interrupt_playback().

int AudioDevice::open_duplex AudioOutConfig config,
int  rate,
int  samples,
int  realtime
 

Definition at line 171 of file audiodevice.C.

References create_lowlevel(), d, AudioOutConfig::driver, duplex_channels, duplex_init, duplex_realtime, duplex_samplerate, duplex_samples, lowlevel_duplex, AudioLowLevel::open_duplex(), AudioOutConfig::oss_out_channels, playback_timer, and record_timer.

Referenced by Record::open_input_devices().

int AudioDevice::open_input AudioInConfig config,
VideoInConfig vconfig,
int  rate,
int  samples
 

Definition at line 137 of file audiodevice.C.

References VideoInConfig::copy_from(), AudioInConfig::copy_from(), create_lowlevel(), AudioInConfig::driver, duplex_init, in_config, in_samplerate, in_samples, lowlevel_in, AudioLowLevel::open_input(), r, and record_timer.

Referenced by Record::open_input_devices().

int AudioDevice::open_output AudioOutConfig config,
int  rate,
int  samples,
int  realtime
 

Definition at line 155 of file audiodevice.C.

References create_lowlevel(), AudioOutConfig::driver, duplex_init, lowlevel_out, AudioLowLevel::open_output(), out_config, out_realtime, out_samplerate, out_samples, and w.

Referenced by Record::open_input_devices(), and RenderEngine::open_output().

int AudioDevice::read_buffer double **  input,
int  samples,
int  channels,
int *  over,
double *  max,
int  input_offset = 0
 

Definition at line 98 of file audioidevice.C.

References DC_Offset::dc_offset, DC_Offset::dc_offset_count, DC_Offset::dc_offset_lock, dc_offset_thread, DC_Offset::dc_offset_total, duplex_init, duplex_lock, GET_16BIT_SAMPLE_MACRO1, GET_16BIT_SAMPLE_MACRO2, GET_24BIT_SAMPLE_MACRO1, GET_24BIT_SAMPLE_MACRO2, GET_32BIT_SAMPLE_MACRO1, GET_32BIT_SAMPLE_MACRO2, GET_8BIT_SAMPLE_MACRO1, GET_8BIT_SAMPLE_MACRO2, get_ibits(), get_ichannels(), get_lowlevel_in(), GET_PEAK_MACRO, DC_Offset::getting_dc_offset, input_buffer, is_recording, MAXCHANNELS, DC_Offset::progress, AudioLowLevel::read_buffer(), rec_dither, record_before_play, record_timer, and total_samples_read.

Referenced by RecordAudio::run().

int AudioDevice::reset_output  ) 
 

Definition at line 196 of file audioodevice.C.

References arm_buffer_num, arm_lock, buffer, buffer_size, interrupt, is_playing_back, last_buffer, last_buffer_size, last_position, play_dither, play_lock, position_correction, software_position_info, TOTAL_BUFFERS, and total_samples.

Referenced by close_all().

int AudioDevice::restart  ) 
 

void AudioDevice::run  ) 
 

Definition at line 332 of file audioodevice.C.

References arm_lock, buffer, buffer_size, duplex_init, duplex_lock, AudioLowLevel::flush_device(), get_lowlevel_out(), get_obits(), get_ochannels(), interrupt, is_playing_back, last_buffer, last_buffer_size, play_lock, playback_timer, record_before_play, startup_lock, thread_buffer_num, thread_result, timer_lock, TOTAL_BUFFERS, total_samples, and AudioLowLevel::write_buffer().

int AudioDevice::set_dc_offset int  dc_offset,
int  channel
 

Definition at line 20 of file audioidevice.C.

References DC_Offset::dc_offset, and dc_offset_thread.

Referenced by RecordEngine::open_input_devices(), Record::open_input_devices(), and RecordEngine::set_dc_offset().

int AudioDevice::set_last_buffer  ) 
 

Definition at line 20 of file audioodevice.C.

References arm_buffer_num, arm_lock, last_buffer, play_lock, and TOTAL_BUFFERS.

Referenced by ARender::send_last_buffer(), and VirtualAConsole::send_last_output_buffer().

int AudioDevice::set_play_dither int  status  ) 
 

Definition at line 219 of file audioodevice.C.

References play_dither.

int AudioDevice::set_record_dither int  value  ) 
 

Definition at line 7 of file audioidevice.C.

References rec_dither.

Referenced by Record::open_input_devices().

int AudioDevice::set_software_positioning int  status = 1  ) 
 

Definition at line 225 of file audioodevice.C.

References software_position_info.

Referenced by RecordEngine::open_input_devices(), Record::open_input_devices(), RenderEngine::open_output(), and RecordEngine::open_output_devices().

int AudioDevice::set_vdevice VideoDevice vdevice  ) 
 

Definition at line 238 of file audiodevice.C.

Referenced by RecordEngine::open_input_devices(), Record::open_input_devices(), and RenderEngine::open_output().

int AudioDevice::start_playback  ) 
 

Definition at line 231 of file audioodevice.C.

References get_orealtime(), interrupt, is_playing_back, last_position, and playback_timer.

Referenced by RenderEngine::open_output().

int AudioDevice::stop_recording  ) 
 

int AudioDevice::wait_for_completion  ) 
 

Definition at line 275 of file audioodevice.C.

Referenced by ARender::wait_device_completion().

int AudioDevice::wait_for_startup  ) 
 

Definition at line 269 of file audioodevice.C.

References startup_lock.

int AudioDevice::write_buffer double **  output,
int  samples,
int  channels = -1
 

Definition at line 10 of file audioodevice.C.

References arm_buffer(), arm_buffer_num, interrupt, and TOTAL_BUFFERS.

Referenced by VirtualAConsole::process_buffer().


Friends And Related Function Documentation

friend class Audio1394 [friend]
 

Definition at line 60 of file audiodevice.h.

Referenced by create_lowlevel().

friend class AudioALSA [friend]
 

Definition at line 57 of file audiodevice.h.

Referenced by create_lowlevel().

friend class AudioESound [friend]
 

Definition at line 59 of file audiodevice.h.

Referenced by create_lowlevel().

friend class AudioOSS [friend]
 

Definition at line 58 of file audiodevice.h.

Referenced by create_lowlevel().

friend class Device1394Output [friend]
 

Definition at line 62 of file audiodevice.h.

friend class VDevice1394 [friend]
 

Definition at line 61 of file audiodevice.h.


Member Data Documentation

int AudioDevice::arm_buffer_num [private]
 

Definition at line 178 of file audiodevice.h.

Referenced by initialize(), reset_output(), set_last_buffer(), and write_buffer().

Sema* AudioDevice::arm_lock[TOTAL_BUFFERS] [private]
 

Definition at line 176 of file audiodevice.h.

Referenced by arm_buffer(), AudioDevice(), interrupt_playback(), reset_output(), run(), set_last_buffer(), and ~AudioDevice().

char* AudioDevice::buffer[TOTAL_BUFFERS] [private]
 

Definition at line 174 of file audiodevice.h.

Referenced by arm_buffer(), initialize(), reset_output(), and run().

int AudioDevice::buffer_size[TOTAL_BUFFERS] [private]
 

Definition at line 171 of file audiodevice.h.

Referenced by arm_buffer(), initialize(), reset_output(), and run().

int AudioDevice::d [private]
 

Definition at line 152 of file audiodevice.h.

Referenced by close_all(), get_ibits(), get_ichannels(), get_irate(), get_lowlevel_in(), get_lowlevel_out(), get_obits(), get_ochannels(), get_orate(), get_orealtime(), initialize(), and open_duplex().

DC_Offset* AudioDevice::dc_offset_thread [private]
 

Definition at line 144 of file audiodevice.h.

Referenced by AudioDevice(), get_dc_offset(), read_buffer(), set_dc_offset(), and ~AudioDevice().

int AudioDevice::device_buffer [private]
 

Definition at line 182 of file audiodevice.h.

Referenced by current_position(), and get_device_buffer().

int AudioDevice::driver [private]
 

Definition at line 188 of file audiodevice.h.

int AudioDevice::dsamples [private]
 

Definition at line 154 of file audiodevice.h.

int AudioDevice::duplex_bits [private]
 

Definition at line 148 of file audiodevice.h.

Referenced by get_ibits(), and get_obits().

int AudioDevice::duplex_channels [private]
 

Definition at line 148 of file audiodevice.h.

Referenced by get_ichannels(), get_ochannels(), and open_duplex().

int AudioDevice::duplex_init [private]
 

Definition at line 164 of file audiodevice.h.

Referenced by close_all(), initialize(), open_duplex(), open_input(), open_output(), read_buffer(), and run().

Condition* AudioDevice::duplex_lock [private]
 

Definition at line 161 of file audiodevice.h.

Referenced by AudioDevice(), read_buffer(), run(), and ~AudioDevice().

int AudioDevice::duplex_realtime [private]
 

Definition at line 149 of file audiodevice.h.

Referenced by get_orealtime(), initialize(), and open_duplex().

int AudioDevice::duplex_samplerate [private]
 

Definition at line 148 of file audiodevice.h.

Referenced by get_irate(), get_orate(), and open_duplex().

int AudioDevice::duplex_samples [private]
 

Definition at line 148 of file audiodevice.h.

Referenced by open_duplex().

int AudioDevice::global_timer_started [private]
 

Definition at line 186 of file audiodevice.h.

int AudioDevice::in_bits [private]
 

Definition at line 146 of file audiodevice.h.

Referenced by get_ibits().

int AudioDevice::in_channels [private]
 

Definition at line 146 of file audiodevice.h.

Referenced by get_ichannels().

AudioInConfig* AudioDevice::in_config [private]
 

Definition at line 194 of file audiodevice.h.

Referenced by AudioDevice(), open_input(), and ~AudioDevice().

int AudioDevice::in_samplerate [private]
 

Definition at line 146 of file audiodevice.h.

Referenced by get_irate(), and open_input().

int AudioDevice::in_samples [private]
 

Definition at line 146 of file audiodevice.h.

Referenced by open_input().

char * AudioDevice::input_buffer [private]
 

Definition at line 174 of file audiodevice.h.

Referenced by close_all(), initialize(), and read_buffer().

int AudioDevice::interrupt [private]
 

Definition at line 187 of file audiodevice.h.

Referenced by arm_buffer(), get_interrupted(), initialize(), interrupt_playback(), reset_output(), run(), start_playback(), and write_buffer().

int AudioDevice::is_playing_back [private]
 

Definition at line 186 of file audiodevice.h.

Referenced by initialize(), interrupt_playback(), reset_output(), run(), and start_playback().

int AudioDevice::is_recording [private]
 

Definition at line 186 of file audiodevice.h.

Referenced by close_all(), initialize(), and read_buffer().

int AudioDevice::isamples [private]
 

Definition at line 154 of file audiodevice.h.

int AudioDevice::last_buffer[TOTAL_BUFFERS] [private]
 

Definition at line 172 of file audiodevice.h.

Referenced by initialize(), reset_output(), run(), and set_last_buffer().

int AudioDevice::last_buffer_size [private]
 

Definition at line 181 of file audiodevice.h.

Referenced by close_all(), current_position(), initialize(), reset_output(), and run().

int AudioDevice::last_position [private]
 

Definition at line 183 of file audiodevice.h.

Referenced by current_position(), initialize(), reset_output(), and start_playback().

AudioLowLevel * AudioDevice::lowlevel_duplex [private]
 

Definition at line 191 of file audiodevice.h.

Referenced by close_all(), get_lowlevel_in(), get_lowlevel_out(), initialize(), and open_duplex().

AudioLowLevel* AudioDevice::lowlevel_in [private]
 

Definition at line 191 of file audiodevice.h.

Referenced by close_all(), get_lowlevel_in(), initialize(), interrupt_crash(), and open_input().

AudioLowLevel * AudioDevice::lowlevel_out [private]
 

Definition at line 191 of file audiodevice.h.

Referenced by close_all(), get_lowlevel_out(), initialize(), and open_output().

int AudioDevice::osamples [private]
 

Definition at line 154 of file audiodevice.h.

int AudioDevice::out_bits [private]
 

Definition at line 147 of file audiodevice.h.

Referenced by get_obits().

int AudioDevice::out_channels [private]
 

Definition at line 147 of file audiodevice.h.

Referenced by get_ochannels().

AudioOutConfig* AudioDevice::out_config [private]
 

Definition at line 193 of file audiodevice.h.

Referenced by AudioDevice(), current_position(), open_output(), and ~AudioDevice().

int AudioDevice::out_realtime [private]
 

Definition at line 149 of file audiodevice.h.

Referenced by get_orealtime(), initialize(), and open_output().

int AudioDevice::out_samplerate [private]
 

Definition at line 147 of file audiodevice.h.

Referenced by get_orate(), and open_output().

int AudioDevice::out_samples [private]
 

Definition at line 147 of file audiodevice.h.

Referenced by open_output().

int AudioDevice::play_dither [private]
 

Definition at line 168 of file audiodevice.h.

Referenced by arm_buffer(), close_all(), initialize(), reset_output(), and set_play_dither().

Sema* AudioDevice::play_lock[TOTAL_BUFFERS] [private]
 

Definition at line 175 of file audiodevice.h.

Referenced by arm_buffer(), AudioDevice(), interrupt_playback(), reset_output(), run(), set_last_buffer(), and ~AudioDevice().

Timer AudioDevice::playback_timer [private]
 

Definition at line 184 of file audiodevice.h.

Referenced by current_position(), open_duplex(), run(), and start_playback().

int AudioDevice::position_correction [private]
 

Definition at line 181 of file audiodevice.h.

Referenced by close_all(), initialize(), and reset_output().

int AudioDevice::r [private]
 

Definition at line 152 of file audiodevice.h.

Referenced by close_all(), current_position(), get_ibits(), get_ichannels(), get_irate(), get_lowlevel_in(), initialize(), and open_input().

int AudioDevice::rec_dither [private]
 

Definition at line 166 of file audiodevice.h.

Referenced by close_all(), initialize(), read_buffer(), and set_record_dither().

int AudioDevice::record_before_play [private]
 

Definition at line 160 of file audiodevice.h.

Referenced by initialize(), read_buffer(), and run().

Timer AudioDevice::record_timer [private]
 

Definition at line 184 of file audiodevice.h.

Referenced by current_position(), open_duplex(), open_input(), and read_buffer().

int AudioDevice::sharing [private]
 

Definition at line 169 of file audiodevice.h.

Referenced by close_all(), and initialize().

int AudioDevice::software_position_info [private]
 

Definition at line 186 of file audiodevice.h.

Referenced by close_all(), current_position(), initialize(), reset_output(), and set_software_positioning().

Condition* AudioDevice::startup_lock [private]
 

Definition at line 162 of file audiodevice.h.

Referenced by AudioDevice(), run(), wait_for_startup(), and ~AudioDevice().

int AudioDevice::thread_buffer_num [private]
 

Definition at line 198 of file audiodevice.h.

Referenced by run().

int AudioDevice::thread_result [private]
 

Definition at line 198 of file audiodevice.h.

Referenced by run().

Mutex* AudioDevice::timer_lock [private]
 

Definition at line 177 of file audiodevice.h.

Referenced by AudioDevice(), current_position(), run(), and ~AudioDevice().

int AudioDevice::total_samples [private]
 

Definition at line 181 of file audiodevice.h.

Referenced by current_position(), initialize(), reset_output(), and run().

int64_t AudioDevice::total_samples_read [private]
 

Definition at line 199 of file audiodevice.h.

Referenced by current_position(), initialize(), and read_buffer().

VideoInConfig* AudioDevice::vconfig [private]
 

Definition at line 196 of file audiodevice.h.

Referenced by AudioDevice(), and ~AudioDevice().

VideoDevice* AudioDevice::vdevice [private]
 

Definition at line 156 of file audiodevice.h.

Referenced by close_all(), and initialize().

int AudioDevice::w [private]
 

Definition at line 152 of file audiodevice.h.

Referenced by close_all(), current_position(), get_lowlevel_out(), get_obits(), get_ochannels(), get_orate(), get_orealtime(), initialize(), and open_output().


The documentation for this class was generated from the following files:
Generated on Sun Jan 8 13:39:09 2006 for Cinelerra-svn by  doxygen 1.4.4