DragonNest/Common/FMODEngine/FMOD_static/src/fmod_stack.cpp
2024-12-19 09:48:26 +08:00

127 lines
1.1 KiB
C++

#include "fmod_settings.h"
#include "fmod_stack.h"
namespace FMOD
{
/*
[
[DESCRIPTION]
[PARAMETERS]
[RETURN_VALUE]
[REMARKS]
[PLATFORMS]
PS3
[SEE_ALSO]
]
*/
Stack::Stack()
{
mTop = 0;
mNext = 0;
mPrevious = 0;
}
/*
[
[DESCRIPTION]
[PARAMETERS]
[RETURN_VALUE]
[REMARKS]
[PLATFORMS]
PS3
[SEE_ALSO]
]
*/
void Stack::push(Stack *object)
{
if (!mTop)
{
/*
We have just pushed on the first object
*/
mTop = object;
return;
}
mTop->mNext = object;
object->mPrevious = mTop;
mTop = object;
}
/*
[
[DESCRIPTION]
[PARAMETERS]
[RETURN_VALUE]
[REMARKS]
[PLATFORMS]
PS3
[SEE_ALSO]
]
*/
Stack *Stack::pop()
{
Stack *popped;
if (!mTop)
{
return 0;
}
popped = mTop;
mTop = mTop->mPrevious;
return popped;
}
/*
[
[DESCRIPTION]
[PARAMETERS]
[RETURN_VALUE]
[REMARKS]
[PLATFORMS]
PS3
[SEE_ALSO]
]
*/
bool Stack::stackEmpty()
{
if (mTop)
{
return false;
}
return true;
}
}