Belle II Software development
PersistenceManager.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <string>
12#include <vector>
13
14#include <reconstruction/persistenceManager/Types.h>
15
16namespace Belle2::VariablePersistenceManager {
17
30 public:
41 virtual void initialize(const std::string& fileName,
42 const std::string& objectName,
43 Variables& variables) = 0;
44
53 virtual void addEntry(const EvaluatedVariables& evaluatedVariables) = 0;
54
62 virtual void store() = 0;
63
67 virtual ~PersistenceManager() = default;
68 };
69
70} // namespace Belle2::VariablePersistenceManager
Abstract base class defining the interface for persisting variables.
virtual void initialize(const std::string &fileName, const std::string &objectName, Variables &variables)=0
Initializes the persistence manager with the given parameters.
virtual void store()=0
Writes the current in-memory data to the final storage medium.
virtual void addEntry(const EvaluatedVariables &evaluatedVariables)=0
Adds a new data entry (event) to the underlying storage.
virtual ~PersistenceManager()=default
Virtual destructor.