MaMiCo 1.2
Loading...
Searching...
No Matches
MamicoInterfaceProvider.h
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 _MOLECULARDYNAMICS_COUPLING_INTERFACE_MAMICOINTERFACEPROVIDER_H_
6#define _MOLECULARDYNAMICS_COUPLING_INTERFACE_MAMICOINTERFACEPROVIDER_H_
7
8#include "coupling/interface/MDSolverInterface.h"
9#include "coupling/interface/MacroscopicSolverInterface.h"
10#include "coupling/services/CouplingCellService.h"
11
12namespace coupling {
13namespace interface {
14
24template <class LinkedCell, int dim> class MamicoInterfaceProvider {
25public:
29 static MamicoInterfaceProvider singleton;
30 return singleton;
31 }
32
37 _macroscopicSolverInterface = macroscopicSolverInterface;
38 }
39
44
48 void setMDSolverInterface(coupling::interface::MDSolverInterface<LinkedCell, dim>* mdSolverInterface) { _mdSolverInterface = mdSolverInterface; }
49
54
58 void setCouplingCellService(coupling::services::CouplingCellService<dim>* couplingCellService) { _couplingCellService = couplingCellService; }
59
64
65private:
69 MamicoInterfaceProvider() : _macroscopicSolverInterface(NULL), _mdSolverInterface(NULL), _couplingCellService(NULL) {}
74 _macroscopicSolverInterface = NULL;
75 _mdSolverInterface = NULL;
76 _couplingCellService = NULL;
77 }
78
82};
83
84} // namespace interface
85} // namespace coupling
86#endif // _MOLECULARDYNAMICS_COUPLING_INTERFACE_MAMICOINTERFACEPROVIDER_H_
interface to the MD simulation
Definition MDSolverInterface.h:25
interface for the macroscopic, i.e. continuum solver
Definition MacroscopicSolverInterface.h:23
void setMDSolverInterface(coupling::interface::MDSolverInterface< LinkedCell, dim > *mdSolverInterface)
Definition MamicoInterfaceProvider.h:48
void setMacroscopicSolverInterface(coupling::interface::MacroscopicSolverInterface< dim > *macroscopicSolverInterface)
Definition MamicoInterfaceProvider.h:36
MamicoInterfaceProvider()
Definition MamicoInterfaceProvider.h:69
~MamicoInterfaceProvider()
Definition MamicoInterfaceProvider.h:73
coupling::interface::MDSolverInterface< LinkedCell, dim > * getMDSolverInterface()
Definition MamicoInterfaceProvider.h:53
static MamicoInterfaceProvider & getInstance()
Definition MamicoInterfaceProvider.h:28
coupling::interface::MacroscopicSolverInterface< dim > * getMacroscopicSolverInterface()
Definition MamicoInterfaceProvider.h:43
void setCouplingCellService(coupling::services::CouplingCellService< dim > *couplingCellService)
Definition MamicoInterfaceProvider.h:58
coupling::services::CouplingCellService< dim > * getCouplingCellService()
Definition MamicoInterfaceProvider.h:63
Definition CouplingCellService.h:49
everything necessary for coupling operations, is defined in here
Definition AdditiveMomentumInsertion.h:15