1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "fsCCachedSoundEffect.h"

#include "fsCore/src/fsCResourceName.h"
#include "fsCSoundEffectInstance.h"


fsISoundEffectInstance* fsCCachedSoundEffect::play(fsBool pLoop)
{
	fsCSoundEffectInstance* inst = new fsCSoundEffectInstance(this, pLoop);
	if (inst->playing())
	{
		return inst;
	}

	delete inst;
	return nullptr;
}

fsCCachedSoundEffect::fsCCachedSoundEffect(const fsCResourceName& pFileName):
	mShutDown(false),
	mFilename(pFileName.nameGet())
{
	mSound = ::LoadSound(pFileName.nameGet().utf8Get());
}

fsCCachedSoundEffect::~fsCCachedSoundEffect()
{
	mShutDown = true;
}