Hi Joaquín ,
I am extremely sorry, i missed your mail. First of all thanks a lot
for replying.
I have fixed the issue for now. But i am actually explaining the issue i
had. Please take a shot at it.
Say i have an object and i have created multi index on some members
of the object. Now since,
this is being used in a multi-threaded code, i will acquire a mutex on the
whole multi-index, only if i have
updated those attributes involved in the multi-index build. Else i won't
take the mutex.
Now my problem is, i have multi-indexed many such classes. what is
the best way to check whether
the updated attribute is part of multi-index. Currently we have written a
python code which scans the C++
files and creates a list of attribute numbers ( each member attribute has a
number associated with it ).
Whenever there is an update, we check against the list produced by the
python code in C++.
My question was if there is a way to do this within C++ itself.
Please let me know, whether i ma not clear on explaining my
question.
Thanks,
Gokul.
On Tue, Jan 4, 2011 at 6:23 AM, Joaquin M Lopez Munoz
Gokulakannan Somasundaram
writes: Hi, Say i have a boost::tuple / MPL Sequence, on which i have created a multi-index. Is it possible for me collect all the attribute numbers on which i have declared the IndexSpecifierList( the one passed as template parameter to boost::multi_index::indexed_by ) ?
Hi Gokul,
I'm not sure I undersand your question. Have you taken a look at the index_type_list nested type?
http://www.boost.org/libs/multi_index/doc/reference/multi_index_container.ht... types
From this MPL sequence you can easily extract the list of key extractor types used for defining the multi_index_container, which hopefully is close to what you're after.
Don't hesitate to elaborate a little more on your question and I'll see whether I can be more helpful.
Joaquín M López Muñoz Telefónica, Investigación y Desarrollo
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users