FWConfigurationManager

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
#ifndef Fireworks_Core_FWConfigurationManager_h
#define Fireworks_Core_FWConfigurationManager_h
// -*- C++ -*-
//
// Package:     Core
// Class  :     FWConfigurationManager
//
/**\class FWConfigurationManager FWConfigurationManager.h Fireworks/Core/interface/FWConfigurationManager.h

   Description: <one line class summary>

   Usage:
    <usage>

 */
//
// Original Author:  Chris Jones
//         Created:  Sun Feb 24 14:38:41 EST 2008
//

// system include files
#include <map>
#include <string>

// user include files

// forward declarations
class FWConfigurable;
class FWConfiguration;
class FWJobMetadataManager;

class FWConfigurationManager {
public:
  FWConfigurationManager();
  virtual ~FWConfigurationManager();

  // ---------- const member functions ---------------------
  void setFrom(const FWConfiguration&) const;
  void to(FWConfiguration&) const;

  void writeToFile(const std::string&) const;
  void readFromFile(const std::string&) const;
  std::string guessAndReadFromFile(FWJobMetadataManager*) const;
  // ---------- static member functions --------------------

  // ---------- member functions ---------------------------
  ///does not take ownership
  void add(const std::string& iName, FWConfigurable*);

  void setIgnore() { m_ignore = true; }
  bool getIgnore() const { return m_ignore; }

  FWConfigurationManager(const FWConfigurationManager&) = delete;  // stop default

  const FWConfigurationManager& operator=(const FWConfigurationManager&) = delete;  // stop default
private:
  void readFromOldFile(const std::string&) const;

  // ---------- member data --------------------------------
  std::map<std::string, FWConfigurable*> m_configurables;
  bool m_ignore;
};

#endif