- Timestamp:
- Jul 28, 2010, 3:36:28 PM (14 years ago)
- Location:
- osgVisual
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
osgVisual/CMakeLists.txt
r83 r86 263 263 src/core/visual_core.cpp 264 264 src/core/osgVisual.cpp 265 # Memory Leak debugging 266 include/core/leakDetection.h 265 267 # Util 266 268 include/util/visual_util.h -
osgVisual/include/dataIO/visual_dataIO.h
r85 r86 16 16 */ 17 17 18 #include <osg/ notify>19 #include <osg/ referenced>18 #include <osg/Notify> 19 #include <osg/Referenced> 20 20 #include <osg/ArgumentParser> 21 21 -
osgVisual/src/core/osgVisual.cpp
r31 r86 15 15 */ 16 16 17 // Declare this in header. 18 //#include <windows.h> 19 #define _CRTDBG_MAP_ALLOC 20 #include <crtdbg.h> 21 17 22 #include <osg/ArgumentParser> 18 23 #include <osg/Referenced> … … 21 26 #include <visual_core.h> 22 27 28 const unsigned int MAX_NUM_EVENTS = 10; 23 29 24 const unsigned int MAX_NUM_EVENTS = 10;25 const unsigned int SWAP_BYTES_COMPARE = 0x12345678;26 30 27 31 int main(int argc, char** argv) 28 32 { 33 34 #ifdef _DEBUG 35 #include <leakDetection.h> // ugly but must be included inside the class 36 37 int tmp_flag; 38 39 HANDLE log_file = CreateFile("mem_log.txt", GENERIC_WRITE,FILE_SHARE_WRITE, 40 NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); 41 42 _CrtSetReportMode(_CRT_ASSERT,_CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW | 43 _CRTDBG_MODE_DEBUG); 44 _CrtSetReportMode(_CRT_WARN,_CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG); 45 _CrtSetReportMode(_CRT_ERROR,_CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW | 46 _CRTDBG_MODE_DEBUG); 47 48 // output to the file if not under VS 49 _CrtSetReportFile(_CRT_ASSERT, log_file); 50 _CrtSetReportFile(_CRT_WARN, log_file); 51 _CrtSetReportFile(_CRT_ERROR, log_file); 52 53 tmp_flag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); 54 tmp_flag |= _CRTDBG_ALLOC_MEM_DF; 55 tmp_flag |= _CRTDBG_DELAY_FREE_MEM_DF; 56 tmp_flag |= _CRTDBG_LEAK_CHECK_DF; 57 58 _CrtSetDbgFlag(tmp_flag); 59 #endif 60 29 61 // Use an ArgumentParser object to manage the program arguments. 30 62 osg::ArgumentParser arguments(&argc,argv); … … 36 68 core->initialize(); 37 69 70 // Set Pointer to null to destroy the objects before this function ends - otherwise memory leaks wil be detected. 71 core = NULL; 72 38 73 return 0; 39 74 } -
osgVisual/src/core/visual_core.cpp
r75 r86 15 15 */ 16 16 17 17 18 #include <visual_core.h> 18 19 … … 22 23 { 23 24 OSG_NOTIFY( osg::ALWAYS ) << "visual_core instantiated." << std::endl; 25 #include <leakDetection.h> 26 } 27 28 visual_core::~visual_core(void) 29 { 30 // shut osgVisual down 31 shutdown(); 32 33 OSG_NOTIFY( osg::ALWAYS ) << "visual_core destroyed." << std::endl; 34 35 } 36 37 void visual_core::initialize() 38 { 39 OSG_NOTIFY( osg::ALWAYS ) << "Initialize visual_core..." << std::endl; 40 41 // Configure osg to use KdTrees 42 osgDB::Registry::instance()->setBuildKdTreesHint(osgDB::ReaderWriter::Options::BUILD_KDTREES); 24 43 25 44 // Setup pathes … … 34 53 35 54 // Test memory leak (todo) 36 //double* test = new double[1000];55 double* test = new double[1000]; 37 56 38 57 #ifdef USE_SPACENAVIGATOR … … 41 60 42 61 //osg::DisplaySettings::instance()->setNumOfDatabaseThreadsHint( 8 ); 43 }44 45 visual_core::~visual_core(void)46 {47 // shut osgVisual down48 shutdown();49 50 OSG_NOTIFY( osg::ALWAYS ) << "visual_core destroyed." << std::endl;51 52 }53 54 void visual_core::initialize()55 {56 OSG_NOTIFY( osg::ALWAYS ) << "Initialize visual_core..." << std::endl;57 58 // Load terrain59 //loadTerrain(arguments);60 62 61 63 // Show model … … 73 75 #ifdef USE_SKY_SILVERLINING 74 76 // Initialize sky 75 OSG_NOTIFY( osg::ALWAYS ) << "Using Sky without distortion." << std::endl;76 77 sky = new visual_skySilverLining( viewer ); 77 78 sky->init(distortedSceneGraph, rootNode); // Without distortedSceneGraph=NULL … … 156 157 } 157 158 #endif 159 160 // Destroy osgViewer 161 viewer = NULL; 158 162 } 159 163
Note: See TracChangeset
for help on using the changeset viewer.