Show klandmarklist.h syntax highlighted
/*
Copyright (C) 2003, 2004 by Luca Cappa
Written by Luca Cappa groton@users.sourceforge.net
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef __KLANDMARKLIST_H__
#define __KLANDMARKLIST_H__
#include "csutil/nobjvec.h"
struct iEngine;
struct iGraphics3D;
struct iMaterialWrapper;
struct iMeshWrapper;
class csTransform;
struct iPolygon3D;
struct iCollideSystem;
class csVector3;
class BlockId;
class KFlags;
class csBox3;
class KLandmarkList : public iKXMLWriter, public iKXMLReader
{
private:
csRefArrayObject<KLandmark> m_landmarks;
csRef<iString> m_name;
public:
SCF_DECLARE_IBASE;
KLandmarkList();
virtual ~KLandmarkList();
size_t GetCount () const;
KLandmark* Get (int n) const;
int Add (KLandmark *obj);
bool Remove (KLandmark *obj);
bool Remove (int n);
void RemoveAll ();
void RemoveAndDestroyAll ();
int Find (KLandmark *p_sprite) const;
KLandmark* FindByName (const char *p_name) const;
void AttachColliders (iCollideSystem* p_cS);
void DetachColliders (iCollideSystem* p_cS);
void SetName (const char* p_name);
const char* GetName () const;
//
//iKXMLWriter/Reader
bool Write (iDocumentNode* p_node) const;
bool Read (iDocumentNode* p_node);
};
#endif // __KLANDMARKLIST_H__
See more files for this project here