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

Revision 10171, 32.6 kB (checked in by robert, 5 years ago)

Refactored the Registry::ReadFileCallback?, WriteFileCallback? and ReaderWriter::Options to they are now defined in their own header and in the osgDB namespace.

Introduced a new FindFileCallback? to Registry to compliement the existing ReadFileCallback? and WriteFileCallback?.

Added support for assign Find, Read and WriteFileCallbacks? to osdDB::Options to enable plugins/applications to override the callbacks just for that
read/write call and any nested file operations

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