Cardinal
OpenMCNuclideDensitiesControl.h
Go to the documentation of this file.
1 /********************************************************************/
2 /* SOFTWARE COPYRIGHT NOTIFICATION */
3 /* Cardinal */
4 /* */
5 /* (c) 2021 UChicago Argonne, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by UChicago Argonne, LLC */
9 /* Under Contract No. DE-AC02-06CH11357 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* Prepared by Battelle Energy Alliance, LLC */
13 /* Under Contract No. DE-AC07-05ID14517 */
14 /* With the U. S. Department of Energy */
15 /* */
16 /* See LICENSE for full restrictions */
17 /********************************************************************/
18 
19 #pragma once
20 
21 #ifdef ENABLE_OPENMC_COUPLING
22 
23 #include "Control.h"
24 
25 class OpenMCNuclideDensitiesControl : public Control
26 {
27 public:
28  static InputParameters validParams();
29 
30  OpenMCNuclideDensitiesControl(const InputParameters & parameters);
31 
32  virtual void execute() override;
33 
34 protected:
36  const std::string _controllable_prefix;
38  const std::vector<std::vector<std::string>> & _names;
40  const std::vector<std::vector<Real>> & _densities;
41 
42 private:
44  unsigned int _current_execution;
45 };
46 
47 #endif
InputParameters validParams()