1 (* Copyright (C) Doom 2D: Forever Developers
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, version 3 of the License ONLY.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program. If not, see <http://www.gnu.org/licenses/>.
14 *)
15 {$INCLUDE ../../../shared/a_modes.inc}
18 interface
20 type
22 private
27 public
48 public
52 (* never free TAtlasNode directly, use Dealloc method. *)
59 private
64 public
70 implementation
73 begin
75 begin
83 begin
87 (* --------- TNode --------- *)
90 begin
96 begin
99 begin
115 begin
122 begin
127 begin
131 end
132 else
133 begin
135 end
136 end
140 begin
145 begin
149 (* --------- TAtlas --------- *)
152 begin
161 begin
168 begin
173 begin
178 begin
184 begin
189 begin
195 end
197 begin
199 end
201 begin
204 end
205 else
206 begin
210 begin
211 (* failed to allocate nodes *)
219 end
220 else
221 begin
225 begin
234 end
235 else
236 begin
247 end
248 end
253 begin
258 begin
263 result := n