Wing Commander
Reconstructed Win32 source (1996)
Loading...
Searching...
No Matches
streamer.cpp File Reference

Streamer API and package management. More...

#include "ix.h"
#include <stdlib.h>

Go to the source code of this file.

Macros

#define IX_STREAMER_FILE   "D:\\Rnd\\Prj\\ix\\Src\\Streamer\\streamer.cpp"

Functions

int ix_streamer_init (void)
void ix_streamer_destroy (void)
void ix_streamer_configure (int option, void *value)
void ix_streamer_set_dev_mode (int mode)
int ix_streamer_open_stream_file (char *path)
void ix_streamer_close_stream_file (void)
void ix_streamer_audio_play (void)
void ix_streamer_audio_stop (void)
void ix_streamer_audio_pause (void)
void ix_streamer_audio_reprepare (void)
void ix_streamer_set_intensity (unsigned char intensity)
unsigned char ix_streamer_get_intensity (void)
void ix_streamer_set_trigger (char trigger)
char ix_streamer_get_trigger (void)
void ix_streamer_force_trigger (char trigger)
void ix_streamer_set_volume (unsigned short volume)
unsigned short ix_streamer_get_volume (void)
unsigned int ix_streamer_get_audio_chunk (void)
void ix_streamer_seek_chunk (unsigned int chunk)
unsigned int ix_streamer_hash_name (unsigned char *name)
IxStreamerFileEntry * ix_streamer_find_entry (unsigned int hash)
IxStreamFile * ix_streamer_open_file (unsigned char *name, unsigned char priority)
void ix_streamer_close_file (IxStreamFile *streamFile)

Variables

unsigned int * pStreamerPacketOffsetTable
unsigned int dwStreamThreadTick
unsigned int dwUnusedStreamerWord
FILE * pStreamerPackFile
IxStreamFile * pStreamIdleFiles
unsigned int adwStreamCallStack [32]
unsigned char * pStreamerLzoBuffer
IxStreamFile * pStreamReadRequests
unsigned int dwIxStreamerAudioBufferSize
unsigned char * pIxStreamerInputBuffer
unsigned char bStreamerIntensityLevel
HANDLE hStreamThread
IxStreamerFileEntry * pStreamFileEntries
IxStreamerHeader * pStreamerPackageInfo
IxStreamerAudioChunk * pStreamedMusicAudioChunks
IxStreamerBranch * pMusicStreamBranchList
IxStreamerFileChunk * pStreamFileBlocks
CRITICAL_SECTION csStreamerFileList
CRITICAL_SECTION csIxStreamerThread
unsigned int nStreamerAudioBlock
DWORD dwIxStreamerThreadId
unsigned int dwIxStreamerStatus
HANDLE hStreamerWakeupEvent
unsigned int nIxStreamerCurrentFileChunk
unsigned int dwStreamBytesPerSecond
CRITICAL_SECTION csStreamer
IxStreamerTrigger * pStreamTriggerList
unsigned short nStreamerVolume = 0xffff
char cStreamerBranchTag = -1
unsigned int nStreamCallStackIndex = 0

Detailed Description

Streamer API and package management.

Originally D:\Rnd\Prj\ix\Src\Streamer\streamer.cpp, address range 442750-443b0f. The assert paths identify the source; INT3 fill before the worker thread marks the object's end.

Definition in file streamer.cpp.

Macro Definition Documentation

◆ IX_STREAMER_FILE

Function Documentation

◆ ix_streamer_audio_pause()

◆ ix_streamer_audio_play()

◆ ix_streamer_audio_reprepare()

◆ ix_streamer_audio_stop()

◆ ix_streamer_close_file()

◆ ix_streamer_close_stream_file()

◆ ix_streamer_configure()

void ix_streamer_configure ( int option,
void * value )

◆ ix_streamer_destroy()

◆ ix_streamer_find_entry()

◆ ix_streamer_force_trigger()

◆ ix_streamer_get_audio_chunk()

unsigned int ix_streamer_get_audio_chunk ( void )

Definition at line 497 of file streamer.cpp.

References ix_streamer_get_audio_chunk(), and nStreamerAudioBlock.

Referenced by ix_streamer_get_audio_chunk().

◆ ix_streamer_get_intensity()

unsigned char ix_streamer_get_intensity ( void )

Definition at line 396 of file streamer.cpp.

References bStreamerIntensityLevel, and ix_streamer_get_intensity().

Referenced by ix_streamer_get_intensity().

◆ ix_streamer_get_trigger()

char ix_streamer_get_trigger ( void )

◆ ix_streamer_get_volume()

unsigned short ix_streamer_get_volume ( void )

◆ ix_streamer_hash_name()

unsigned int ix_streamer_hash_name ( unsigned char * name)

Definition at line 518 of file streamer.cpp.

References ix_streamer_hash_name().

Referenced by ix_streamer_hash_name(), and ix_streamer_open_file().

◆ ix_streamer_init()

◆ ix_streamer_open_file()

◆ ix_streamer_open_stream_file()

int ix_streamer_open_stream_file ( char * path)

Definition at line 123 of file streamer.cpp.

