ManaPlus
particlecontainer.cpp
Go to the documentation of this file.
1 /*
2  * The ManaPlus Client
3  * Copyright (C) 2008-2009 The Mana World Development Team
4  * Copyright (C) 2009-2010 The Mana Developers
5  * Copyright (C) 2011-2018 The ManaPlus Developers
6  *
7  * This file is part of The ManaPlus Client.
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2 of the License, or
12  * any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program. If not, see <http://www.gnu.org/licenses/>.
21  */
22 
24 
25 #include "utils/delete2.h"
26 
27 #include "debug.h"
28 
30  const bool delParent) :
31  mNext(parent),
32  mDelParent(delParent)
33 {
34 }
35 
37 {
38  // +++ call virtul method in destructor
39  clearLocally();
40  if (mDelParent)
41  delete2(mNext)
42 }
43 
45 {
46  clearLocally();
47  if (mNext != nullptr)
48  mNext->clear();
49 }
50 
51 void ParticleContainer::moveTo(const float x, const float y)
52 {
53  if (mNext != nullptr)
54  mNext->moveTo(x, y);
55 }
#define delete2(var)
Definition: delete2.h:24
ParticleContainer(ParticleContainer *const parent, const bool delParent)
virtual void moveTo(const float x, const float y)
ParticleContainer * mNext
virtual void clearLocally()