Previous Topic Index Next Topic
[API function]

FSOUND_Sample_Lock

Returns a pointer to the beginning of the sample data for a sample.
Data written to these pointers must be signed.

signed char F_API FSOUND_Sample_Lock(
FSOUND_SAMPLE *sptr,
int offset,
int length,
void **ptr1,
void **ptr2,
unsigned int *len1,
unsigned int *len2
);

Parameters

sptr Pointer to the sample definition.
offset Offset in BYTES to the position you want to lock in the sample buffer.
length Number of BYTES you want to lock in the sample buffer.
ptr1 Address of a pointer that will point to the first part of the locked data.
ptr2 Address of a pointer that will point to the second part of the locked data.
This will be NULL if the data locked hasnt wrapped at the end of the buffer.
len1 Length of data in BYTES that was locked for ptr1
len2 Length of data in BYTES that was locked for ptr2.
This will be 0 if the data locked hasnt wrapped at the end of the buffer.

Return Value

On success, TRUE is returned.
On failure, FALSE is returned.

Remarks

You must always unlock the data again after you have finished with it, using FSOUND_Sample_Unlock.
For PCM based samples, data must be signed 8 or 16bit. For compressed samples such as those created with FSOUND_IMAADPCM, FSOUND_VAG, FSOUND_GCADPCM, the data must be in its original compressed format.
On PlayStation 2, with FSOUND_HW2D or FSOUND_HW3D based samples, this function does not return a readable or writable buffer, it returns the SPU2 address of the sample. To send data to it you must call FSOUND_SendData.
On GameCube, with FSOUND_HW2D or FSOUND_HW3D based samples, this function will not return the data contained within the sample. It is for upload purposes only.
___________________
Supported on the following platforms : Win32, WinCE, Linux, Macintosh, XBox, PlayStation 2, GameCube

See Also

FSOUND_Sample_Alloc , FSOUND_Sample_Unlock , FSOUND_Sample_Upload , FSOUND_SendData

This document copyright ©Firelight Technologies, Pty, Ltd, 1999-2002. All rights reserved.
Generated Thu Dec 15 17:31:32 2005 by SourceDoc v0.10, the automated source code documenter.