/* orxonox - the future of 3D-vertical-scrollers Copyright (C) 2004 orx This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. ### File Specific: main-programmer: Benjamin Grauer co-programmer: ... */ #include "track_node.h" #include "null_parent.h" #include "track_manager.h" using namespace std; TrackNode* TrackNode::singletonRef = 0; TrackNode* TrackNode::getInstance () { if (!singletonRef) singletonRef = new TrackNode (); return singletonRef; } /** \brief standard constructor \todo this constructor is not jet implemented - do it */ TrackNode::TrackNode () { this->setClassName("TrackNode"); singletonRef = this; NullParent::getInstance()->addChild(this); this->trackManager = TrackManager::getInstance(); this->mode = ALL; } TrackNode::TrackNode (Vector* absCoordinate) { this->parent = NullParent::getInstance(); this->trackManager = TrackManager::getInstance(); this->mode = ALL; this->absCoordinate = *absCoordinate; } /** \brief standard deconstructor \todo this deconstructor is not jet implemented - do it */ TrackNode::~TrackNode () { singletonRef = NULL; }