geopm  3.1.1.dev272+gdfb40a8d
GEOPM - Global Extensible Open Power Manager
ModelApplication.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 - 2024 Intel Corporation
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 
6 #ifndef MODELAPPLICATION_HPP_INCLUDE
7 #define MODELAPPLICATION_HPP_INCLUDE
8 
9 #include <cstdint>
10 #include <string>
11 #include <vector>
12 #include <memory>
13 
14 #include "geopm_public.h"
15 
16 namespace geopm
17 {
18  class ModelRegion;
19 
20  class GEOPM_PUBLIC ModelApplication
21  {
22  public:
23  ModelApplication(uint64_t loop_count, const std::vector<std::string> &region_name,
24  const std::vector<double> &big_o, int verbosity, int rank);
25  virtual ~ModelApplication() = default;
26  void run(void);
27  protected:
28  uint64_t m_repeat;
29  int m_rank;
30  std::vector<std::shared_ptr<ModelRegion> > m_region;
31  };
32 
33 }
34 
35 #endif
Definition: ModelApplication.hpp:21
int m_rank
Definition: ModelApplication.hpp:29
uint64_t m_repeat
Definition: ModelApplication.hpp:28
virtual ~ModelApplication()=default
std::vector< std::shared_ptr< ModelRegion > > m_region
Definition: ModelApplication.hpp:30
Definition: Accumulator.cpp:12