Fixed: #1448 Compilation with CLang
This commit is contained in:
parent
ff1306d4fe
commit
3fa0aa2216
12 changed files with 51 additions and 31 deletions
|
@ -50,21 +50,21 @@ static CTxtCommandSetPtr<__CTxtCommandSet_##setName> setName;
|
|||
//-------------------------------------------------------------------------------------------------
|
||||
|
||||
#define TXT_COMMAND(cmdName,setName,CONTEXT_CLASS)\
|
||||
struct __CTxtCommand_##cmdName: public ITxtCommand<CONTEXT_CLASS>\
|
||||
struct __CTxtCommand_##cmdName##CONTEXT_CLASS: public ITxtCommand<CONTEXT_CLASS>\
|
||||
{\
|
||||
static __CTxtCommand_##cmdName* getInstance()\
|
||||
static __CTxtCommand_##cmdName##CONTEXT_CLASS* getInstance()\
|
||||
{\
|
||||
static __CTxtCommand_##cmdName *p=NULL;\
|
||||
if (p==NULL) p= new __CTxtCommand_##cmdName;\
|
||||
static __CTxtCommand_##cmdName##CONTEXT_CLASS *p=NULL;\
|
||||
if (p==NULL) p= new __CTxtCommand_##cmdName##CONTEXT_CLASS;\
|
||||
return p;\
|
||||
}\
|
||||
virtual const char* getName() const {return #cmdName;}\
|
||||
virtual CTxtCommandResult execute(CONTEXT_CLASS& context,const NLMISC::CVectorSString& args,const NLMISC::CSString& rawArgs,const NLMISC::CSString& fullCmdLine);\
|
||||
private:\
|
||||
__CTxtCommand_##cmdName() {}\
|
||||
__CTxtCommand_##cmdName##CONTEXT_CLASS() {}\
|
||||
};\
|
||||
static ITxtCommandRegisterer<__CTxtCommand_##cmdName,__CTxtCommandSet_##setName> __CTxtCommand_##cmdName##_Registerer;\
|
||||
CTxtCommandResult __CTxtCommand_##cmdName::execute(CONTEXT_CLASS& context,const NLMISC::CVectorSString& args,const NLMISC::CSString& rawArgs,const NLMISC::CSString& fullCmdLine)
|
||||
static ITxtCommandRegisterer<__CTxtCommand_##cmdName##CONTEXT_CLASS,__CTxtCommandSet_##setName> __CTxtCommand_##cmdName##CONTEXT_CLASS##_Registerer;\
|
||||
CTxtCommandResult __CTxtCommand_##cmdName##CONTEXT_CLASS::execute(CONTEXT_CLASS& context,const NLMISC::CVectorSString& args,const NLMISC::CSString& rawArgs,const NLMISC::CSString& fullCmdLine)
|
||||
|
||||
|
||||
//-------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -546,13 +546,13 @@ CAliasTreeOwner* CAliasCont<TChld>::getAliasChildByAlias(uint32 alias) const
|
|||
template <class TChld>
|
||||
CAliasTreeOwner* CAliasCont<TChld>::addAliasChild(CAliasTreeOwner* child)
|
||||
{
|
||||
return NLMISC::type_cast<CAliasTreeOwner*>(addChild(static_cast<TChld*>(child)));
|
||||
return NLMISC::type_cast<CAliasTreeOwner*>(this->addChild(static_cast<TChld*>(child)));
|
||||
}
|
||||
|
||||
template <class TChld>
|
||||
CAliasTreeOwner* CAliasCont<TChld>::addAliasChild(CAliasTreeOwner* child, uint32 index)
|
||||
{
|
||||
return NLMISC::type_cast<CAliasTreeOwner*>(addChild(static_cast<TChld*>(child), index));
|
||||
return NLMISC::type_cast<CAliasTreeOwner*>(this->addChild(static_cast<TChld*>(child), index));
|
||||
}
|
||||
|
||||
template <class TChld>
|
||||
|
|
|
@ -844,7 +844,7 @@ public:
|
|||
}
|
||||
protected:
|
||||
private:
|
||||
size_t _index;
|
||||
uint32 _index;
|
||||
float _value;
|
||||
bool _detailled;
|
||||
mutable CLogStringWriter _stringWriter;
|
||||
|
|
|
@ -172,6 +172,7 @@ IAiFactory<IFamilyProfile> *_ProfileNpc=&_singleProfileNpc;
|
|||
|
||||
extern IAiFactory<IFamilyProfile> *_ProfileTribe; // in another cpp.
|
||||
|
||||
NL_ISO_TEMPLATE_SPEC CAiFactoryContainer<IFamilyProfile, TStringId> *CAiFactoryContainer<IFamilyProfile, TStringId>::_Instance = NULL;
|
||||
|
||||
CFamilyProfileFactory::CFamilyProfileFactory()
|
||||
{
|
||||
|
@ -217,10 +218,6 @@ IFamilyProfile* CFamilyProfileFactory::createFamilyProfile(const TStringId &keyW
|
|||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
NL_ISO_TEMPLATE_SPEC CAiFactoryContainer<IFamilyProfile, TStringId> *CAiFactoryContainer<IFamilyProfile, TStringId>::_Instance = NULL;
|
||||
|
||||
|
||||
IFamilyProfile* IFamilyProfile::createFamilyProfile(const TStringId &profileName, const IFamilyProfile::CtorParam& ctorParam)
|
||||
{
|
||||
return CFamilyProfileFactory::createFamilyProfile(profileName, ctorParam);
|
||||
|
|
|
@ -1933,7 +1933,7 @@ void CSubRuleTracer::generateCode(CSmartPtr<AIVM::CByteCode> &cByteCode) const
|
|||
case CScriptVM::JUMP:
|
||||
byteCode.push_back(op); // + Jump offset.
|
||||
|
||||
size_t index;
|
||||
uint32 index;
|
||||
NLMISC::fromString(param, index);
|
||||
jumpTable.add(CJumpRememberer(index));
|
||||
byteCode.push_back(0); // Invalid
|
||||
|
@ -1950,7 +1950,7 @@ void CSubRuleTracer::generateCode(CSmartPtr<AIVM::CByteCode> &cByteCode) const
|
|||
{
|
||||
if (str.find("Atof")!=string::npos)
|
||||
{
|
||||
size_t index;
|
||||
uint32 index;
|
||||
NLMISC::fromString(param, index);
|
||||
--index;
|
||||
string &strRef=_childTracers[index]->_TextValue;
|
||||
|
@ -1962,7 +1962,7 @@ void CSubRuleTracer::generateCode(CSmartPtr<AIVM::CByteCode> &cByteCode) const
|
|||
|
||||
if (str.find("String")!=string::npos)
|
||||
{
|
||||
size_t index;
|
||||
uint32 index;
|
||||
NLMISC::fromString(param, index);
|
||||
--index;
|
||||
string &strRef=_childTracers[index]->_TextValue;
|
||||
|
@ -2021,7 +2021,7 @@ void CSubRuleTracer::generateCode(CSmartPtr<AIVM::CByteCode> &cByteCode) const
|
|||
|
||||
if (str.find("Code")!=string::npos)
|
||||
{
|
||||
size_t index;
|
||||
uint32 index;
|
||||
NLMISC::fromString(param, index);
|
||||
--index;
|
||||
if (byteCode.size()==0)
|
||||
|
|
|
@ -90,6 +90,14 @@ sint8 ExplosionResetPeriod = 50; // 5 s
|
|||
|
||||
CHarvestSource AutoSpawnSourceIniProperties;
|
||||
|
||||
/*
|
||||
* Access to singleton
|
||||
*/
|
||||
CHarvestSourceManager *CHarvestSourceManager::getInstance()
|
||||
{
|
||||
return (CHarvestSourceManager*)_Instance;
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialization of source manager
|
||||
*/
|
||||
|
@ -103,7 +111,10 @@ void CHarvestSourceManager::init( TDataSetIndex baseRowIndex, TDataSetIndex size
|
|||
//AutoSpawnSourceIniProperties.setDistVis( 100 );
|
||||
}
|
||||
|
||||
|
||||
void CHarvestSourceManager::release()
|
||||
{
|
||||
delete (CHarvestSourceManager*)_Instance;
|
||||
}
|
||||
|
||||
/*
|
||||
* HarvestSource constructor
|
||||
|
|
|
@ -391,13 +391,13 @@ class CHarvestSourceManager : public CSimpleEntityManager<CHarvestSource>
|
|||
public:
|
||||
|
||||
/// Singleton access
|
||||
static CHarvestSourceManager *getInstance() { return (CHarvestSourceManager*)_Instance; }
|
||||
static CHarvestSourceManager *getInstance();
|
||||
|
||||
/// Initialization
|
||||
void init( TDataSetIndex baseRowIndex, TDataSetIndex size );
|
||||
|
||||
/// Release
|
||||
static void release() { delete (CHarvestSourceManager*)_Instance; }
|
||||
static void release();
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -67,3 +67,15 @@ NLMISC_DYNVARIABLE( uint, NbEnvironmentalEffects, "Number of environmental effec
|
|||
if ( get )
|
||||
*pointer = CEnvironmentalEffectManager::getInstance()->nbEntities();
|
||||
}
|
||||
|
||||
/// Singleton access
|
||||
CEnvironmentalEffectManager *CEnvironmentalEffectManager::getInstance()
|
||||
{
|
||||
return (CEnvironmentalEffectManager*)_Instance;
|
||||
}
|
||||
|
||||
/// Release
|
||||
void CEnvironmentalEffectManager::release()
|
||||
{
|
||||
delete (CEnvironmentalEffectManager*)_Instance;
|
||||
}
|
||||
|
|
|
@ -89,10 +89,10 @@ class CEnvironmentalEffectManager : public CSimpleEntityManager<CEnvironmentalEf
|
|||
public:
|
||||
|
||||
/// Singleton access
|
||||
static CEnvironmentalEffectManager *getInstance() { return (CEnvironmentalEffectManager*)_Instance; }
|
||||
static CEnvironmentalEffectManager *getInstance();
|
||||
|
||||
/// Release
|
||||
static void release() { delete (CEnvironmentalEffectManager*)_Instance; }
|
||||
static void release();
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -288,10 +288,10 @@ public :
|
|||
TCDBDataIndex getDataIndex() const { return _DataIndex; }
|
||||
|
||||
/// Set the atomic branch flag (when all the modified nodes of a branch should be tranmitted at the same time)
|
||||
void setAtomic( bool atomicBranch ) { _Atomic = atomicBranch; }
|
||||
void setAtomic( bool atomicBranch ) { _AtomicFlag = atomicBranch; }
|
||||
|
||||
/// Return true if the branch has the atomic flag
|
||||
bool isAtomic() const { return _Atomic; }
|
||||
bool isAtomic() const { return _AtomicFlag; }
|
||||
|
||||
/** Attach callback. Allow to attach a callback function that some code could call
|
||||
* when an instance of this node is changed.
|
||||
|
@ -307,7 +307,7 @@ protected:
|
|||
ICDBStructNode()
|
||||
: _BankLabels(NULL),
|
||||
_DataIndex(CDB_INVALID_DATA_INDEX),
|
||||
_Atomic(false),
|
||||
_AtomicFlag(false),
|
||||
_ChangeCallback(NULL)
|
||||
{}
|
||||
|
||||
|
@ -325,7 +325,7 @@ protected:
|
|||
TCDBDataIndex _DataIndex;
|
||||
|
||||
/// Atomic flag: is the branch an atomic group, or is the leaf a member of an atomic group
|
||||
bool _Atomic;
|
||||
bool _AtomicFlag;
|
||||
|
||||
/// Optional callback pointer.
|
||||
TNodeChangeCallback _ChangeCallback;
|
||||
|
|
|
@ -186,7 +186,7 @@ void ICDBStructNode::setLabel( const std::string& bankName )
|
|||
*/
|
||||
void CCDBStructNodeBranch::initDataIndex( TCDBDataIndex& index )
|
||||
{
|
||||
if ( _Atomic )
|
||||
if ( _AtomicFlag )
|
||||
{
|
||||
_DataIndex = index;
|
||||
checkIfNotMaxIndex();
|
||||
|
@ -207,7 +207,7 @@ void CCDBStructNodeBranch::initDataIndex( TCDBDataIndex& index )
|
|||
*/
|
||||
void CCDBStructNodeBranch::initIdAndCallForEachIndex( CBinId& id, void (*callback)(ICDBStructNode*, void*), void *arg )
|
||||
{
|
||||
if ( _Atomic )
|
||||
if ( _AtomicFlag )
|
||||
{
|
||||
callback( this, arg );
|
||||
}
|
||||
|
@ -537,7 +537,7 @@ TCDBDataIndex CCDBStructNodeBranch::findDataIndex( ICDBStructNode::CTextId& id )
|
|||
*/
|
||||
void CCDBStructNodeBranch::foreachAtomBranchCall( void (*callback)(void*,TCDBDataIndex), void *arg ) const
|
||||
{
|
||||
if ( _Atomic )
|
||||
if ( _AtomicFlag )
|
||||
{
|
||||
callback( arg, _DataIndex );
|
||||
}
|
||||
|
|
|
@ -144,7 +144,7 @@ bool getProperty(xmlNodePtr node, const char* propName, T &result, const T &defa
|
|||
if (!NLMISC::CIXml::getPropertyString(res, node, propName))
|
||||
{
|
||||
if (!quiet)
|
||||
nlwarning("Couldn't get property '%s' in xml node, use '%s' value instead", propName, toString(defaultValue).c_str());
|
||||
nlwarning("Couldn't get property '%s' in xml node, use '%s' value instead", propName, NLMISC::toString(defaultValue).c_str());
|
||||
result = defaultValue;
|
||||
return false;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue