CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
IRefractiveIndexModel.hpp
1 /*
2  * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu
3  *
4  * This software is distributed under the terms of the GNU General Public
5  * Licence version 3 (GPL Version 3). See file LICENSE for a full version of
6  * the license.
7  */
8 
9 #pragma once
10 
11 #include <corsika/framework/geometry/Point.hpp>
12 
13 namespace corsika {
14 
21  template <typename TModel>
22  class IRefractiveIndexModel : public TModel {
23 
24  public:
31  virtual double getRefractiveIndex(Point const&) const = 0;
32 
36  virtual ~IRefractiveIndexModel() = default;
37 
38  }; // END: class IRefractiveIndexModel
39 
40 } // namespace corsika
An interface for refractive index models.
virtual double getRefractiveIndex(Point const &) const =0
Evaluate the refractive index at a given location.
`, since they are used everywhere as integral part of the framework.
virtual ~IRefractiveIndexModel()=default
A virtual default destructor.