root/OpenSceneGraph/trunk/src/osgWrappers/osgDB/DatabasePager.cpp @ 10174

Revision 10174, 32.2 kB (checked in by robert, 6 years ago)

Moved Registry::ReadFileCallback? + WriteFileCallback?, and osgDB::ReaderWriter::Options into their own separate Options file and into the osgDB namespace.

Introduced a new callback osgDB::FindFileCallback? that overrides the default behavior of findDataFile/findLibraryFile.

Introduced support for assigning ReaderWriter::Options directory to PagedLOD.

Introduced new osgDB::FileLocationCallback? for assistancing the DatabasePager? to know when a file is hosted on a local or remote file system.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1// ***************************************************************************
2//
3//   Generated automatically by genwrapper.
4//   Please DO NOT EDIT this file!
5//
6// ***************************************************************************
7
8#include <osgIntrospection/ReflectionMacros>
9#include <osgIntrospection/TypedMethodInfo>
10#include <osgIntrospection/StaticMethodInfo>
11#include <osgIntrospection/Attributes>
12
13#include <OpenThreads/Thread>
14#include <osg/FrameStamp>
15#include <osg/GraphicsContext>
16#include <osg/Group>
17#include <osg/Node>
18#include <osg/PagedLOD>
19#include <osg/Referenced>
20#include <osg/State>
21#include <osgDB/DatabasePager>
22
23// Must undefine IN and OUT macros defined in Windows headers
24#ifdef IN
25#undef IN
26#endif
27#ifdef OUT
28#undef OUT
29#endif
30
31BEGIN_ENUM_REFLECTOR(osgDB::DatabasePager::DrawablePolicy)
32        I_DeclaringFile("osgDB/DatabasePager");
33        I_EnumLabel(osgDB::DatabasePager::DO_NOT_MODIFY_DRAWABLE_SETTINGS);
34        I_EnumLabel(osgDB::DatabasePager::USE_DISPLAY_LISTS);
35        I_EnumLabel(osgDB::DatabasePager::USE_VERTEX_BUFFER_OBJECTS);
36        I_EnumLabel(osgDB::DatabasePager::USE_VERTEX_ARRAYS);
37END_REFLECTOR
38
39TYPE_NAME_ALIAS(OpenThreads::Thread::ThreadPriority, osgDB::DatabasePager::ThreadPriority)
40
41TYPE_NAME_ALIAS(std::list< osg::ref_ptr< osg::PagedLOD > >, osgDB::DatabasePager::PagedLODList)
42
43TYPE_NAME_ALIAS(std::set< osg::ref_ptr< osg::StateSet > >, osgDB::DatabasePager::StateSetList)
44
45TYPE_NAME_ALIAS(std::vector< osg::ref_ptr< osg::Drawable > >, osgDB::DatabasePager::DrawableList)
46
47TYPE_NAME_ALIAS(std::pair< osgDB::DatabasePager::StateSetList COMMA  osgDB::DatabasePager::DrawableList >, osgDB::DatabasePager::DataToCompile)
48
49TYPE_NAME_ALIAS(std::map< unsigned int COMMA  osgDB::DatabasePager::DataToCompile >, osgDB::DatabasePager::DataToCompileMap)
50
51TYPE_NAME_ALIAS(std::set< unsigned int >, osgDB::DatabasePager::ActiveGraphicsContexts)
52
53TYPE_NAME_ALIAS(std::vector< osg::observer_ptr< osg::GraphicsContext > >, osgDB::DatabasePager::CompileGraphicsContexts)
54
55BEGIN_OBJECT_REFLECTOR(osgDB::DatabasePager)
56        I_DeclaringFile("osgDB/DatabasePager");
57        I_BaseType(osg::NodeVisitor::DatabaseRequestHandler);
58        I_Constructor0(____DatabasePager,
59                       "",
60                       "");
61        I_Constructor1(IN, const osgDB::DatabasePager &, rhs,
62                       Properties::NON_EXPLICIT,
63                       ____DatabasePager__C5_DatabasePager_R1,
64                       "",
65                       "");
66        I_Method0(osgDB::DatabasePager *, clone,
67                  Properties::VIRTUAL,
68                  __DatabasePager_P1__clone,
69                  "Create a shallow copy on the DatabasePager. ",
70                  "");
71        I_Method6(void, requestNodeFile, IN, const std::string &, fileName, IN, osg::Group *, group, IN, float, priority, IN, const osg::FrameStamp *, framestamp, IN, osg::ref_ptr< osg::Referenced > &, databaseRequest, IN, const osg::Referenced *, options,
72                  Properties::VIRTUAL,
73                  __void__requestNodeFile__C5_std_string_R1__osg_Group_P1__float__C5_osg_FrameStamp_P1__osg_ref_ptrT1_osg_Referenced__R1__C5_osg_Referenced_P1,
74                  "Add a request to load a node file to end the the database request list. ",
75                  "");
76        I_Method1(int, setSchedulePriority, IN, OpenThreads::Thread::ThreadPriority, priority,
77                  Properties::NON_VIRTUAL,
78                  __int__setSchedulePriority__OpenThreads_Thread_ThreadPriority,
79                  "Set the priority of the database pager thread(s). ",
80                  "");
81        I_Method0(int, cancel,
82                  Properties::VIRTUAL,
83                  __int__cancel,
84                  "Cancel the database pager thread(s). ",
85                  "");
86        I_Method0(bool, isRunning,
87                  Properties::VIRTUAL,
88                  __bool__isRunning,
89                  "",
90                  "");
91        I_Method0(void, clear,
92                  Properties::VIRTUAL,
93                  __void__clear,
94                  "Clear all internally cached structures. ",
95                  "");
96        I_MethodWithDefaults2(void, setUpThreads, IN, unsigned int, totalNumThreads, 2, IN, unsigned int, numHttpThreads, 1,
97                              Properties::NON_VIRTUAL,
98                              __void__setUpThreads__unsigned_int__unsigned_int,
99                              "",
100                              "");
101        I_Method2(unsigned int, addDatabaseThread, IN, osgDB::DatabasePager::DatabaseThread::Mode, mode, IN, const std::string &, name,
102                  Properties::NON_VIRTUAL,
103                  __unsigned_int__addDatabaseThread__DatabaseThread_Mode__C5_std_string_R1,
104                  "",
105                  "");
106        I_Method1(osgDB::DatabasePager::DatabaseThread *, getDatabaseThread, IN, unsigned int, i,
107                  Properties::NON_VIRTUAL,
108                  __DatabaseThread_P1__getDatabaseThread__unsigned_int,
109                  "",
110                  "");
111        I_Method1(const osgDB::DatabasePager::DatabaseThread *, getDatabaseThread, IN, unsigned int, i,
112                  Properties::NON_VIRTUAL,
113                  __C5_DatabaseThread_P1__getDatabaseThread__unsigned_int,
114                  "",
115                  "");
116        I_Method0(unsigned int, getNumDatabaseThreads,
117                  Properties::NON_VIRTUAL,
118                  __unsigned_int__getNumDatabaseThreads,
119                  "",
120                  "");
121        I_Method1(void, setDatabasePagerThreadPause, IN, bool, pause,
122                  Properties::NON_VIRTUAL,
123                  __void__setDatabasePagerThreadPause__bool,
124                  "Set whether the database pager thread should be paused or not. ",
125                  "");
126        I_Method0(bool, getDatabasePagerThreadPause,
127                  Properties::NON_VIRTUAL,
128                  __bool__getDatabasePagerThreadPause,
129                  "Get whether the database pager thread should is paused or not. ",
130                  "");
131        I_Method1(void, setAcceptNewDatabaseRequests, IN, bool, acceptNewRequests,
132                  Properties::NON_VIRTUAL,
133                  __void__setAcceptNewDatabaseRequests__bool,
134                  "Set whether new database request calls are accepted or ignored. ",
135                  "");
136        I_Method0(bool, getAcceptNewDatabaseRequests,
137                  Properties::NON_VIRTUAL,
138                  __bool__getAcceptNewDatabaseRequests,
139                  "Get whether new database request calls are accepted or ignored. ",
140                  "");
141        I_Method0(int, getNumFramesActive,
142                  Properties::NON_VIRTUAL,
143                  __int__getNumFramesActive,
144                  "Get the number of frames that are currently active. ",
145                  "");
146        I_Method1(void, signalBeginFrame, IN, const osg::FrameStamp *, framestamp,
147                  Properties::VIRTUAL,
148                  __void__signalBeginFrame__C5_osg_FrameStamp_P1,
149                  "Signal the database thread that the update, cull and draw has begun for a new frame. ",
150                  "Note, this is called by the application so that the database pager can go to sleep while the CPU is busy on the main rendering threads. ");
151        I_Method0(void, signalEndFrame,
152                  Properties::VIRTUAL,
153                  __void__signalEndFrame,
154                  "Signal the database thread that the update, cull and draw dispatch has completed. ",
155                  "Note, this is called by the application so that the database pager can go to wake back up now the main rendering threads are iddle waiting for the next frame. ");
156        I_MethodWithDefaults2(void, registerPagedLODs, IN, osg::Node *, subgraph, , IN, int, frameNumber, 0,
157                              Properties::VIRTUAL,
158                              __void__registerPagedLODs__osg_Node_P1__int,
159                              "Find all PagedLOD nodes in a subgraph and register them with the DatabasePager so it can keep track of expired nodes. ",
160                              "note, should be only be called from the update thread. ");
161        I_Method1(void, setDoPreCompile, IN, bool, flag,
162                  Properties::NON_VIRTUAL,
163                  __void__setDoPreCompile__bool,
164                  "Set whether the database pager should pre compile OpenGL objects before allowing them to be merged into the scene graph. ",
165                  "Pre compilation helps reduce the chances of frame drops, but also slows the speed at which tiles are merged as they have to be compiled first. ");
166        I_Method0(bool, getDoPreCompile,
167                  Properties::NON_VIRTUAL,
168                  __bool__getDoPreCompile,
169                  "Get whether the database pager should pre compile OpenGL objects before allowing them to be merged into the scene graph. ",
170                  "");
171        I_Method1(void, setTargetFrameRate, IN, double, tfr,
172                  Properties::NON_VIRTUAL,
173                  __void__setTargetFrameRate__double,
174                  "Set the target frame rate that the DatabasePager should assume. ",
175                  "Typically one would set this to the value refresh rate of your display system i.e. 60Hz. Default value is 100. Usage notes. The TargetFrameRate and the MinimumTimeAvailableForGLCompileAndDeletePerFrame parameters are not directly used by DatabasePager, but are should be used as a guide for how long to set aside per frame for compiling and deleting OpenGL objects - ie. the value to use when calling DatabasePager::compileGLObjectgs(state,availableTime,). The longer amount of time to set aside cthe faster databases will be paged in but with increased chance of frame drops, the lower the amount of time the set aside the slower databases will paged it but with better chance of avoid any frame drops. The default values are chosen to achieve the later when running on a modern mid to high end PC. The way to compute the amount of available time use a scheme such as : availableTime = maximum(1.0/targetFrameRate - timeTakenDuringUpdateCullAndDraw, minimumTimeAvailableForGLCompileAndDeletePerFrame). ");
176        I_Method0(double, getTargetFrameRate,
177                  Properties::NON_VIRTUAL,
178                  __double__getTargetFrameRate,
179                  "Get the target frame rate that the DatabasePager should assume. ",
180                  "");
181        I_Method1(void, setMinimumTimeAvailableForGLCompileAndDeletePerFrame, IN, double, ta,
182                  Properties::NON_VIRTUAL,
183                  __void__setMinimumTimeAvailableForGLCompileAndDeletePerFrame__double,
184                  "Set the minimum amount of time (in seconds) that should be made available for compiling and delete OpenGL objects per frame. ",
185                  "Default value is 0.001 (1 millisecond). For usage see notes in setTargetFrameRate. ");
186        I_Method0(double, getMinimumTimeAvailableForGLCompileAndDeletePerFrame,
187                  Properties::NON_VIRTUAL,
188                  __double__getMinimumTimeAvailableForGLCompileAndDeletePerFrame,
189                  "Get the minimum amount of time that should be made available for compiling and delete OpenGL objects per frame. ",
190                  "For usage see notes in setTargetFrameRate. ");
191        I_Method1(void, setMaximumNumOfObjectsToCompilePerFrame, IN, unsigned int, num,
192                  Properties::NON_VIRTUAL,
193                  __void__setMaximumNumOfObjectsToCompilePerFrame__unsigned_int,
194                  "Set the maximum number of OpenGL objects that the page should attempt to compile per frame. ",
195                  "Note, Lower values reduces chances of a frame drop but lower the rate that database will be paged in at. Default value is 8. ");
196        I_Method0(unsigned int, getMaximumNumOfObjectsToCompilePerFrame,
197                  Properties::NON_VIRTUAL,
198                  __unsigned_int__getMaximumNumOfObjectsToCompilePerFrame,
199                  "Get the maximum number of OpenGL objects that the page should attempt to compile per frame. ",
200                  "");
201        I_Method1(void, setTargetMaximumNumberOfPageLOD, IN, unsigned int, target,
202                  Properties::NON_VIRTUAL,
203                  __void__setTargetMaximumNumberOfPageLOD__unsigned_int,
204                  "Set the target maximum number of PagedLOD to maintain in memory. ",
205                  "Note, if more than the target number are required for rendering of a frame then these active PagedLOD are excempt from being expiried. But once the number of active drops back below the target the inactive PagedLOD will be trimmed back to the target number. ");
206        I_Method0(unsigned int, getTargetMaximumNumberOfPageLOD,
207                  Properties::NON_VIRTUAL,
208                  __unsigned_int__getTargetMaximumNumberOfPageLOD,
209                  "Get the target maximum number of PagedLOD to maintain in memory. ",
210                  "");
211        I_Method1(void, setExpiryDelay, IN, double, expiryDelay,
212                  Properties::NON_VIRTUAL,
213                  __void__setExpiryDelay__double,
214                  "Deprecated. ",
215                  "");
216        I_Method0(double, getExpiryDelay,
217                  Properties::NON_VIRTUAL,
218                  __double__getExpiryDelay,
219                  "Deprecated. ",
220                  "");
221        I_Method1(void, setExpiryFrames, IN, int, expiryFrames,
222                  Properties::NON_VIRTUAL,
223                  __void__setExpiryFrames__int,
224                  "Deprecated. ",
225                  "");
226        I_Method0(int, getExpiryFrames,
227                  Properties::NON_VIRTUAL,
228                  __int__getExpiryFrames,
229                  "Deprecated. ",
230                  "");
231        I_Method1(void, setReleaseDelay, IN, double, releaseDelay,
232                  Properties::NON_VIRTUAL,
233                  __void__setReleaseDelay__double,
234                  "Deprecated. ",
235                  "");
236        I_Method0(double, getReleaseDelay,
237                  Properties::NON_VIRTUAL,
238                  __double__getReleaseDelay,
239                  "Deprecated. ",
240                  "");
241        I_Method1(void, setReleaseFrames, IN, int, releaseFrames,
242                  Properties::NON_VIRTUAL,
243                  __void__setReleaseFrames__int,
244                  "Deprecated. ",
245                  "");
246        I_Method0(int, getReleaseFrames,
247                  Properties::NON_VIRTUAL,
248                  __int__getReleaseFrames,
249                  "Deprecated. ",
250                  "");
251        I_Method1(void, setDeleteRemovedSubgraphsInDatabaseThread, IN, bool, flag,
252                  Properties::NON_VIRTUAL,
253                  __void__setDeleteRemovedSubgraphsInDatabaseThread__bool,
254                  "Set whether the removed subgraphs should be deleted in the database thread or not. ",
255                  "");
256        I_Method0(bool, getDeleteRemovedSubgraphsInDatabaseThread,
257                  Properties::NON_VIRTUAL,
258                  __bool__getDeleteRemovedSubgraphsInDatabaseThread,
259                  "Get whether the removed subgraphs should be deleted in the database thread or not. ",
260                  "");
261        I_Method1(void, setDrawablePolicy, IN, osgDB::DatabasePager::DrawablePolicy, policy,
262                  Properties::NON_VIRTUAL,
263                  __void__setDrawablePolicy__DrawablePolicy,
264                  "Set how loaded drawables should be handled w.r.t their display list/vertex buffer object/vertex array settings. ",
265                  "");
266        I_Method0(osgDB::DatabasePager::DrawablePolicy, getDrawablePolicy,
267                  Properties::NON_VIRTUAL,
268                  __DrawablePolicy__getDrawablePolicy,
269                  "Get how loaded drawables should be handled w.r.t their display list/vertex buffer object/vertex array settings. ",
270                  "");
271        I_Method2(void, setUnrefImageDataAfterApplyPolicy, IN, bool, changeAutoUnRef, IN, bool, valueAutoUnRef,
272                  Properties::NON_VIRTUAL,
273                  __void__setUnrefImageDataAfterApplyPolicy__bool__bool,
274                  "Set whether newly loaded textures should have their UnrefImageDataAfterApply set to a specified value. ",
275                  "");
276        I_Method2(void, getUnrefImageDataAfterApplyPolicy, IN, bool &, changeAutoUnRef, IN, bool &, valueAutoUnRef,
277                  Properties::NON_VIRTUAL,
278                  __void__getUnrefImageDataAfterApplyPolicy__bool_R1__bool_R1,
279                  "Get whether newly loaded textures should have their UnrefImageDataAfterApply set to a specified value. ",
280                  "");
281        I_Method2(void, setMaxAnisotropyPolicy, IN, bool, changeAnisotropy, IN, float, valueAnisotropy,
282                  Properties::NON_VIRTUAL,
283                  __void__setMaxAnisotropyPolicy__bool__float,
284                  "Set whether newly loaded textures should have their MaxAnisotopy set to a specified value. ",
285                  "");
286        I_Method2(void, getMaxAnisotropyPolicy, IN, bool &, changeAnisotropy, IN, float &, valueAnisotropy,
287                  Properties::NON_VIRTUAL,
288                  __void__getMaxAnisotropyPolicy__bool_R1__float_R1,
289                  "Set whether newly loaded textures should have their MaxAnisotopy set to a specified value. ",
290                  "");
291        I_Method0(bool, requiresUpdateSceneGraph,
292                  Properties::NON_VIRTUAL,
293                  __bool__requiresUpdateSceneGraph,
294                  "Return true if there are pending updates to the scene graph that require a call to updateSceneGraph(double). ",
295                  "");
296        I_Method1(void, updateSceneGraph, IN, const osg::FrameStamp &, frameStamp,
297                  Properties::VIRTUAL,
298                  __void__updateSceneGraph__C5_osg_FrameStamp_R1,
299                  "Merge the changes to the scene graph by calling calling removeExpiredSubgraphs then addLoadedDataToSceneGraph. ",
300                  "Note, must only be called from single thread update phase. ");
301        I_Method2(void, setCompileGLObjectsForContextID, IN, unsigned int, contextID, IN, bool, on,
302                  Properties::NON_VIRTUAL,
303                  __void__setCompileGLObjectsForContextID__unsigned_int__bool,
304                  "Turn the compilation of rendering objects for specified graphics context on (true) or off(false). ",
305                  "");
306        I_Method1(bool, getCompileGLObjectsForContextID, IN, unsigned int, contextID,
307                  Properties::NON_VIRTUAL,
308                  __bool__getCompileGLObjectsForContextID__unsigned_int,
309                  "Get whether the compilation of rendering objects for specified graphics context on (true) or off(false). ",
310                  "");
311        I_Method1(bool, requiresExternalCompileGLObjects, IN, unsigned int, contextID,
312                  Properties::NON_VIRTUAL,
313                  __bool__requiresExternalCompileGLObjects__unsigned_int,
314                  "Return true if an external draw thread should call compileGLObjects(. ",
315                  ".) or not. ");
316        I_Method0(bool, requiresCompileGLObjects,
317                  Properties::NON_VIRTUAL,
318                  __bool__requiresCompileGLObjects,
319                  "Return true if there are pending compile operations that are required. ",
320                  "If requiresCompileGLObjects() return true the application should call compileGLObjects() . ");
321        I_Method2(void, compileGLObjects, IN, osg::State &, state, IN, double &, availableTime,
322                  Properties::VIRTUAL,
323                  __void__compileGLObjects__osg_State_R1__double_R1,
324                  "Compile the rendering objects (display lists,texture objects, VBO's) on loaded subgraph. ",
325                  "note, should only be called from the draw thread. Note, must only be called from a valid graphics context. ");
326        I_Method1(void, compileAllGLObjects, IN, osg::State &, state,
327                  Properties::VIRTUAL,
328                  __void__compileAllGLObjects__osg_State_R1,
329                  "Compile the rendering objects (display lists,texture objects, VBO's) on loaded subgraph. ",
330                  "note, should only be called from the draw thread. Note, must only be called from a valid graphics context. ");
331        I_Method0(unsigned int, getFileRequestListSize,
332                  Properties::NON_VIRTUAL,
333                  __unsigned_int__getFileRequestListSize,
334                  "Report how many items are in the _fileRequestList queue. ",
335                  "");
336        I_Method0(unsigned int, getDataToCompileListSize,
337                  Properties::NON_VIRTUAL,
338                  __unsigned_int__getDataToCompileListSize,
339                  "Report how many items are in the _dataToCompileList queue. ",
340                  "");
341        I_Method0(unsigned int, getDataToMergeListSize,
342                  Properties::NON_VIRTUAL,
343                  __unsigned_int__getDataToMergeListSize,
344                  "Report how many items are in the _dataToCompileList queue. ",
345                  "");
346        I_Method0(bool, getRequestsInProgress,
347                  Properties::NON_VIRTUAL,
348                  __bool__getRequestsInProgress,
349                  "Report whether any requests are in the pager. ",
350                  "");
351        I_Method0(double, getMinimumTimeToMergeTile,
352                  Properties::NON_VIRTUAL,
353                  __double__getMinimumTimeToMergeTile,
354                  "Get the minimum time between the first request for a tile to be loaded and the time of its merge into the main scene graph. ",
355                  "");
356        I_Method0(double, getMaximumTimeToMergeTile,
357                  Properties::NON_VIRTUAL,
358                  __double__getMaximumTimeToMergeTile,
359                  "Get the maximum time between the first request for a tile to be loaded and the time of its merge into the main scene graph. ",
360                  "");
361        I_Method0(double, getAverageTimeToMergeTiles,
362                  Properties::NON_VIRTUAL,
363                  __double__getAverageTimeToMergeTiles,
364                  "Get the average time between the first request for a tile to be loaded and the time of its merge into the main scene graph. ",
365                  "");
366        I_Method0(void, resetStats,
367                  Properties::NON_VIRTUAL,
368                  __void__resetStats,
369                  "Reset the Stats variables. ",
370                  "");
371        I_StaticMethod0(osg::ref_ptr< osgDB::DatabasePager > &, prototype,
372                        __osg_ref_ptrT1_DatabasePager__R1__prototype_S,
373                        "get the prototype singleton used by DatabasePager::create(). ",
374                        "");
375        I_StaticMethod0(osgDB::DatabasePager *, create,
376                        __DatabasePager_P1__create_S,
377                        "create a DatabasePager by cloning DatabasePager::prototype(). ",
378                        "");
379        I_ProtectedMethod1(bool, isCompiled, IN, osg::Texture *, texture,
380                           Properties::NON_VIRTUAL,
381                           Properties::CONST,
382                           __bool__isCompiled__osg_Texture_P1,
383                           "",
384                           "");
385        I_ProtectedMethod1(bool, isCompiled, IN, osg::StateSet *, stateSet,
386                           Properties::NON_VIRTUAL,
387                           Properties::NON_CONST,
388                           __bool__isCompiled__osg_StateSet_P1,
389                           "",
390                           "");
391        I_ProtectedMethod1(bool, isCompiled, IN, const osg::Drawable *, drawable,
392                           Properties::NON_VIRTUAL,
393                           Properties::CONST,
394                           __bool__isCompiled__C5_osg_Drawable_P1,
395                           "",
396                           "");
397        I_ProtectedMethod1(void, removeExpiredSubgraphs, IN, const osg::FrameStamp &, frameStamp,
398                           Properties::VIRTUAL,
399                           Properties::NON_CONST,
400                           __void__removeExpiredSubgraphs__C5_osg_FrameStamp_R1,
401                           "Iterate through the active PagedLOD nodes children removing children which havn't been visited since specified expiryTime. ",
402                           "note, should be only be called from the update thread. ");
403        I_ProtectedMethod1(void, expiry_removeExpiredSubgraphs, IN, const osg::FrameStamp &, frameStamp,
404                           Properties::VIRTUAL,
405                           Properties::NON_CONST,
406                           __void__expiry_removeExpiredSubgraphs__C5_osg_FrameStamp_R1,
407                           "Old expiry delay based removeExpiredSubgraphs. ",
408                           "");
409        I_ProtectedMethod1(void, capped_removeExpiredSubgraphs, IN, const osg::FrameStamp &, frameStamp,
410                           Properties::VIRTUAL,
411                           Properties::NON_CONST,
412                           __void__capped_removeExpiredSubgraphs__C5_osg_FrameStamp_R1,
413                           "New capped based removeExpiredSubgraphs. ",
414                           "");
415        I_ProtectedMethod1(void, addLoadedDataToSceneGraph, IN, const osg::FrameStamp &, frameStamp,
416                           Properties::NON_VIRTUAL,
417                           Properties::NON_CONST,
418                           __void__addLoadedDataToSceneGraph__C5_osg_FrameStamp_R1,
419                           "Add the loaded data to the scene graph. ",
420                           "");
421        I_SimpleProperty(bool, AcceptNewDatabaseRequests,
422                         __bool__getAcceptNewDatabaseRequests,
423                         __void__setAcceptNewDatabaseRequests__bool);
424        I_SimpleProperty(double, AverageTimeToMergeTiles,
425                         __double__getAverageTimeToMergeTiles,
426                         0);
427        I_IndexedProperty(bool, CompileGLObjectsForContextID,
428                          __bool__getCompileGLObjectsForContextID__unsigned_int,
429                          __void__setCompileGLObjectsForContextID__unsigned_int__bool,
430                          0);
431        I_SimpleProperty(unsigned int, DataToCompileListSize,
432                         __unsigned_int__getDataToCompileListSize,
433                         0);
434        I_SimpleProperty(unsigned int, DataToMergeListSize,
435                         __unsigned_int__getDataToMergeListSize,
436                         0);
437        I_SimpleProperty(bool, DatabasePagerThreadPause,
438                         __bool__getDatabasePagerThreadPause,
439                         __void__setDatabasePagerThreadPause__bool);
440        I_ArrayProperty(osgDB::DatabasePager::DatabaseThread *, DatabaseThread,
441                        __DatabaseThread_P1__getDatabaseThread__unsigned_int,
442                        0,
443                        __unsigned_int__getNumDatabaseThreads,
444                        0,
445                        0,
446                        0);
447        I_SimpleProperty(bool, DeleteRemovedSubgraphsInDatabaseThread,
448                         __bool__getDeleteRemovedSubgraphsInDatabaseThread,
449                         __void__setDeleteRemovedSubgraphsInDatabaseThread__bool);
450        I_SimpleProperty(bool, DoPreCompile,
451                         __bool__getDoPreCompile,
452                         __void__setDoPreCompile__bool);
453        I_SimpleProperty(osgDB::DatabasePager::DrawablePolicy, DrawablePolicy,
454                         __DrawablePolicy__getDrawablePolicy,
455                         __void__setDrawablePolicy__DrawablePolicy);
456        I_SimpleProperty(double, ExpiryDelay,
457                         __double__getExpiryDelay,
458                         __void__setExpiryDelay__double);
459        I_SimpleProperty(int, ExpiryFrames,
460                         __int__getExpiryFrames,
461                         __void__setExpiryFrames__int);
462        I_SimpleProperty(unsigned int, FileRequestListSize,
463                         __unsigned_int__getFileRequestListSize,
464                         0);
465        I_SimpleProperty(unsigned int, MaximumNumOfObjectsToCompilePerFrame,
466                         __unsigned_int__getMaximumNumOfObjectsToCompilePerFrame,
467                         __void__setMaximumNumOfObjectsToCompilePerFrame__unsigned_int);
468        I_SimpleProperty(double, MaximumTimeToMergeTile,
469                         __double__getMaximumTimeToMergeTile,
470                         0);
471        I_SimpleProperty(double, MinimumTimeAvailableForGLCompileAndDeletePerFrame,
472                         __double__getMinimumTimeAvailableForGLCompileAndDeletePerFrame,
473                         __void__setMinimumTimeAvailableForGLCompileAndDeletePerFrame__double);
474        I_SimpleProperty(double, MinimumTimeToMergeTile,
475                         __double__getMinimumTimeToMergeTile,
476                         0);
477        I_SimpleProperty(double, ReleaseDelay,
478                         __double__getReleaseDelay,
479                         __void__setReleaseDelay__double);
480        I_SimpleProperty(int, ReleaseFrames,
481                         __int__getReleaseFrames,
482                         __void__setReleaseFrames__int);
483        I_SimpleProperty(bool, RequestsInProgress,
484                         __bool__getRequestsInProgress,
485                         0);
486        I_SimpleProperty(OpenThreads::Thread::ThreadPriority, SchedulePriority,
487                         0,
488                         __int__setSchedulePriority__OpenThreads_Thread_ThreadPriority);
489        I_SimpleProperty(double, TargetFrameRate,
490                         __double__getTargetFrameRate,
491                         __void__setTargetFrameRate__double);
492        I_SimpleProperty(unsigned int, TargetMaximumNumberOfPageLOD,
493                         __unsigned_int__getTargetMaximumNumberOfPageLOD,
494                         __void__setTargetMaximumNumberOfPageLOD__unsigned_int);
495END_REFLECTOR
496
497BEGIN_ENUM_REFLECTOR(osgDB::DatabasePager::DatabaseThread::Mode)
498        I_DeclaringFile("osgDB/DatabasePager");
499        I_EnumLabel(osgDB::DatabasePager::DatabaseThread::HANDLE_ALL_REQUESTS);
500        I_EnumLabel(osgDB::DatabasePager::DatabaseThread::HANDLE_NON_HTTP);
501        I_EnumLabel(osgDB::DatabasePager::DatabaseThread::HANDLE_ONLY_HTTP);
502END_REFLECTOR
503
504BEGIN_OBJECT_REFLECTOR(osgDB::DatabasePager::DatabaseThread)
505        I_DeclaringFile("osgDB/DatabasePager");
506        I_BaseType(osg::Referenced);
507        I_BaseType(OpenThreads::Thread);
508        I_Constructor3(IN, osgDB::DatabasePager *, pager, IN, osgDB::DatabasePager::DatabaseThread::Mode, mode, IN, const std::string &, name,
509                       ____DatabaseThread__DatabasePager_P1__Mode__C5_std_string_R1,
510                       "",
511                       "");
512        I_Constructor2(IN, const osgDB::DatabasePager::DatabaseThread &, dt, IN, osgDB::DatabasePager *, pager,
513                       ____DatabaseThread__C5_DatabaseThread_R1__DatabasePager_P1,
514                       "",
515                       "");
516        I_Method1(void, setDone, IN, bool, done,
517                  Properties::NON_VIRTUAL,
518                  __void__setDone__bool,
519                  "",
520                  "");
521        I_Method0(bool, getDone,
522                  Properties::NON_VIRTUAL,
523                  __bool__getDone,
524                  "",
525                  "");
526        I_Method1(void, setActive, IN, bool, active,
527                  Properties::NON_VIRTUAL,
528                  __void__setActive__bool,
529                  "",
530                  "");
531        I_Method0(bool, getActive,
532                  Properties::NON_VIRTUAL,
533                  __bool__getActive,
534                  "",
535                  "");
536        I_Method0(int, cancel,
537                  Properties::VIRTUAL,
538                  __int__cancel,
539                  "Cancel the thread. ",
540                  "Equivalent to SIGKILL.0 if normal, -1 if errno set, errno code otherwise.  ");
541        I_Method0(void, run,
542                  Properties::VIRTUAL,
543                  __void__run,
544                  "Thread's run method. ",
545                  "Must be implemented by derived classes. This is where the action happens. ");
546        I_SimpleProperty(bool, Active,
547                         __bool__getActive,
548                         __void__setActive__bool);
549        I_SimpleProperty(bool, Done,
550                         __bool__getDone,
551                         __void__setDone__bool);
552END_REFLECTOR
553
554BEGIN_OBJECT_REFLECTOR(osg::observer_ptr< osg::GraphicsContext >)
555        I_DeclaringFile("osg/observer_ptr");
556        I_BaseType(osg::Observer);
557        I_Constructor0(____observer_ptr,
558                       "",
559                       "");
560        I_Constructor1(IN, osg::GraphicsContext *, t,
561                       Properties::NON_EXPLICIT,
562                       ____observer_ptr__T_P1,
563                       "",
564                       "");
565        I_Constructor1(IN, const osg::observer_ptr< osg::GraphicsContext > &, rp,
566                       Properties::NON_EXPLICIT,
567                       ____observer_ptr__C5_observer_ptr_R1,
568                       "",
569                       "");
570        I_Method1(void, objectDeleted, IN, void *, x,
571                  Properties::VIRTUAL,
572                  __void__objectDeleted__void_P1,
573                  "",
574                  "");
575        I_Method0(osg::GraphicsContext *, get,
576                  Properties::NON_VIRTUAL,
577                  __T_P1__get,
578                  "",
579                  "");
580        I_Method0(bool, valid,
581                  Properties::NON_VIRTUAL,
582                  __bool__valid,
583                  "",
584                  "");
585        I_SimpleProperty(osg::GraphicsContext *, ,
586                         __T_P1__get,
587                         0);
588END_REFLECTOR
589
590BEGIN_VALUE_REFLECTOR(osg::ref_ptr< osg::PagedLOD >)
591        I_DeclaringFile("osg/ref_ptr");
592        I_Constructor0(____ref_ptr,
593                       "",
594                       "");
595        I_Constructor1(IN, osg::PagedLOD *, ptr,
596                       Properties::NON_EXPLICIT,
597                       ____ref_ptr__T_P1,
598                       "",
599                       "");
600        I_Constructor1(IN, const osg::ref_ptr< osg::PagedLOD > &, rp,
601                       Properties::NON_EXPLICIT,
602                       ____ref_ptr__C5_ref_ptr_R1,
603                       "",
604                       "");
605        I_Method0(osg::PagedLOD *, get,
606                  Properties::NON_VIRTUAL,
607                  __T_P1__get,
608                  "",
609                  "");
610        I_Method0(bool, valid,
611                  Properties::NON_VIRTUAL,
612                  __bool__valid,
613                  "",
614                  "");
615        I_Method0(osg::PagedLOD *, release,
616                  Properties::NON_VIRTUAL,
617                  __T_P1__release,
618                  "",
619                  "");
620        I_Method1(void, swap, IN, osg::ref_ptr< osg::PagedLOD > &, rp,
621                  Properties::NON_VIRTUAL,
622                  __void__swap__ref_ptr_R1,
623                  "",
624                  "");
625        I_SimpleProperty(osg::PagedLOD *, ,
626                         __T_P1__get,
627                         0);
628END_REFLECTOR
629
630BEGIN_VALUE_REFLECTOR(osg::ref_ptr< osgDB::DatabasePager >)
631        I_DeclaringFile("osg/ref_ptr");
632        I_Constructor0(____ref_ptr,
633                       "",
634                       "");
635        I_Constructor1(IN, osgDB::DatabasePager *, ptr,
636                       Properties::NON_EXPLICIT,
637                       ____ref_ptr__T_P1,
638                       "",
639                       "");
640        I_Constructor1(IN, const osg::ref_ptr< osgDB::DatabasePager > &, rp,
641                       Properties::NON_EXPLICIT,
642                       ____ref_ptr__C5_ref_ptr_R1,
643                       "",
644                       "");
645        I_Method0(osgDB::DatabasePager *, get,
646                  Properties::NON_VIRTUAL,
647                  __T_P1__get,
648                  "",
649                  "");
650        I_Method0(bool, valid,
651                  Properties::NON_VIRTUAL,
652                  __bool__valid,
653                  "",
654                  "");
655        I_Method0(osgDB::DatabasePager *, release,
656                  Properties::NON_VIRTUAL,
657                  __T_P1__release,
658                  "",
659                  "");
660        I_Method1(void, swap, IN, osg::ref_ptr< osgDB::DatabasePager > &, rp,
661                  Properties::NON_VIRTUAL,
662                  __void__swap__ref_ptr_R1,
663                  "",
664                  "");
665        I_SimpleProperty(osgDB::DatabasePager *, ,
666                         __T_P1__get,
667                         0);
668END_REFLECTOR
669
670STD_LIST_REFLECTOR(std::list< osg::ref_ptr< osg::PagedLOD > >)
671
672STD_MAP_REFLECTOR(std::map< unsigned int COMMA  osgDB::DatabasePager::DataToCompile >)
673
674STD_PAIR_REFLECTOR(std::pair< osgDB::DatabasePager::StateSetList COMMA  osgDB::DatabasePager::DrawableList >)
675
676STD_SET_REFLECTOR(std::set< osg::ref_ptr< osg::StateSet > >)
677
678STD_SET_REFLECTOR(std::set< unsigned int >)
679
680STD_VECTOR_REFLECTOR(std::vector< osg::observer_ptr< osg::GraphicsContext > >)
Note: See TracBrowser for help on using the browser.