12#ifndef TT_INCLUDE__CULLABLECLASS_H
13#define TT_INCLUDE__CULLABLECLASS_H
14#include "AABoxClass.h"
15#include "engine_vector.h"
21 inline CullLinkClass(CullSystemClass * system) { System = system;}
22 virtual ~CullLinkClass(
void) { }
23 inline void Set_Culling_System(CullSystemClass * sys) { System = sys; }
24 inline CullSystemClass * Get_Culling_System(
void) {
return System; }
26 CullSystemClass * System;
28class CullableClass :
public RefCountClass
32 virtual ~CullableClass(
void);
33 inline const AABoxClass & Get_Cull_Box(
void)
const {
return CullBox; }
34 void Set_Cull_Box(
const AABoxClass & box,
bool just_loaded =
false);
35 void Set_Culling_System(CullSystemClass * sys);
36 CullSystemClass * Get_Culling_System(
void)
const;
37 inline void Set_Cull_Link(CullLinkClass * c) { CullLink = c; }
38 inline CullLinkClass * Get_Cull_Link(
void)
const {
return CullLink; }
40 inline void Set_Next_Collected(CullableClass * c) { NextCollected = c; }
41 inline CullableClass * Get_Next_Collected(
void) {
return NextCollected; }
42 CullLinkClass * CullLink;
44 CullableClass * NextCollected;
45 CullableClass(
const CullableClass & src);
46 CullableClass & operator = (
const CullableClass & src);
47 friend class CullSystemClass;