staticMode.h
Go to the documentation of this file.
1 /*
2  * Copyright 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA)
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9 
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 
18 #ifndef STATICMODE_H
19 #define STATICMODE_H
20 
21 #include <mode.h>
22 
23 class StaticMode : public Mode
24 {
25 public:
26  StaticMode(color::rgba color, int priority = 0, double freq = 0, int pulses = 0, double timeout = 0)
27  :Mode(priority, freq, pulses, timeout), _timer_inc(0)
28  {
29  _color = color;
30  _inc = (1. / UPDATE_RATE_HZ) * _freq;
31  }
32 
33  void execute()
34  {
35  if(_timer_inc == 0.0)
37  if(_timer_inc >= 1.0)
38  _timer_inc = 0.0;
39  else
40  _timer_inc += _inc;
41  }
42 
43  std::string getName(){ return std::string("StaticMode"); }
44 
45 private:
46  double _timer_inc;
47  double _inc;
48 };
49 
50 #endif
color::rgba _color
Definition: mode.h:121
std::string getName()
Definition: staticMode.h:43
double _timer_inc
Definition: staticMode.h:46
Definition: mode.h:26
static const unsigned int UPDATE_RATE_HZ
Definition: mode.h:126
void execute()
Definition: staticMode.h:33
double _inc
Definition: staticMode.h:47
double _freq
Definition: mode.h:114
boost::signals2::signal< void(color::rgba color)> m_sigColorReady
Definition: mode.h:128
StaticMode(color::rgba color, int priority=0, double freq=0, int pulses=0, double timeout=0)
Definition: staticMode.h:26


cob_light
Author(s): Benjamin Maidel
autogenerated on Wed Apr 7 2021 02:11:39