Computer Assited Medical Intervention Tool Kit  version 5.0
MonitorVolume.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 
26 #ifndef MONITOR_MONITORS_MONITORVOLUME_H
27 #define MONITOR_MONITORS_MONITORVOLUME_H
28 
29 #include <string>
30 
31 // Monitor includes
32 #include <MonitorIn.hxx>
33 #include "Monitor.h"
34 
38 class MonitorVolume: public Monitor {
39 
40 public:
47  ~MonitorVolume() override;
48 
50  void calculate() override;
51 
53  std::string getTypeName() override;
54 
55  void write() override;
56 };
57 
58 #endif // MONITOR_MONITORS_MONITORVOLUME_H
MonitorVolume.h
StructuralComponent::getNumberOfStructures
unsigned int getNumberOfStructures() const
get the number of structures
Definition: StructuralComponent.h:252
Monitor::mappedObject
mml::Monitor * mappedObject
the xsdcxx object representing monitor, used for serialization
Definition: Monitor.h:138
Cell::volume
double volume()
Compute the volume of the cell.
Definition: Cell.cpp:545
MonitoringManager::getPml
PhysicalModel * getPml()
Definition: MonitoringManager.cpp:263
Monitor::monitoringManager
MonitoringManager * monitoringManager
monitoring manager
Definition: Monitor.h:140
MonitorVolume::MonitorVolume
MonitorVolume(mml::Monitor *m, MonitoringManager *monitoringManager)
constructor
Definition: MonitorVolume.cpp:30
Monitor::values
std::vector< double > values
the vector which contains data monitored
Definition: Monitor.h:152
MonitorVolume::getTypeName
std::string getTypeName() override
return a string relative to monitor type
Definition: MonitorVolume.cpp:56
MonitorVolume::~MonitorVolume
~MonitorVolume() override
destructor
Definition: MonitorVolume.cpp:33
StructuralComponent
A structural component is composed either by cell or by atoms.
Definition: StructuralComponent.h:52
MonitorVolume::calculate
void calculate() override
calculate current followed data and store them in values vector
Definition: MonitorVolume.cpp:36
Cell
A cell has an unique index in the physical model object, is composed by atoms, and different basic pr...
Definition: Cell.h:46
PhysicalModel::getComponentByName
Component * getComponentByName(const std::string n)
get a structural or multi component by its name.
Definition: PhysicalModel.cpp:553
MonitorVolume
A monitor that calculate Volume.
Definition: MonitorVolume.h:38
MonitoringManager
Manager of the benchmark tests. Do simulation loop and tests.
Definition: MonitoringManager.h:50
StructuralComponent::getStructure
Structure * getStructure(const unsigned int) const
get a structure by its index (fisrt structure is at index 0)
Definition: StructuralComponent.h:220
Monitor::target
std::string target
the name of the component targeted by the monitor
Definition: Monitor.h:134
Monitor
A monitor calculate and store followed data (ex:calculation between current position and references) ...
Definition: Monitor.h:49
Monitor.h
MonitorVolume::write
void write() override
write data stored in values vector into mmlOut file
Definition: MonitorVolume.cpp:61