LCOV - code coverage report
Current view: top level - coupling/scenario - Scenario.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 1 0.0 %
Date: 2025-10-27 21:19:12 Functions: 0 0 -

          Line data    Source code
       1             : // Copyright (C) 2015 Technische Universitaet Muenchen
       2             : // This file is part of the Mamico project. For conditions of distribution
       3             : // and use, please see the copyright notice in Mamico's main folder, or at
       4             : // www5.in.tum.de/mamico
       5             : #ifndef _MAMICO_COUPLING_SCENARIO_SCENARIO_H_
       6             : #define _MAMICO_COUPLING_SCENARIO_SCENARIO_H_
       7             : 
       8             : class Scenario;
       9             : 
      10             : #include "coupling/CouplingMDDefinitions.h"
      11             : #include "coupling/solvers/CouetteSolver.h"
      12             : #include <iostream>
      13             : #include <string>
      14             : 
      15             : #define __MAMICO_STRINGIFY_EXPAND(x) #x
      16             : #define MAMICO_STRINGIFY(x) __MAMICO_STRINGIFY_EXPAND(x)
      17             : 
      18             : class Scenario {
      19             : public:
      20             :   Scenario(std::string scenarioname) : _scenarioname(scenarioname) {
      21             :     std::cout << "Run " << scenarioname << "..." << std::endl;
      22             :     std::cout << "MaMiCo git commit hash = " << MAMICO_STRINGIFY(MAMICO_COMMIT_HASH) << std::endl;
      23             :   }
      24             :   virtual ~Scenario() { std::cout << "Shut down " << _scenarioname << std::endl; }
      25             : 
      26             :   virtual void run() = 0;
      27             :   virtual void init() = 0;
      28             :   virtual void runOneCouplingCycle(int cycle) = 0;
      29             :   virtual void equilibrateMicro() = 0;
      30             : 
      31             :   virtual coupling::solvers::AbstractCouetteSolver<3>* getSolver() = 0;
      32           0 :   const coupling::services::ParallelTimeIntegrationService<3>* getTimeIntegrationService() const { return _timeIntegrationService.get(); }
      33             : 
      34             : protected:
      35             :   std::unique_ptr<coupling::services::ParallelTimeIntegrationService<3>> _timeIntegrationService;
      36             : 
      37             : private:
      38             :   const std::string _scenarioname;
      39             : };
      40             : 
      41             : #endif // _MAMICO_COUPLING_SCENARIO_SCENARIO_H_

Generated by: LCOV version 1.14