1 /*---------------------------------------------------------------------------*\
5 * Copyright (C) 2000-2002 by the OpenSG Forum *
9 * contact: dirk@opensg.org, gerrit.voss@vossg.org, jbehr@zgdv.de *
11 \*---------------------------------------------------------------------------*/
12 /*---------------------------------------------------------------------------*\
15 * This library is free software; you can redistribute it and/or modify it *
16 * under the terms of the GNU Library General Public License as published *
17 * by the Free Software Foundation, version 2. *
19 * This library is distributed in the hope that it will be useful, but *
20 * WITHOUT ANY WARRANTY; without even the implied warranty of *
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
22 * Library General Public License for more details. *
24 * You should have received a copy of the GNU Library General Public *
25 * License along with this library; if not, write to the Free Software *
26 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *
28 \*---------------------------------------------------------------------------*/
29 /*---------------------------------------------------------------------------*\
37 \*---------------------------------------------------------------------------*/
39 //---------------------------------------------------------------------------
41 //---------------------------------------------------------------------------
45 /***************************************************************************\
47 \***************************************************************************/
50 /***************************************************************************\
52 \***************************************************************************/
55 /***************************************************************************\
57 \***************************************************************************/
60 /*-------------------------------------------------------------------------*\
62 \*-------------------------------------------------------------------------*/
64 /*-------------------------------------------------------------------------*\
66 \*-------------------------------------------------------------------------*/
69 void HashSorter::Level3Sorter::clear(void)
77 void HashSorter::Level3Sorter::init(void)
79 _mLevelMap.set_empty_key (0xFFFF);
80 _mLevelMap.set_deleted_key(0xFFFE);
86 void HashSorter::Level2Sorter::clear(void)
94 void HashSorter::Level2Sorter::init(void)
96 _mLevelMap.set_empty_key (0xFFFF);
97 _mLevelMap.set_deleted_key(0xFFFE);
103 void HashSorter::Level1Sorter::clear(void)
111 void HashSorter::Level1Sorter::init(void)
113 _mLevelMap.set_empty_key (0xFFFF);
114 _mLevelMap.set_deleted_key(0xFFFE);
120 void HashSorter::Level1Sorter::setupRoot(RenderTreeNode *pRoot)
122 OSG_ASSERT(_pRoot == NULL);
128 void HashSorter::initLevel2Sorter(Level2Sorter *pElement)
134 void HashSorter::initLevel3Sorter(Level3Sorter *pElement)
139 /*-------------------------------------------------------------------------*\
141 \*-------------------------------------------------------------------------*/
143 /***************************************************************************\
145 \***************************************************************************/
147 /*-------------------------------------------------------------------------*\
149 \*-------------------------------------------------------------------------*/
152 void HashSorter::reset(void)
154 _oLevel3Pool.freeAll();
155 _oLevel2Pool.freeAll();
157 _oLevel1Sorter.clear();
161 void HashSorter::setupLevel1Root(RenderTreeNode *pRoot)
163 return _oLevel1Sorter.setupRoot(pRoot);
167 /*------------- constructors & destructors --------------------------------*/
169 /*------------------------------ access -----------------------------------*/
171 /*---------------------------- properties ---------------------------------*/
173 /*-------------------------- your_category---------------------------------*/
175 /*-------------------------- assignment -----------------------------------*/
177 /*-------------------------- comparison -----------------------------------*/
179 /*-------------------------------------------------------------------------*\
181 \*-------------------------------------------------------------------------*/
183 /*-------------------------------------------------------------------------*\
185 \*-------------------------------------------------------------------------*/