David Williams 
							
						 
					 
					
						
						
							
						
						acf5bef5e7 
					 
					
						
						
							
							Merge branch 'feature/large-volume-tidying' into develop  
						
						
						
						
					 
					
						2013-08-01 16:34:38 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						e485265dd8 
					 
					
						
						
							
							Fixes to allow the SWIG/Python bindings to build again.  
						
						
						
						
					 
					
						2013-08-01 16:08:44 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						dcf86a905c 
					 
					
						
						
							
							Split Block, CompressedBlock and UncompressedBlock into separate files. It's tidier, and maybe better for SWIG?  
						
						
						
						
					 
					
						2013-08-01 15:32:12 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						6f17e0faa6 
					 
					
						
						
							
							The 'Block' class is no longer considered just to be an implementation details of LargeVolume. Users may need to interact with them directly of they implement their own paging or compression systems.  
						
						
						
						
					 
					
						2013-08-01 15:19:10 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						9503d975c1 
					 
					
						
						
							
							GCC compile fixes.  
						
						
						
						
					 
					
						2013-07-31 16:37:39 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						e35b58ba18 
					 
					
						
						
							
							Fixed paging example.  
						
						
						
						
					 
					
						2013-07-31 15:49:00 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						4478e365c9 
					 
					
						
						
							
							Removed RLECompressor as the code is now in RLEBlockCompressor.  
						
						... 
						
						
						
						Things are starting to get back under control. All tests pass, and all examples except PagingExample work. 
						
						
					 
					
						2013-07-30 17:01:27 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						fa8813ba86 
					 
					
						
						
							
							FilePager now cleans up after itself.  
						
						
						
						
					 
					
						2013-07-30 16:34:40 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						d1138dcdb1 
					 
					
						
						
							
							Some new block compression code as I rework the previous code...  
						
						
						
						
					 
					
						2013-07-30 16:01:03 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						020ac9655a 
					 
					
						
						
							
							Added random prefix to filename to prevent name conflicts.  
						
						
						
						
					 
					
						2013-07-30 15:42:51 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						a4fc814a51 
					 
					
						
						
							
							Rearranging and renaming some code.  
						
						
						
						
					 
					
						2013-07-29 16:04:01 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						00fab818cc 
					 
					
						
						
							
							Added define to switch between SimpleVolume and LargeVolume in Cubiquity. This is an abuse of Typedef.h but it's a convenient location and just for temporary testing purposes. It won't get merged back into PolyVox.  
						
						
						
						
					 
					
						2013-07-28 16:45:08 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						0c8013317e 
					 
					
						
						
							
							Added asserts to catch corrupt data probably resulting from multithreading.  
						
						
						
						
					 
					
						2013-07-28 16:43:43 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						a10fcf8ecc 
					 
					
						
						
							
							Small changes for debugging Cubiquity.  
						
						
						
						
					 
					
						2013-07-27 15:02:16 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						ef59f329b6 
					 
					
						
						
							
							Reorganising compression code.  
						
						
						
						
					 
					
						2013-07-26 16:25:50 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						f54532a905 
					 
					
						
						
							
							Started moving compression code into separate class.  
						
						
						
						
					 
					
						2013-07-26 16:00:29 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						c3c4ead1f3 
					 
					
						
						
							
							Work on paging to files.  
						
						
						
						
					 
					
						2013-07-26 15:38:03 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						b767d9b896 
					 
					
						
						
							
							Tidying up.  
						
						
						
						
					 
					
						2013-07-25 17:07:50 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						f4f85551c6 
					 
					
						
						
							
							Starting some refactoring of the LargeVolume such that the uncompressed blocks are the 'main' representation, rather than the compressed block being the main version and the uncompressed blocks simply being a cached version. I hope this simplifies and improves the code.  
						
						
						
						
					 
					
						2013-07-25 15:51:30 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						cf9b54e5ab 
					 
					
						
						
							
							Properly deleting data (delete vs. delete[]).  
						
						
						
						
					 
					
						2013-07-24 16:53:40 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						b07dafc9fa 
					 
					
						
						
							
							Added code to initilise empty compressed blocks.  
						
						
						
						
					 
					
						2013-07-24 16:39:31 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						69066a068e 
					 
					
						
						
							
							Implemented flushExcessiveCacheEntries()  
						
						
						
						
					 
					
						2013-07-23 13:48:04 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						7c11a53484 
					 
					
						
						
							
							Fixed flushOldestExcessiveBlocks().  
						
						
						
						
					 
					
						2013-07-23 13:31:24 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						7146b5ecdb 
					 
					
						
						
							
							The idea of a 'setTargetMemoryLimitInBytes' function was not really working out. It was too comp-lex and not really clear what the ideal size would be. I think user code needs to call setMaxNumberOfBlocksInMemory() and setMaxNumberOfUncompressedBlocks() directly, if they see from profiling toat too much camressing or paging is taking place.  
						
						
						
						
					 
					
						2013-07-23 13:15:01 +02:00 
						 
				 
			
				
					
						
							
							
								Matt Williams 
							
						 
					 
					
						
						
							
						
						7ee913c8a8 
					 
					
						
						
							
							Fix the SWIG warning in the SWIG interface files  
						
						... 
						
						
						
						This keeps the .cpp and .h files clean. 
						
						
					 
					
						2013-07-22 16:10:31 +01:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						3971e6415c 
					 
					
						
						
							
							Added SWIG tests to stop build warning about operator<<.  
						
						
						
						
					 
					
						2013-07-22 16:37:35 +02:00 
						 
				 
			
				
					
						
							
							
								Matt Williams 
							
						 
					 
					
						
						
							
						
						63dfaa5a13 
					 
					
						
						
							
							Enable C# bindings even if Python wasn't found.  
						
						
						
						
					 
					
						2013-07-21 10:31:24 +01:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						7cd115b33d 
					 
					
						
						
							
							Work on code which computes how the memory should be split between compressed and uncompressed data.  
						
						
						
						
					 
					
						2013-07-19 16:43:59 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						ef6bd31651 
					 
					
						
						
							
							Small fixes.  
						
						
						
						
					 
					
						2013-07-18 17:03:14 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						88cbeb309c 
					 
					
						
						
							
							Reimplemented eraseBlock for uncompressed blocks.  
						
						
						
						
					 
					
						2013-07-18 16:08:18 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						1e986f9aa6 
					 
					
						
						
							
							Reimplemented eraseBlock for compressed blocks.  
						
						
						
						
					 
					
						2013-07-17 17:00:12 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						404f12a43e 
					 
					
						
						
							
							Added typedefs to simplify code.  
						
						
						
						
					 
					
						2013-07-17 16:33:46 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						5b99854c02 
					 
					
						
						
							
							Making block copy constructors and assignment operators private to prevent accidental copying.  
						
						
						
						
					 
					
						2013-07-17 16:23:46 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						dea7e6a4e9 
					 
					
						
						
							
							Tidying up block classes.  
						
						
						
						
					 
					
						2013-07-16 16:50:04 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						b5d930062b 
					 
					
						
						
							
							Const fixes.  
						
						
						
						
					 
					
						2013-07-16 16:09:57 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						3904c9aa8f 
					 
					
						
						
							
							Tidying and renaming...  
						
						
						
						
					 
					
						2013-07-16 15:59:06 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						0cfb9f5196 
					 
					
						
						
							
							Splitting 'Block into CompressedBlock and UncompressedBlock.  
						
						
						
						
					 
					
						2013-07-16 14:42:43 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						2acb98bdcb 
					 
					
						
						
							
							Compile warning fixes.  
						
						
						
						
					 
					
						2013-07-16 11:50:59 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						a00574351f 
					 
					
						
						
							
							Renamed Block to CompressedBlock  
						
						
						
						
					 
					
						2013-07-11 16:38:28 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						00eb281990 
					 
					
						
						
							
							Stripping down Block class.  
						
						
						
						
					 
					
						2013-07-11 16:30:19 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						0d92bc6c8c 
					 
					
						
						
							
							Starting to split Block class into CompressedBlock and UncompressedBlock.  
						
						
						
						
					 
					
						2013-07-11 16:17:48 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						9ff95f7061 
					 
					
						
						
							
							Minor fixes.  
						
						
						
						
					 
					
						2013-07-11 15:55:34 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						e6cbc09e83 
					 
					
						
						
							
							getUncompressedBlock now return raw pointer instead of block pointer.  
						
						
						
						
					 
					
						2013-07-11 15:30:15 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						884fe04c12 
					 
					
						
						
							
							Tidying up...  
						
						
						
						
					 
					
						2013-07-11 15:01:18 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						abd1920d80 
					 
					
						
						
							
							Adding new caching mechanism.  
						
						
						
						
					 
					
						2013-07-11 14:50:06 +02:00 
						 
				 
			
				
					
						
							
							
								David Williams 
							
						 
					 
					
						
						
							
						
						a589c6e4ac 
					 
					
						
						
							
							Split come code into getCompressedBlock() function.  
						
						
						
						
					 
					
						2013-07-11 14:26:38 +02:00 
						 
				 
			
				
					
						
							
							
								Daviw Williams 
							
						 
					 
					
						
						
							
						
						056064409d 
					 
					
						
						
							
							Work on LargeVolume.  
						
						
						
						
					 
					
						2013-07-05 16:07:38 +02:00 
						 
				 
			
				
					
						
							
							
								Daviw Williams 
							
						 
					 
					
						
						
							
						
						0c55938242 
					 
					
						
						
							
							Work on the code that frees up memory in LargeVolume.  
						
						
						
						
					 
					
						2013-07-05 15:41:16 +02:00 
						 
				 
			
				
					
						
							
							
								Matt Williams 
							
						 
					 
					
						
						
							
						
						2f2475ad0c 
					 
					
						
						
							
							Avoid ambiguous function resolution of getVoxelImpl  
						
						... 
						
						
						
						Clang was complaining that the function couldn't access the *Volumes*'s
``getVoxelImpl``. Since we actually want the ``BaseVolume::Sampler``'s
version this solves the problem. 
						
						
					 
					
						2013-07-04 22:05:06 +01:00 
						 
				 
			
				
					
						
							
							
								Matt Williams 
							
						 
					 
					
						
						
							
						
						8027f9904d 
					 
					
						
						
							
							On systems that support it, raise SIGTRAP to drop into the debugger  
						
						... 
						
						
						
						Clang was being clever and giving a warning for this line so it prompted me
to fix it. I believe that SIGTRAP is the correct way to get the debugger to
work here.
It does a compile-time check for the platform when not using MSVC.
Discussed at http://www.volumesoffun.com/phpBB3/viewtopic.php?p=3766#p3766  
						
						
					 
					
						2013-07-04 19:35:09 +01:00