VTK
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
dox
Geovis
Core
vtkGeoSource.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkGeoSource.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
15
/*-------------------------------------------------------------------------
16
Copyright 2008 Sandia Corporation.
17
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18
the U.S. Government retains certain rights in this software.
19
-------------------------------------------------------------------------*/
43
#ifndef __vtkGeoSource_h
44
#define __vtkGeoSource_h
45
46
#include "vtkGeovisCoreModule.h"
// For export macro
47
#include "
vtkObject.h
"
48
49
class
vtkAbstractTransform
;
50
class
vtkCollection
;
51
class
vtkConditionVariable
;
52
class
vtkGeoTreeNode
;
53
class
vtkMultiThreader
;
54
class
vtkMutexLock
;
55
56
class
VTKGEOVISCORE_EXPORT
vtkGeoSource
:
public
vtkObject
57
{
58
public
:
59
vtkTypeMacro(
vtkGeoSource
,
vtkObject
);
60
61
vtkGeoSource
();
62
~
vtkGeoSource
();
63
65
66
virtual
bool
FetchRoot(
vtkGeoTreeNode
* root) = 0;
67
virtual
bool
FetchChild(
vtkGeoTreeNode
* node,
int
index
,
vtkGeoTreeNode
* child) = 0;
69
71
78
virtual
void
RequestChildren(
vtkGeoTreeNode
* node);
79
virtual
vtkCollection
* GetRequestedNodes(
vtkGeoTreeNode
* node);
81
83
void
Initialize(
int
numThreads = 1);
84
86
void
ShutDown();
87
88
void
WorkerThread();
89
91
virtual
vtkAbstractTransform
*
GetTransform
() {
return
NULL; }
92
93
protected
:
94
95
vtkCollection
*
InputSet
;
96
vtkCollection
*
ProcessingSet
;
97
99
100
vtkMutexLock
*
InputSetLock
;
101
vtkMutexLock
*
ProcessingSetLock
;
102
vtkMutexLock
*
OutputSetLock
;
104
105
vtkMutexLock
*
Lock
;
106
107
vtkConditionVariable
*
Condition
;
108
109
vtkMultiThreader
*
Threader
;
110
bool
StopThread
;
111
bool
Initialized
;
112
113
//BTX
114
class
implementation;
115
implementation*
Implementation
;
116
//ETX
117
118
private
:
119
vtkGeoSource
(
const
vtkGeoSource
&);
// Not implemented
120
void
operator=(
const
vtkGeoSource
&);
// Not implemented
121
};
122
123
#endif // __vtkGeoSource_h
Generated on Thu May 24 2012 22:22:23 for VTK by
1.8.1