NOTE: Although this is functionally completely identical to the original code, I believe the original code had a bug. If  ```map_``` does not contain ```detID``` then you get a defaultly constructed ```IndexRange``` which is a ```std::pair<unsigned int, unsigned int>``` and therefore (0,0). However the return value of this function in that case will be ```(container_.begin(), container_.begin()+1)```. However I believe the true answer should be ```(container_.end(),container_.end())```.
If this is a bug, I leave its fix to the owners of the code.