OpenNI 1.5.4: XnNode.h Source File

OpenNI

OpenNI 1.5.4
XnNode.h
Go to the documentation of this file.
00001 /****************************************************************************
00002 *                                                                           *
00003 *  OpenNI 1.x Alpha                                                         *
00004 *  Copyright (C) 2011 PrimeSense Ltd.                                       *
00005 *                                                                           *
00006 *  This file is part of OpenNI.                                             *
00007 *                                                                           *
00008 *  OpenNI is free software: you can redistribute it and/or modify           *
00009 *  it under the terms of the GNU Lesser General Public License as published *
00010 *  by the Free Software Foundation, either version 3 of the License, or     *
00011 *  (at your option) any later version.                                      *
00012 *                                                                           *
00013 *  OpenNI is distributed in the hope that it will be useful,                *
00014 *  but WITHOUT ANY WARRANTY; without even the implied warranty of           *
00015 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the             *
00016 *  GNU Lesser General Public License for more details.                      *
00017 *                                                                           *
00018 *  You should have received a copy of the GNU Lesser General Public License *
00019 *  along with OpenNI. If not, see <http://www.gnu.org/licenses/>.           *
00020 *                                                                           *
00021 ****************************************************************************/
00022 #ifndef _XN_NODE_H_
00023 #define _XN_NODE_H_
00024 
00025 //---------------------------------------------------------------------------
00026 // Includes
00027 //---------------------------------------------------------------------------
00028 #include <XnDataTypes.h>
00029 #include <XnBaseNode.h>
00030 
00031 //---------------------------------------------------------------------------
00032 // Types
00033 //---------------------------------------------------------------------------
00037 class XnNode : protected XnBaseNode
00038 {
00039 public:
00040     static XnNode *Allocate() { return (XnNode*)xnAllocateBaseNode(); }
00041     static void Deallocate(XnNode *pNode) { xnDeallocateBaseNode((XnBaseNode*)pNode); }
00042 
00046     XnNode() { m_pNext = NULL; m_pPrevious = NULL; m_Data = NULL; }
00047 
00051     XnNode*& Next() {return (XnNode*&)m_pNext;}
00055     const XnNode* const Next() const {return (const XnNode*)m_pNext;}
00056 
00060     XnNode*& Previous() {return (XnNode*&)m_pPrevious;}
00064     const XnNode* const Previous() const {return (const XnNode*)m_pPrevious;}
00065 
00069     XnValue& Data() {return m_Data;}
00073     const XnValue& Data() const {return m_Data;}
00074 };
00075 
00076 #endif // _XN_NODE_H_
Generated on Wed May 16 2012 10:16:05 for OpenNI 1.5.4 by   doxygen 1.7.5.1