123
This commit is contained in:
34
CrySoundSystem/MusicPatternInstance.h
Normal file
34
CrySoundSystem/MusicPatternInstance.h
Normal file
@@ -0,0 +1,34 @@
|
||||
#pragma once
|
||||
|
||||
#include <SmartPtr.h>
|
||||
|
||||
class CMusicPattern;
|
||||
struct IMusicPatternDecoderInstance;
|
||||
|
||||
class CMusicPatternInstance
|
||||
{
|
||||
protected:
|
||||
int m_nRefs;
|
||||
CMusicPattern *m_pPattern;
|
||||
IMusicPatternDecoderInstance *m_pDecoderInstance;
|
||||
public:
|
||||
CMusicPatternInstance(CMusicPattern *pPattern);
|
||||
virtual ~CMusicPatternInstance();
|
||||
void AddRef()
|
||||
{
|
||||
m_nRefs++;
|
||||
}
|
||||
void Release()
|
||||
{
|
||||
m_nRefs--;
|
||||
if (m_nRefs<=0)
|
||||
delete this;
|
||||
}
|
||||
CMusicPattern* GetPattern() { return m_pPattern; }
|
||||
//! Seek to beginning of pattern (if nDelay is set it will wait nDelay-samples before starting playback).
|
||||
bool Seek0(int nDelay=0);
|
||||
bool GetPCMData(signed long *pDataOut, int nSamples, bool bLoop=true);
|
||||
int GetSamplesToNextFadePoint();
|
||||
int GetSamplesToLastFadePoint();
|
||||
int GetSamplesToEnd();
|
||||
};
|
||||
Reference in New Issue
Block a user