Commit Graph

177 Commits

Author SHA1 Message Date
Lynix ea8d683624 Updated copyright year
(532 files, wow)


Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +01:00
Gawaboumga 3933b07094 Suppression of warnings
OffsetOf: use of static_cast
Updatable: API and virtual destructor
Drawable: virtual destructor
Vector: std::abs should be "the" abs.
AbstractClass: API
+Updatable: Like for others abstracts
Buffer: nullptr for pointer to function.
Image: wasn't returning a vector.

Former-commit-id: 57e0009286a02b9e3b0b81945e500d7d9e466ae2
2015-01-21 13:51:49 +01:00
Lynix 911babc283 Changed meaning of return value from resource events
Returning false from a resource event will remove the listener from the
resource, instead of decrementing it's counter


Former-commit-id: ba47da0e8de5c0adb3d31f29af0ef7835beefd5a
2015-01-19 00:00:54 +01:00
Lynix 8f9ea9db17 Added ResourceListenerWrapper
This class wraps the call to
Resource::AddResourceListener/RemoveResourceListener using RAII and help
a lot with some of the dependencies.
Thanks to this, the render queues now handle their resources listening
properly.

Former-commit-id: 7f215ffa4ccadcc4f44f777656970e92ce01087a
2015-01-18 23:59:01 +01:00
Lynix c02fe6c8ff Fixed streaming loaders when used with memory streams
Former-commit-id: ce39ee03f40682c00c78b08ac285b9ea36240fa5
2015-01-17 23:42:49 +01:00
Lynix 86502df849 Merge branch 'Font-Update'
Former-commit-id: d293f78c891a74554c6b990afafdc1eb1cc0a584
2015-01-17 00:36:28 +01:00
Lynix cd5399459d Made Resource copying/moving impossible
It is still possible to copy some Resource-based classes though


Former-commit-id: bbb6066f736c210015ff9fdfded7d95eb9695359
2015-01-16 16:28:38 +01:00
Lynix c2f3ba00f2 Revert "Added ResourceConstListener"
This reverts commit 2492f87ba89bafa180308c60d2470b07e3aac27d [formerly 793b9a8884fb6153d5da152e2cf22659fc7e511b].


Former-commit-id: 05a9dff26921db1e7c1c5b90c0cd50073a839f3c
2015-01-16 13:02:53 +01:00
Lynix 88af94b987 Added ResourceConstListener
I don't know yet if it's a good idea but at least it's an idea


Former-commit-id: b034a787d8d8ccce0804f1276958b32c9e149147
2015-01-07 23:47:09 +01:00
Lynix 6c4f8e7396 Added SparsePtr::operator[+|-](unsigned int) overload
Let's hope it will be enough to stop GCC from barking at me


Former-commit-id: 0bcdf37acdc2e49a4ddd310dcdeb5bd6c66225a1
2015-01-07 19:19:53 +01:00
Lynix 0f033eaed9 Added CallOnExit::CallAndReset()
Former-commit-id: 045ff61445203999757971deeeafee719fc5506a
2015-01-04 18:57:01 +01:00
Lynix e69c2982b9 Minor changes
Former-commit-id: 1282e3600c687647f637aec42f05d033266e1d33
2015-01-04 13:08:26 +01:00
Lynix 4e9bec804a Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: c62f6317f401e200eff303fcf5b8945302fd89c6
2015-01-03 22:21:14 +01:00
Lynix ad3c70bbc8 Added SparsePtr substraction operator
Former-commit-id: e2dadc06b1f1abbd257689e6eaee77ebbfa0af5b
2015-01-03 21:50:37 +01:00
Lynix 528969d0fa Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: ae0244334123a3442c7675df80b1a501a6837257
2014-12-17 14:00:20 +01:00
Lynix 1ee02d4fcf Improved code, fixed missing includes
Thanks to d@rk-marouane (@progdupeu.pl)


Former-commit-id: 4147388501d4263e624f4c6402902ef071f88ffd
2014-12-17 13:53:59 +01:00
Lynix 20607238df SparsePtr: Allowed negative stride
Former-commit-id: 9ca3101347bdc071503ec9edb75b4f896a6dd2e0
2014-12-11 18:56:55 +01:00
Lynix a393271f04 Improved GuillotineBinPack
Added explicit copy/move constructor/operator
Added Expand method
Added Insert overloads (you are now able to query which rectangles were
inserted)
Made occupancy computation more precise
Overloaded methods taking a unsigned int pair with Vector2ui


