Actually, this sounds exactly like the scenario cpjust just described and seems to be an excellent solution. Another great tool in our libraries from boost!