本文整理汇总了C++中sharedList函数的典型用法代码示例。如果您正苦于以下问题:C++ sharedList函数的具体用法?C++ sharedList怎么用?C++ sharedList使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了sharedList函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: locker
void QBSoundWin::stopAll()
{
//printf("stopAll\n");
QBSoundLocker locker(&mMutex);
#ifdef __USE_OGG_VORBIS__
{
PlayerList::iterator it = streamTrack.begin();
while(it != streamTrack.end()) {
delete (*it).second;
++it;
}
streamTrack.clear();
}
{
EffectList::iterator it = sharedList().begin();
while(it != sharedList().end())
{
delete (*it).second;
++it;
}
sharedList().clear();
}
#endif
return QBSound::stopAll();
}
示例2: setEffectsVolume
void SimpleAudioEngine::setEffectsVolume(float volume)
{
EffectList::iterator iter;
for (iter = sharedList().begin(); iter != sharedList().end(); iter++)
{
iter->second->SetVolume(int(volume * 100));
}
}
示例3: sharedList
void SimpleAudioEngine::resumeEffect(unsigned int nSoundId)
{
EffectList::iterator p = sharedList().find(nSoundId);
if (p != sharedList().end())
{
p->second->Resume();
}
}
示例4: stopAllEffects
void SimpleAudioEngine::stopAllEffects()
{
EffectList::iterator iter;
for (iter = sharedList().begin(); iter != sharedList().end(); iter++)
{
iter->second->Stop();
}
}
示例5: sharedList
float SimpleAudioEngine::getEffectsVolume()
{
EffectList::iterator iter;
iter = sharedList().begin();
if (iter != sharedList().end())
{
return float(iter->second->GetVolume()) / 100.f;
}
}
示例6: _Hash
void SimpleAudioEngine::unloadEffect(const char* pszFilePath)
{
unsigned int nID = _Hash(pszFilePath);
EffectList::iterator p = sharedList().find(nID);
if (p != sharedList().end())
{
delete p->second;
p->second = nullptr;
sharedList().erase(nID);
}
}
示例7: sharedMusic
void SimpleAudioEngine::end()
{
sharedMusic().Close();
for (auto& iter : sharedList())
{
delete iter.second;
iter.second = nullptr;
}
sharedList().clear();
return;
}
示例8: sharedMusic
void SimpleAudioEngine::end()
{
sharedMusic().Close();
EffectList::iterator p = sharedList().begin();
while (p != sharedList().end())
{
delete p->second;
p->second = NULL;
p++;
}
sharedList().clear();
}
示例9: _Hash
unsigned int SimpleAudioEngine::playEffect(const char* pszFilePath, bool bLoop)
{
unsigned int nRet = _Hash(pszFilePath);
preloadEffect(pszFilePath);
EffectList::iterator p = sharedList().find(nRet);
if (p != sharedList().end())
{
p->second->Play((bLoop) ? -1 : 1);
}
return nRet;
}
示例10: _Hash
bool SimpleAudioEngine::isEffectPlaying(const char* pszFilePath)
{
unsigned int nRet = _Hash(pszFilePath);
bool result = false;
EffectList::iterator p = sharedList().find(nRet);
if (p != sharedList().end())
{
return p->second->IsPlaying();
}
return result;
}
示例11: _Hash
unsigned int SimpleAudioEngine::playEffect(const char* pszFilePath, bool bLoop/* = false*/,
float pitch/* = 1.0f*/, float pan/* = 0.0f*/, float gain/* = 1.0f*/)
{
unsigned int nRet = _Hash(pszFilePath);
preloadEffect(pszFilePath);
EffectList::iterator p = sharedList().find(nRet);
if (p != sharedList().end())
{
p->second->Play(bLoop);
}
return nRet;
}
示例12: resumeAllEffects
void SimpleAudioEngine::resumeAllEffects()
{
for (auto& iter : sharedList())
{
iter.second->Resume();
}
}
示例13: pauseAllEffects
void SimpleAudioEngine::pauseAllEffects()
{
for (auto& iter : sharedList())
{
iter.second->Pause();
}
}
示例14: stopAllEffects
void SimpleAudioEngine::stopAllEffects()
{
for (auto& iter : sharedList())
{
iter.second->Stop();
}
}
示例15: BREAK_IF
void SimpleAudioEngine::preloadEffect(const char* pszFilePath)
{
int nRet = 0;
do
{
BREAK_IF(! pszFilePath);
nRet = _Hash(pszFilePath);
BREAK_IF(sharedList().end() != sharedList().find(nRet));
sharedList().insert(Effect(nRet, new MciPlayer()));
MciPlayer * pPlayer = sharedList()[nRet];
pPlayer->Open(_FullPath(pszFilePath), nRet);
BREAK_IF(nRet == pPlayer->GetSoundID());
sharedList().erase(nRet);
nRet = 0;
} while (0);
}