// @(#)root/reflex:$Id$ // Author: Stefan Roiser 2006 // Copyright CERN, CH-1211 Geneva 23, 2004-2006, All rights reserved. // // Permission to use, copy, modify, and distribute this software for any // purpose is hereby granted without fee, provided that this copyright and // permissions notice appear in all copies and derivatives. // // This software is provided "as is" without express or implied warranty. // Include Files #ifndef Reflex_InternalTools #define Reflex_InternalTools namespace Reflex { namespace OTools { template class ToIter { public: template static typename std::vector::iterator Begin(const CONT& cont) { return ((typename std::vector &) const_cast(cont)).begin(); } template static typename std::vector::iterator End(const CONT& cont) { return ((typename std::vector &) const_cast(cont)).end(); } template static typename std::vector::const_reverse_iterator RBegin(const CONT& cont) { return ((const typename std::vector &)cont).rbegin(); } template static typename std::vector::const_reverse_iterator REnd(const CONT& cont) { return ((const typename std::vector &)cont).rend(); } }; } // namespace OTools } // namespace Reflex #endif // Reflex_InternalTools