Replacing

vector < set< Colour > > eColours;

with

std::map < int, set< Colour > > emColours;

in edge properties.

Using
 property_map < graph_t, map < int, <set< Colour > > > edge_properties::*>::type
                                                emColours_map = get(&edge_properties::emColours, g);
 

But get compiler error: template argument 2 invalid.

Thanks
-JR