Commit graph

41 commits

Author SHA1 Message Date
685f4327f5 Fix: remove explicitly given hash function, use the automatic bridge instead
Since we have now a generic bridge to supply std::hash functions based on
an exisiting boost::hash function, we removed the explicit std::hash
specialisation for "Placement-ID".

This caused the PlacementIndex implementation to fail at compilation
with a quite obscure error, which in fact seems to be caused by the
absence of any specific specialisation. The symptom is that a iterator
range could not be assigned to the predefined iterator type of
std::unordered_multimap, due to a mismatch in the embedded traits type

__umap_traits<__cache_default<_Key, _Hash>::value>>

While I didn't track down that problem entirely, to verify my hypothesis,
the problem can be avoided by using the default -- which is now to
pick up an existing boost::hash function for this type and use this
to generate the std::hash function.
2014-08-26 03:04:14 +02:00
561e036e0b remove any remaining use of boost::lambda
obsolete now, we can use the lambdas of the stock language
2014-05-12 01:12:45 +02:00
c2ea15695e amend harmless PlacementIndex test failures. Test Suite PASS
c++11 uses another hashtable implementation.
This uncovered some poorly written tests, which relied on
objects being returned in a specific order. As far as poissible,
we're using generic query functions now to get our test objects.

But these tests still rely on a specifically crafted test index content,
which as such is acceptable IMHO. The only remaining problem is
that we check the order of generated output in some tests, and this
order is still implementation dependent.
2014-05-11 02:08:53 +02:00
7be1b7d35d Switch from TR1 preveiw to the new standard headers
- functional
- memory
- unordered collections
2014-04-03 22:42:48 +02:00
974c670d41 fix **** in doxygen comments
to make them stand out more prominently, some entity comments
where started with a line of starts. Unfortunately, doxygen
(and javadoc) only recogise comments which are started exactly
with /**

This caused quite some comments to be ignored by doxygen.
Credits to Hendrik Boom for spotting this problem!

A workaround is to end the line of stars with *//**
2013-10-24 23:06:36 +02:00
b9d1899486 cleanup: rectify Proc-Layer namespaces (II) 2011-12-02 17:50:44 +01:00
eb79a00cf4 cleanup: rectify Proc-Layer namespaces (I) 2011-12-02 16:10:03 +01:00
3f1b7651e9 GPL header whitespace 2010-12-17 23:28:49 +01:00
debba6f769 Fix PlacementIndex corruption while deleting recursively 2010-06-03 04:37:20 +02:00
fc44e522e0 improve PlacementIndex self-verification 2010-06-03 04:37:19 +02:00
b21db07aff implement generic object attach-to-model and purge 2010-06-03 04:37:18 +02:00
Michael Ploujnikov
217d17107d Use a fully qualified name for PlacementMO in PlacementIndex
This seems to satisfy g++ 4.4.2, which otherwise complains like this:

In file included from ../src/proc/mobject/session/session-impl.hpp:53,
                from ../src/proc/mobject/session/sess-manager-impl.hpp:28,
                from ../src/proc/mobject/session/sess-manager-impl.cpp:41:
../src/proc/mobject/session/placement-index.hpp:163: error:
declaration of ‘typedef class mobject::Placement<mobject::MObject,
mobject::MObject> mobject::session::PlacementIndex::PlacementMO’
../src/proc/mobject/placement.hpp:244: error: changes meaning of
‘PlacementMO’ from ‘typedef class mobject::Placement<mobject::MObject,
mobject::MObject> mobject::PlacementMO’
2010-01-16 17:04:13 +01:00
14c7f7fc62 PlacementIndex implemented, unit test pass 2010-01-09 05:10:32 +01:00
836f533a2f add equality comparison and identity handling 2010-01-08 03:59:01 +01:00
a56e107fe0 PlacementIndex self-verification implemented and passes compiler 2010-01-07 08:29:27 +01:00
226ed37e30 now able to compile PlacementIndex self-check code! 2010-01-06 07:49:25 +01:00
665bd19f8a use this to get the distinct keys of a multimap 2010-01-06 06:53:29 +01:00
2a5b080dd7 implement IterSource adapter for STL map and hashmap 2010-01-06 03:38:02 +01:00
16962ae714 IterSource implementation draft 2010-01-05 04:10:23 +01:00
73613c1e7d WIP: draft better arrangement of the PlacementIndex validation code
but still need yet another iterator related lib module
2010-01-05 01:31:22 +01:00
2b46574da3 move the for_each helpers into a separate header
(because util.hpp is used pervasively, and I don't want
<tr1/functional> in such a widely used header...
2009-12-29 04:39:27 +01:00
0dca7cbb4d not-yet-implemented.... 2009-12-29 04:30:11 +01:00
6e956f24ab WIP: drafted PlacementIndex validity self-check 2009-12-28 03:32:42 +01:00
c49d8321f6 fill in documentation and missing test cases 2009-12-27 06:36:52 +01:00
7b7e9096a3 Hook up scope contents iterator in PlacementIndex (closes #343) 2009-12-27 06:25:34 +01:00
3db676fa32 base implementation fo the ItemWrapper 2009-12-21 05:44:29 +01:00
4afa1ada5b WIP implement scope content enumeration
unresolved problem with TransformIter yielding a reference
2009-12-18 05:05:16 +01:00
9f09a8aa49 push creation of the root MObject to users of PlacementIndex 2009-12-17 03:16:08 +01:00
e3de0aac7c WIP handling of the model root element within the index 2009-12-16 04:54:36 +01:00
6c187224eb get it through the compiler again... 2009-12-12 05:03:50 +01:00
fd782eb139 WIP: change management of test/mock PlacementIndex
now lifecycle of this mock index is managed automatically
from within the session services. This allows to get
rid of the smart-ptr creating factory. As a consequence,
PlacementIndex now resides directly within SessionImpl.
2009-12-11 02:49:12 +01:00
488039c4c6 cleanup and write tests covering the newly implemented stuff 2009-11-28 23:37:58 +01:00
feb4480f85 Scope handling within the PlacementIndex 2009-11-28 22:18:09 +01:00
8a47f1a1ac considerations regarding type handling in the PlacementIndex 2009-11-27 20:30:06 +01:00
66175181dc basically implemented simple element access.
But the scope registration and the type problem remains unsolved
2009-11-27 02:43:09 +01:00
cde45c021e add basic storage and implementation of the PlacementIndex tables 2009-11-27 02:03:20 +01:00
7dcb59333d WIP draft of the complete query-for-session-contents implementation 2009-11-15 01:08:29 +01:00
981ea94708 finished the PlacementIndex API. 2009-11-13 04:52:48 +01:00
a1448ed6f6 WIP first attempt to remove the query-interface from PlacementIndex 2009-11-12 20:15:52 +01:00
5535a7a00e phase out the existing access functions, now superseeded by SessionServices 2009-11-11 05:44:58 +01:00
bdb8bc2c98 move PlacementIndex into namespace session 2009-11-06 19:27:53 +01:00
Renamed from src/proc/mobject/placement-index.cpp (Browse further)