Former-commit-id: f063c04a1aea0d26594db642c2466264fe139450
2014-12-10 14:38:32 +01:00
Lynix 15ddc29179 Added implicit conversion to SparsePtr
Former-commit-id: 5116a5e7687706640cd5d2ef99f5c181e00ee841
2014-12-07 03:06:12 +01:00
Lynix 4b2e3370d9 Added GuillotineBinPack algorithm
Former-commit-id: 9f2fb342e7bd9e1b33937a4fd462c993ae5cec3e
2014-11-26 02:35:59 +01:00
Lynix 522ceb1e30 Improved SparsePtr class
Added implicit conversion from a normal pointer to a sparse pointer
Added implicit conversion to boolean
Added implicit conversion to normal pointer
Added support for const pointers
Renamed Get/Set to GetPtr/SetPtr


Former-commit-id: 32d5d2ec6a7b296c5b89b722de9ca142d5c64aae
2014-09-03 13:32:37 +02:00
Lynix 35c0bc7087 Used std::forward for PlacementNew function
Former-commit-id: e77b64bb90d849d856d93426a68b4d76cb499971
2014-07-28 12:20:47 +02:00
Lynix 8b34e21e2f Improved code
Fixed Directory being copyable
Fixed ByteArray and String self-assignation
Made it clear Clock is copyable


Former-commit-id: 36702d8a389abe6d3faa1e283d9a20f0326041a6
2014-07-23 11:57:04 +02:00
Lynix e6dea541a7 Added memory helpers
This will protect some memory-related code from new redefinition


Former-commit-id: 337e69e70acd0bf8dbc3ba1657c6bb0bddfd5df4
2014-07-22 17:26:31 +02:00
Lynix a1efed20a3 Fixed debug build error
Former-commit-id: a96aa0c4b78c4095ae461f5a4ee81be3074fc47d
2014-07-12 15:05:23 +02:00
Lynix cf95b128c5 SparsePtr: Fixed some operators not being const
Former-commit-id: 1393ab9299502328829efb0daa0b17c1a74fdd2e
2014-07-12 12:48:25 +02:00
Lynix 55697908d1 Added TODO
Former-commit-id: 45750e5f2f198532f913c5b8abdbbfa190e7a749
2014-07-10 10:12:33 +02:00
Lynix 7103c28d49 Merge pull request #27 from Gawaboumga/master
Merging Gawaboumga pull request (#27), fixes are coming

Former-commit-id: 81079fd052538e15b7e919aea106cfb5a88a87a6
2014-07-08 16:24:46 +02:00
Lynix c4b10dddda Big config/debug update
Added config checkers
Macro no longer use suffixes
Moved MemoryManager to upper directory
Renamed *_MEMORYMANAGER to *_MANAGE_MEMORY
Renamed AUDIO_STREAMEDBUFFERCOUNT to AUDIO_STREAMED_BUFFER_COUNT
Renamed CORE_REAL_PRECISION to CORE_DECIMAL_DIGITS
Renamed DEBUG_MEMORYMANAGER_DISABLE_REDEFINITION to
DEBUG_NEWREDEFINITION_DISABLE_REDEFINITION
Renamed GRAPHICS_MAX_LIGHTPERPASS to GRAPHICS_MAX_LIGHT_PER_PASS
Renamed UTILITY_FORCE_DECLARATION_STRIDE_MULTIPLE_OF_32 to
UTILITY_VERTEX_DECLARATION_FORCE_STRIDE_MULTIPLE_OF_32


Former-commit-id: 81ef836ac9f092ac471f60e544bb7c7c6370593c
2014-07-08 10:56:37 +02:00
Lynix f45a9d5bf6 Added SparsePtr class
Which is basically a pointer with a different stride than it's type size


Former-commit-id: a025889d7f9fa70f99e9cd5944682aebbd02317e
2014-07-01 20:25:14 +02:00
Lynix b595f703da Added OffsetOf header and function
Designed to replace the old offsetof macro


Former-commit-id: faa45ebfd3c1f9cc817f6fccf5c94d2c1527349d
2014-07-01 19:26:39 +02:00
Gawaboumga 9f17722afd Little corrections
HashDigest: Simultaneous use of int and short
EulerAngles: Use of the macro
Geom: cone was missing

Former-commit-id: ecc3a586732a6711b57ce3e79c5450ef7327bb5b
2014-06-27 19:11:45 +02:00
Lynix 55c205a5e5 Improved MemoryPool class
It's size is now dynamic (defaulted to 1024)
Added MemoryPool::GetFreeBlocks()
Added MemoryPool::GetSize()
Tried to make it thread-safe
It supports dynamics allocations (in case where it can't allocate memory
from the pool for some reasons)


Former-commit-id: d42804a47eaafbbc1c0b151f8fcaeb5ddb086ff5
2014-06-22 15:12:51 +02:00
Lynix f55b151c8e Improved MemoryPool class
It's size is now dynamic (defaulted to 1024)
Added MemoryPool::GetFreeBlocks()
Added MemoryPool::GetSize()
Tried to make it thread-safe
It supports dynamics allocations (in case where it can't allocate memory
from the pool for some reasons)


Former-commit-id: 1cc6cb2bc118556363a5c8ba1d18b3b1ce734862
2014-06-15 01:17:57 +02:00
Lynix 31dba6f52c Added pointer value test to MemoryPool
Former-commit-id: 2051f2e5b8f45513d6050dbdb17287841e5394a5
2014-06-05 21:31:29 +02:00
Lynix c27187ae4b Added MemoryPool class
Former-commit-id: cc704583a686dd631bee54ed48cee913aeb2e369
2014-05-28 10:02:43 +02:00
Lynix 8f4b304df1 Renamed Directory::SetDirectory to Directory::SetPath
Added Directory::GetPath


Former-commit-id: 0d2918557962b05ea7c9a16c82e6afc961db32a8
2014-05-26 02:00:46 +02:00
Lynix a3f877daf1 Added MemoryManager::GetAllocationCount()
Former-commit-id: 32f4f0780fdd32ac72a7e94732958bdd688844c6
2014-04-24 21:20:14 +02:00
Lynix c606599e19 Updated MemoryManager
Renamed MemoryLeakTracker[.hpp|.cpp] to MemoryManager[.hpp|.cpp]
Added MemoryManager::GetAllocatedBlockCount()
Added MemoryManager::GetAllocatedSize()
Optimized MemoryManager (no longer allocates a time buffer)


Former-commit-id: 0e9c720cbb48fbed7006db3bd1000ebbc22c9583
2014-04-21 22:13:31 +02:00
Lynix 77fc34ee7d Added some CPU vendors
Former-commit-id: 0eb96633fe6bdd3f6f8649f766620f4e89bc2224
2014-04-21 11:02:17 +02:00
Lynix 082015fe5a PluginManager::AddDirectory no longer returns bool
Former-commit-id: a5994918636765a52ca1fc79617d12eefec2c914
2014-04-20 23:52:54 +02:00
Lynix 361e2a31ee Improved submodules
PluginManager is now a submodule


Former-commit-id: 2e147317ab07447e134d15790386bd6d3494b9d1
2014-04-20 23:50:55 +02:00
Lynix fc970c503a Added File::Open(path, mode)
Former-commit-id: 7bd80f04e5f902e9752b1f5091ac55cdf2bc432a
2014-04-20 13:13:49 +02:00
Lynix d8507b5d10 Updated CallOnExit
Made it non copyable
Made usage of std::function (thus allowing lambda to be used as
functions)


Former-commit-id: b56cb410bf94bdb3b73d73d7599059d613e41a68
2014-04-20 12:55:05 +02:00
Lynix 945c6514a9 Added Resource modification notification
Former-commit-id: b2fafa22ddf125ef2f1cbc0cd473ae06eb99bcd3
2014-04-08 10:21:50 +02:00
Lynix 752cfdd8db Removed useless keyword
Former-commit-id: f5932abe5443e25d4f1fbf3e97f4eb50627fac55
2014-03-30 19:17:32 +02:00
Lynix b212f7c890 Added parameters to Clock class
It is now possible to build a Clock object in a paused state, or to give
it an "already elapsed time" value


Former-commit-id: 20e9c55de8a12a9220f81dc7759a4113a794648f
2014-03-20 23:06:22 +01:00
Lynix 42c10268d2 Fixed thread-safety
Fixed huge mistake in Clock code (Allocating a mutex everytime instead
of locking it)
HashDigest and StringStream class are no longer thread-safe (That was
stupid anyway)


Former-commit-id: d07a6859df27eac2c5171e75720b3963b6a5fbbb
2014-03-06 09:49:39 +01:00
Lynix ef9592a0fd Added repetition constructors
Former-commit-id: ee33ef8aa01ec14a89f47b3581f86cfe499299b8
2014-03-06 09:24:38 +01:00
Lynix 3f4b3aeef5 Fixed DynLib class not exported
Former-commit-id: 65f2607ae8625475a93efb472beaa88a69673abf
2014-02-18 08:34:35 +01:00