25 #ifndef SFML_SOUNDRECORDER_H    26 #define SFML_SOUNDRECORDER_H    31 #include <SFML/Audio/Export.h>    32 #include <SFML/Audio/Types.h>    33 #include <SFML/System/Time.h>    37 typedef sfBool (*sfSoundRecorderStartCallback)(
void*);                           
    38 typedef sfBool (*sfSoundRecorderProcessCallback)(
const sfInt16*, size_t, 
void*); 
    39 typedef void   (*sfSoundRecorderStopCallback)(
void*);                            
    53 CSFML_AUDIO_API sfSoundRecorder* sfSoundRecorder_create(sfSoundRecorderStartCallback   onStart,
    54                                                         sfSoundRecorderProcessCallback onProcess,
    55                                                         sfSoundRecorderStopCallback    onStop,
    64 CSFML_AUDIO_API 
void sfSoundRecorder_destroy(sfSoundRecorder* soundRecorder);
    82 CSFML_AUDIO_API sfBool sfSoundRecorder_start(sfSoundRecorder* soundRecorder, 
unsigned int sampleRate);
    90 CSFML_AUDIO_API 
void sfSoundRecorder_stop(sfSoundRecorder* soundRecorder);
   104 CSFML_AUDIO_API 
unsigned int sfSoundRecorder_getSampleRate(
const sfSoundRecorder* soundRecorder);
   116 CSFML_AUDIO_API sfBool sfSoundRecorder_isAvailable(
void);
   135 CSFML_AUDIO_API 
void sfSoundRecorder_setProcessingInterval(sfSoundRecorder* soundRecorder, 
sfTime interval);
   149 CSFML_AUDIO_API 
const char** sfSoundRecorder_getAvailableDevices(
size_t* count);
   160 CSFML_AUDIO_API 
const char* sfSoundRecorder_getDefaultDevice();
   176 CSFML_AUDIO_API sfBool sfSoundRecorder_setDevice(sfSoundRecorder* soundRecorder, 
const char* name);
   186 CSFML_AUDIO_API 
const char* sfSoundRecorder_getDevice(sfSoundRecorder* soundRecorder);
   201 CSFML_AUDIO_API 
void sfSoundRecorder_setChannelCount(sfSoundRecorder* soundRecorder, 
unsigned int channelCount);
   214 CSFML_AUDIO_API 
unsigned int sfSoundRecorder_getChannelCount(
const sfSoundRecorder* soundRecorder);
   217 #endif // SFML_SOUNDRECORDER_H