libgig  4.0.0
AkaiSample Class Reference

#include <Akai.h>

Inheritance diagram for AkaiSample:
AkaiDiskElement Resource

Public Member Functions

AkaiDirEntry GetDirEntry ()
 
bool LoadSampleData ()
 Load sample into RAM. More...
 
void ReleaseSampleData ()
 release the samples once you used them if you don't want to be bothered to More...
 
int SetPos (int Where, akai_stream_whence_t Whence=akai_stream_start)
 Use this method and Read() if you don't want to load the sample into RAM, thus for disk streaming. More...
 
int Read (void *pBuffer, uint SampleCount)
 Use this method and SetPos() if you don't want to load the sample into RAM, thus for disk streaming. More...
 
bool LoadHeader ()
 
uint GetOffset ()
 
uint Acquire ()
 
uint Release ()
 

Public Attributes

uint8_t mMidiRootNote
 
String mName
 
uint8_t mActiveLoops
 
uint8_t mFirstActiveLoop
 
uint8_t mLoopMode
 
int8_t mTuneCents
 
int8_t mTuneSemitones
 
uint32_t mNumberOfSamples
 
uint32_t mStartMarker
 
uint32_t mEndMarker
 
AkaiSampleLoop mLoops [8]
 
uint16_t mSamplingFrequency
 
int8_t mLoopTuneOffset
 
int16_t * mpSamples
 

Protected Member Functions

void SetOffset (uint Offset)
 
void AkaiToAscii (char *buffer, int length)
 
int ReadFAT (DiskImage *pDisk, AkaiPartition *pPartition, int block)
 
bool ReadDirEntry (DiskImage *pDisk, AkaiPartition *pPartition, AkaiDirEntry &rEntry, int block, int pos)
 

Friends

class AkaiVolume
 

Detailed Description

Definition at line 253 of file Akai.h.

Member Function Documentation

◆ Acquire()

uint Resource::Acquire ( )
inlineinherited

Definition at line 182 of file Akai.h.

Referenced by AkaiDisk::GetPartitionCount(), and AkaiPartition::ListVolumes().

◆ AkaiToAscii()

void AkaiDiskElement::AkaiToAscii ( char *  buffer,
int  length 
)
protectedinherited

Definition at line 1237 of file Akai.cpp.

Referenced by AkaiProgram::Load(), LoadHeader(), and AkaiDiskElement::ReadDirEntry().

◆ GetDirEntry()

AkaiDirEntry AkaiSample::GetDirEntry ( )

Definition at line 330 of file Akai.cpp.

◆ GetOffset()

uint AkaiDiskElement::GetOffset ( )
inlineinherited

◆ LoadHeader()

◆ LoadSampleData()

bool AkaiSample::LoadSampleData ( )

Load sample into RAM.

Definition at line 335 of file Akai.cpp.

References LoadHeader(), mNumberOfSamples, mpSamples, DiskImage::ReadInt16(), and DiskImage::SetPos().

◆ Read()

int AkaiSample::Read ( void *  pBuffer,
uint  SampleCount 
)

Use this method and SetPos() if you don't want to load the sample into RAM, thus for disk streaming.

Definition at line 382 of file Akai.cpp.

References mNumberOfSamples, DiskImage::ReadInt16(), and DiskImage::SetPos().

◆ ReadDirEntry()

◆ ReadFAT()

int AkaiDiskElement::ReadFAT ( DiskImage pDisk,
AkaiPartition pPartition,
int  block 
)
protectedinherited

◆ Release()

uint Resource::Release ( )
inlineinherited

Definition at line 186 of file Akai.h.

Referenced by AkaiPartition::ListVolumes().

◆ ReleaseSampleData()

void AkaiSample::ReleaseSampleData ( )

release the samples once you used them if you don't want to be bothered to

Definition at line 351 of file Akai.cpp.

References mpSamples.

◆ SetOffset()

void AkaiDiskElement::SetOffset ( uint  Offset)
inlineprotectedinherited

Definition at line 225 of file Akai.h.

Referenced by AkaiDisk::GetPartitionCount().

◆ SetPos()

int AkaiSample::SetPos ( int  Where,
akai_stream_whence_t  Whence = akai_stream_start 
)

Use this method and Read() if you don't want to load the sample into RAM, thus for disk streaming.

Definition at line 359 of file Akai.cpp.

References akai_stream_curpos, akai_stream_end, akai_stream_start, and mNumberOfSamples.

Friends And Related Function Documentation

◆ AkaiVolume

friend class AkaiVolume
friend

Definition at line 313 of file Akai.h.

Member Data Documentation

◆ mActiveLoops

uint8_t AkaiSample::mActiveLoops

Definition at line 267 of file Akai.h.

Referenced by LoadHeader().

◆ mEndMarker

uint32_t AkaiSample::mEndMarker

Definition at line 285 of file Akai.h.

Referenced by LoadHeader().

◆ mFirstActiveLoop

uint8_t AkaiSample::mFirstActiveLoop

Definition at line 269 of file Akai.h.

Referenced by LoadHeader().

◆ mLoopMode

uint8_t AkaiSample::mLoopMode

Definition at line 273 of file Akai.h.

Referenced by LoadHeader().

◆ mLoops

AkaiSampleLoop AkaiSample::mLoops[8]

Definition at line 294 of file Akai.h.

Referenced by LoadHeader().

◆ mLoopTuneOffset

int8_t AkaiSample::mLoopTuneOffset

Definition at line 299 of file Akai.h.

Referenced by LoadHeader().

◆ mMidiRootNote

uint8_t AkaiSample::mMidiRootNote

Definition at line 262 of file Akai.h.

Referenced by LoadHeader().

◆ mName

String AkaiSample::mName

Definition at line 264 of file Akai.h.

Referenced by LoadHeader().

◆ mNumberOfSamples

uint32_t AkaiSample::mNumberOfSamples

Definition at line 281 of file Akai.h.

Referenced by LoadHeader(), LoadSampleData(), Read(), and SetPos().

◆ mpSamples

int16_t* AkaiSample::mpSamples

Definition at line 302 of file Akai.h.

Referenced by LoadSampleData(), and ReleaseSampleData().

◆ mSamplingFrequency

uint16_t AkaiSample::mSamplingFrequency

Definition at line 297 of file Akai.h.

Referenced by LoadHeader().

◆ mStartMarker

uint32_t AkaiSample::mStartMarker

Definition at line 283 of file Akai.h.

Referenced by LoadHeader().

◆ mTuneCents

int8_t AkaiSample::mTuneCents

Definition at line 275 of file Akai.h.

Referenced by LoadHeader().

◆ mTuneSemitones

int8_t AkaiSample::mTuneSemitones

Definition at line 277 of file Akai.h.

Referenced by LoadHeader().


The documentation for this class was generated from the following files: