Free Electron
lab
field
DensitySink.h
Go to the documentation of this file.
1
/* Copyright (C) 2003-2021 Free Electron Organization
2
Any use of this software requires a license. If a valid license
3
was not distributed with this file, visit freeelectron.org. */
4
5
/** @file */
6
7
#ifndef __field_DensitySink_h__
8
#define __field_DensitySink_h__
9
10
#include "
signal/signal.h
"
11
#include "
datatool/datatool.h
"
12
#include "
math/math.h
"
13
#include "
shape/shape.h
"
14
namespace
fe
15
{
16
namespace
ext
17
{
18
19
/** Removes 'value' from a field at a rate dependent on local density.
20
The removed value is accumulated.
21
*/
22
class
FE_DL_EXPORT
DensitySink
:
public
Initialize
<DensitySink>,
23
virtual
public
HandlerI
,
24
virtual
public
Config
25
{
26
public
:
27
DensitySink
(
void
);
28
virtual
~
DensitySink
(
void
);
29
void
initialize(
void
);
30
31
// AS HandlerI
32
virtual
void
handle(
Record
&r_sig);
33
34
private
:
35
AsParticle
m_asParticle;
36
};
37
38
39
}
/* namespace ext */
40
}
/* namespace fe */
41
42
#endif
/* __field_DensitySink_h__ */
math.h
fe::ext::Config
Convienience base class for specification and use of path accessors.
Definition:
Config.h:19
fe
kernel
Definition:
namespace.dox:3
fe::Initialize
Per-class participation in the Initialized <> mechanism.
Definition:
Initialized.h:117
signal.h
fe::ext::HandlerI
Interface to handle signals from an SignalerI.
Definition:
HandlerI.h:22
fe::ext::AsParticle
particle in physical space
Definition:
shapeAS.h:58
fe::ext::DensitySink
Removes 'value' from a field at a rate dependent on local density.
Definition:
DensitySink.h:22
fe::RecordSB
Reference to an instance of a Layout.
Definition:
RecordSB.h:35
shape.h
datatool.h
Generated by
1.8.13