blob: 90da801b3dcb63a21e6ea81f41d59355f59d3379 [file] [log] [blame]
/*
* Copyright 2006 Sony Computer Entertainment Inc.
*
* Licensed under the MIT Open Source License, for details please see license.txt or the website
* http://www.opensource.org/licenses/mit-license.php
*
*/
#include <dae/daeStringRef.h>
//Contributed by Nus - Wed, 08 Nov 2006
// Nus: Use global pointer instead of local static.
static daeStringTable *pST = NULL;
//---------------------------
daeStringTable &daeStringRef::_stringTable()
{
//Contributed by Nus - Wed, 08 Nov 2006
// static daeStringTable *st = new daeStringTable();
// return *st;
if(!pST)
pST = new daeStringTable();
return *pST;
}
void daeStringRef::releaseStringTable(void)
{
if(pST) {
delete pST;
pST = NULL;
}
}
//--------------------------------
daeStringRef::daeStringRef(daeString string)
{
daeStringTable &st = _stringTable();
_string = st.allocString(string);
}
const daeStringRef&
daeStringRef::set(daeString string)
{
daeStringTable &st = _stringTable();
_string = st.allocString(string);
return *this;
}
const daeStringRef&
daeStringRef::operator= (daeString string)
{
return set(string);
}