VR-Forces Developer's Guide
Home
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
gdb
ssGdbNodeIntersector.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2005 MAK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: ssGdbNodeIntersector.h,v $ $Revision: 1.7 $ $State: Exp $
7
*********************************************************************/
8
#ifndef ssGdbNodeIntersector_H_
9
#define ssGdbNodeIntersector_H_
10
11
#include "
gdb/gdbDefines.h
"
12
#include <vlutil/vlConfig.h>
13
#include "
geometry/spatialSubdivision.h
"
14
#include "
geometry/ssFunctor.h
"
15
16
17
class
DtGdbNode
;
18
19
//
20
// The DtSsGdbNodeIntersector class is responsible for knowing how to
21
// intersect DtGdbNodes and DtSpatialSubdivisions.
22
//
23
class
DT_DLL_gdb
DtSsGdbNodeIntersector
24
{
25
public
:
26
// Constructor
27
DtSsGdbNodeIntersector
();
28
29
// Destructor
30
virtual
~
DtSsGdbNodeIntersector
();
31
32
protected
:
33
// Copy constructor & Assignment operator - not implemented
34
DtSsGdbNodeIntersector
(
const
DtSsGdbNodeIntersector
& orig);
35
DtSsGdbNodeIntersector
& operator=(
const
DtSsGdbNodeIntersector
& orig);
36
37
public
:
38
39
// Intersects the gdbNode and spatial subdivision. If the node is of type
40
// DtGroup, then it recursively intersects all the nodes children with the
41
// spatial subdivision until they are either not a DtGroup node, or are
42
// contained in a single cell. At that point, the functor is called with the
43
// appropriate cells.
44
//
45
// @returns a boolean indicating whether or not any intersection occurs.
46
virtual
bool
intersect(
DtGdbNode
* gdbNode,
47
DtSpatialSubdivision<DtGdbNode*>
& spatialSubdivision,
48
DtSsFunctor
<
DtGdbNode
*,
DtSpatialSubdivision<DtGdbNode*>::DtSpatialSubCellType
>& functor)
const
;
49
50
51
};
52
53
54
55
#endif
DtSsGdbNodeIntersector
Definition:
ssGdbNodeIntersector.h:23
DtGdbNode
Definition:
gdbNode.h:44
gdbDefines.h
DT_DLL_gdb
#define DT_DLL_gdb
Definition:
gdbDefines.h:25
DtSsFunctor
Definition:
ssFunctor.h:46
ssFunctor.h
DtSpatialSubdivision< DtGdbNode * >
spatialSubdivision.h
Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (
www.mak.com
)