References IxStreamerHeader::audioBufferSize, IxStreamerHeader::audioChunkCount, IxStreamerHeader::audioChunkTableOffset, IxStreamerHeader::bitsPerSample, IxStreamerHeader::branchCount, IxStreamerHeader::branchTableOffset, IxStreamerHeader::channels, IxStreamerHeader::dspConfigValue, dwIxStreamerAudioBufferSize, dwIxStreamerStatus, dwStreamBytesPerSecond, IxStreamerHeader::fileBufferSize, IxStreamerHeader::fileChunkCount, IxStreamerHeader::fileChunkTableOffset, IxStreamerHeader::fileEntryCount, IxStreamerHeader::fileEntryTableOffset, IxStreamerHeader::frequency, hStreamerWakeupEvent, IxStreamerHeader::id, ix_dsp_configure(), ix_dsps_alloc(), ix_dsps_set_volume(), ix_file_open(), ix_file_read(), ix_file_seek(), ix_log_printf(), ix_streamer_close_stream_file(), IX_STREAMER_FILE, IX_STREAMER_FILE_OPEN, IX_STREAMER_HAS_AUDIO, IX_STREAMER_INITIALIZED, ix_streamer_open_stream_file(), nIxStreamerCurrentFileChunk, nStreamCallStackIndex, nStreamerAudioBlock, nStreamerVolume, IxStreamerHeader::packetCount, IxStreamerHeader::packetTableOffset, pIxMalloc(), pIxStreamerInputBuffer, pMusicStreamBranchList, pStreamedMusicAudioChunks, pStreamerLzoBuffer, pStreamerPackageInfo, pStreamerPacketOffsetTable, pStreamerPackFile, pStreamFileBlocks, pStreamFileEntries, pStreamIdleFiles, pStreamTriggerList, IxStreamerHeader::triggerCount, IxStreamerHeader::triggerTableOffset, and IxStreamerHeader::version.

Referenced by CollectRasterClipColours(), ix_streamer_open_stream_file(), and Streamer_open().

◆ ix_streamer_seek_chunk()

void ix_streamer_seek_chunk ( unsigned int chunk)

◆ ix_streamer_set_dev_mode()

◆ ix_streamer_set_intensity()

void ix_streamer_set_intensity ( unsigned char intensity)

◆ ix_streamer_set_trigger()

void ix_streamer_set_trigger ( char trigger)

◆ ix_streamer_set_volume()

void ix_streamer_set_volume ( unsigned short volume)

Variable Documentation

◆ adwStreamCallStack

unsigned int adwStreamCallStack[32]

Definition at line 23 of file streamer.cpp.

Referenced by ix_streamer_force_trigger(), and ix_thread_advance_audio_chunk().

◆ bStreamerIntensityLevel

unsigned char bStreamerIntensityLevel

◆ csIxStreamerThread

CRITICAL_SECTION csIxStreamerThread

Definition at line 36 of file streamer.cpp.

Referenced by ix_streamer_destroy(), ix_streamer_init(), and ix_streamer_thread_proc().

◆ csStreamer

◆ csStreamerFileList

◆ cStreamerBranchTag

char cStreamerBranchTag = -1

◆ dwIxStreamerAudioBufferSize

unsigned int dwIxStreamerAudioBufferSize

Definition at line 26 of file streamer.cpp.

Referenced by ix_streamer_open_stream_file().

◆ dwIxStreamerStatus

◆ dwIxStreamerThreadId

DWORD dwIxStreamerThreadId

Definition at line 38 of file streamer.cpp.

Referenced by ix_streamer_init().

◆ dwStreamBytesPerSecond

unsigned int dwStreamBytesPerSecond

◆ dwStreamThreadTick

unsigned int dwStreamThreadTick

Definition at line 18 of file streamer.cpp.

Referenced by ix_streamer_thread_proc(), and ix_thread_handle_file_chunk().

◆ dwUnusedStreamerWord

unsigned int dwUnusedStreamerWord

Definition at line 20 of file streamer.cpp.

◆ hStreamerWakeupEvent

◆ hStreamThread

HANDLE hStreamThread

Definition at line 29 of file streamer.cpp.

Referenced by ix_streamer_init().

◆ nIxStreamerCurrentFileChunk

unsigned int nIxStreamerCurrentFileChunk

Definition at line 41 of file streamer.cpp.

Referenced by ix_streamer_open_stream_file(), and ix_thread_handle_file_chunk().

◆ nStreamCallStackIndex

unsigned int nStreamCallStackIndex = 0

◆ nStreamerAudioBlock

◆ nStreamerVolume

unsigned short nStreamerVolume = 0xffff

◆ pIxStreamerInputBuffer

unsigned char* pIxStreamerInputBuffer

◆ pMusicStreamBranchList

◆ pStreamedMusicAudioChunks

◆ pStreamerLzoBuffer

unsigned char* pStreamerLzoBuffer

◆ pStreamerPackageInfo

◆ pStreamerPacketOffsetTable

unsigned int* pStreamerPacketOffsetTable

◆ pStreamerPackFile

◆ pStreamFileBlocks

◆ pStreamFileEntries

◆ pStreamIdleFiles

◆ pStreamReadRequests

◆ pStreamTriggerList