OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
ClassicField.cpp
Go to the documentation of this file.
2 
3 extern Inform *gmsg;
4 
5 ClassicField::ClassicField(std::shared_ptr<Component> element, const double &start, const double &end):
6  element_m(element),
7  start_m(start),
8  end_m(end),
9  is_on_m(false)
10 { }
11 
13  element_m = NULL;
14 }
15 
16 void ClassicField::setOn(const double &kineticEnergy) {
17  if(!is_on_m) {
18  element_m->goOnline(kineticEnergy);
19  INFOMSG(level3 << element_m->getName() << " gone live" << endl);
20  is_on_m = true;
21  }
22 }
23 
25  if(is_on_m) {
26  element_m->goOffline();
27  INFOMSG(level3 << element_m->getName() << " gone off" << endl);
28  is_on_m = false;
29  }
30 }
Inform * gmsg
Definition: Main.cpp:21
std::shared_ptr< Component > element_m
Definition: ClassicField.h:41
ClassicField(std::shared_ptr< Component >, const double &, const double &)
Definition: ClassicField.cpp:5
#define INFOMSG(msg)
Definition: IpplInfo.h:397
void setOn(const double &kinematicEnergy)
Inform & level3(Inform &inf)
Definition: Inform.cpp:47
Definition: Inform.h:41
Inform & endl(Inform &inf)
Definition: Inform.cpp:42