I have a boost::multiindex container which has an index as follows :



            boost::multi_index::const_mem_fun<StoredObj, std::string,     &StoredObj::getNonUniqueIdString> 


This ID comes in as ""(empty string) when I initially get the object. I add it to the multiindex at this point. But later in the course of the program the ID gets populated using its "setNonUniqueId" method. At this point of time inside "setNonUniqueId" I would like to update the index to the object(in the multiindex) as well(while the ID is being updated from "" to something concrete). How do I do this? How do I locate the specific object and update the index?