DropBoxMetadata

Parameters

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
#ifndef CondFormatsCommon_DropBoxMetadata_H
#define CondFormatsCommon_DropBoxMetadata_H

/** \class DropBoxMetadata
 *  No description available.
 *
 *  $Date: 2011/02/23 16:55:18 $
 *  $Revision: 1.1 $
 *  \author G. Cerminara - CERN
 */

#include "CondFormats/Serialization/interface/Serializable.h"

#include <map>
#include <string>

class DropBoxMetadata {
public:
  /// Constructor
  DropBoxMetadata();

  /// Destructor
  virtual ~DropBoxMetadata();

  class Parameters {
  public:
    void addParameter(const std::string& key, const std::string& vale);

    std::string getParameter(const std::string& key) const;

    const std::map<std::string, std::string>& getParameterMap() const;

  private:
    std::map<std::string, std::string> theParameters;

    COND_SERIALIZABLE;
  };

  // Operations
  void addRecordParameters(const std::string& record, const Parameters& params);

  const Parameters& getRecordParameters(const std::string& record) const;

  bool knowsRecord(const std::string& record) const;

  const std::vector<std::string> getAllRecords() const;

protected:
private:
  std::map<std::string, DropBoxMetadata::Parameters> recordSet;

  COND_SERIALIZABLE;
};
#endif