MNE-CPP  0.1.9
A Framework for Electrophysiology
eventgroup.cpp
Go to the documentation of this file.
1 //=============================================================================================================
36 //=============================================================================================================
37 // INCLUDES
38 //=============================================================================================================
39 
40 #include "eventgroup.h"
41 #include "event.h"
42 
43 #include <stdlib.h>
44 #include <ctime>
45 
46 //=============================================================================================================
47 // QT INCLUDES
48 //=============================================================================================================
49 
50 //=============================================================================================================
51 // EIGEN INCLUDES
52 //=============================================================================================================
53 
54 //=============================================================================================================
55 // USED NAMESPACES
56 //=============================================================================================================
57 
58 using namespace EVENTSLIB;
59 
60 //=============================================================================================================
61 // INIT STATIC MEMBERS
62 //=============================================================================================================
63 
64 constexpr static const unsigned char defaultGroupColor[] = { 0xC0, 0xFF, 0xEE };
65 constexpr static const unsigned char defaultGroupTransparency = 0xFF;
67 //=============================================================================================================
68 // DEFINE MEMBER METHODS
69 //=============================================================================================================
70 
72 : RgbColor(defaultGroupColor[0], defaultGroupColor[1], defaultGroupColor[2])
73 { };
74 
75 //=============================================================================================================
76 
77 RgbColor::RgbColor(const uchar rRhs, const uchar gRhs, const uchar bRhs)
78 : RgbColor(rRhs, gRhs, bRhs, defaultGroupTransparency)
79 { };
80 
81 //=============================================================================================================
82 
83 RgbColor::RgbColor(const uchar rRhs, const uchar gRhs,
84  const uchar bRhs, const uchar aRhs)
85 : r(rRhs)
86 , g(gRhs)
87 , b(bRhs)
88 , a(aRhs)
89 { };
90 
91 //=============================================================================================================
92 
94 : id(g.id)
95 , name(g.name)
96 , color(g.color)
97 , order(g.order)
98 {
99 
100 }
101 
102 //=============================================================================================================
103 
105 : id(g.getId())
106 , name(g.getName())
107 , color(g.getColor())
108 , order(g.getOrder())
109 {
110 
111 }
112 
113 //=============================================================================================================
114 
116 : EventGroupINT(std::string(name))
117 {
118 
119 }
120 
121 //=============================================================================================================
122 
124 : m_sName(std::move(name))
125 , m_Id(0)
126 , m_order(0)
127 {
128  std::srand(std::time(NULL));
129 
130  setRandomColor();
131 }
132 
133 //=============================================================================================================
134 
135 EVENTSINTERNAL::EventGroupINT::EventGroupINT(idNum id, const std::string& name)
136 : m_sName(name)
137 , m_Id(id)
138 , m_order(0)
139 {
140  std::srand(std::time(NULL));
141 
142  setRandomColor();
143 }
144 
145 //=============================================================================================================
146 
147 EVENTSINTERNAL::EventGroupINT::EventGroupINT(idNum id, const std::string& name,
148  const RgbColor& color)
149 : m_sName(name)
150 , m_Id(id)
151 , m_order(0)
152 {
153  std::srand(std::time(NULL));
154 
155  setColor(color);
156 }
157 
158 //=============================================================================================================
159 
161 {
162  m_Color = color;
163 }
164 
165 //=============================================================================================================
166 
168 {
169  return m_Color;
170 }
171 
172 //=============================================================================================================
173 
175 {
176  m_Color.r = rand() % 256;
177  m_Color.g = rand() % 256;
178  m_Color.b = rand() % 256;
179 }
180 
181 //=============================================================================================================
182 
183 const std::string& EVENTSINTERNAL::EventGroupINT::getName() const
184 {
185  return m_sName;
186 }
187 
188 //=============================================================================================================
189 
190 void EVENTSINTERNAL::EventGroupINT::setName(const std::string &sName)
191 {
192  m_sName = sName;
193 }
194 
195 //=============================================================================================================
196 
198 {
199  return m_Id;
200 }
201 
202 //=============================================================================================================
203 
205 {
206  return m_sDescription;
207 }
208 
209 //=============================================================================================================
210 
212 {
213  return m_order;
214 }
215 
216 //=============================================================================================================
217 
219 {
220  m_order = order;
221 }
222 
223 //=============================================================================================================
224 
226 {
227  return m_Id < groupRHS.getId();
228 }
229 
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::getId
idNum getId() const
Definition: eventgroup.cpp:197
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::setOrder
void setOrder(int order)
Definition: eventgroup.cpp:218
eventgroup.h
EventGroup declaration.
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::EventGroupINT
EventGroupINT(const char *name)
Definition: eventgroup.cpp:115
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::getDescription
std::string getDescription() const
Definition: eventgroup.cpp:204
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::setRandomColor
void setRandomColor()
Definition: eventgroup.cpp:174
EVENTSLIB::EventGroup
EventGroup class is designed as a data holder for a group. It is designed towards ease of use for a c...
Definition: eventgroup.h:116
EVENTSLIB::EventGroup::EventGroup
EventGroup()=default
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::setName
void setName(const std::string &sName)
Definition: eventgroup.cpp:190
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::getOrder
int getOrder() const
Definition: eventgroup.cpp:211
event.h
Event declaration.
EVENTSLIB::RgbColor
Definition: eventgroup.h:74
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::getColor
EVENTSLIB::RgbColor getColor() const
Definition: eventgroup.cpp:167
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::setColor
void setColor(const EVENTSLIB::RgbColor &color)
Definition: eventgroup.cpp:160
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::operator<
bool operator<(const EventGroupINT &groupRHS) const
Definition: eventgroup.cpp:225
EVENTSLIB::EVENTSINTERNAL::EventGroupINT
the class stores the concept of an event group internally in the Event library.
Definition: eventgroup.h:154
EVENTSLIB::RgbColor::RgbColor
RgbColor()
Definition: eventgroup.cpp:71
std
Definition: event.h:282
EVENTSLIB::EVENTSINTERNAL::EventGroupINT::getName
const std::string & getName() const
Definition: eventgroup.cpp:183