/*============================================================================ CMake - Cross Platform Makefile Generator Copyright 2000-2009 Kitware, Inc., Insight Software Consortium Distributed under the OSI-approved BSD License (the "License"); see accompanying file Copyright.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License for more information. ============================================================================*/ #ifndef cmExportSetMap_h #define cmExportSetMap_h #include "cmSystemTools.h" class cmExportSet; /// A name -> cmExportSet map with overloaded operator[]. class cmExportSetMap : public std::map<std::string, cmExportSet*> { typedef std::map<std::string, cmExportSet*> derived; public: /** \brief Overloaded operator[]. * * The operator is overloaded because cmExportSet has no default constructor: * we do not want unnamed export sets. */ cmExportSet* operator[](const std::string &name); void clear(); /// Overloaded destructor deletes all member export sets. ~cmExportSetMap(); }; #endif