Fawkes API  Fawkes Development Version
TestInterface.cpp
1 
2 /***************************************************************************
3  * TestInterface.cpp - Fawkes BlackBoard Interface - TestInterface
4  *
5  * Templated created: Thu Oct 12 10:49:19 2006
6  * Copyright 2006-2007 Tim Niemueller
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version. A runtime exception applies to
14  * this software (see LICENSE.GPL_WRE file mentioned below for details).
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Library General Public License for more details.
20  *
21  * Read the full text in the LICENSE.GPL_WRE file in the doc directory.
22  */
23 
24 #include <interfaces/TestInterface.h>
25 
26 #include <core/exceptions/software.h>
27 
28 #include <map>
29 #include <string>
30 #include <cstring>
31 #include <cstdlib>
32 
33 namespace fawkes {
34 
35 /** @class TestInterface <interfaces/TestInterface.h>
36  * TestInterface Fawkes BlackBoard Interface.
37  * Test interface. Use this to play around. Do NOT remove any fields, as this
38  interface is used by BlackBoard QA.
39  * @ingroup FawkesInterfaces
40  */
41 
42 
43 /** TEST_CONSTANT constant */
44 const int32_t TestInterface::TEST_CONSTANT = 5;
45 /** TEST_FLOAT_CONSTANT constant */
46 const float TestInterface::TEST_FLOAT_CONSTANT = 1.2;
47 
48 /** Constructor */
49 TestInterface::TestInterface() : Interface()
50 {
51  data_size = sizeof(TestInterface_data_t);
52  data_ptr = malloc(data_size);
53  data = (TestInterface_data_t *)data_ptr;
54  data_ts = (interface_data_ts_t *)data_ptr;
55  memset(data_ptr, 0, data_size);
56  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
57  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
58  add_fieldinfo(IFT_BOOL, "test_bool", 1, &data->test_bool);
59  add_fieldinfo(IFT_INT32, "test_int", 1, &data->test_int);
60  add_fieldinfo(IFT_BYTE, "flags", 1, &data->flags);
61  add_fieldinfo(IFT_STRING, "test_string", 30, data->test_string);
62  add_fieldinfo(IFT_INT32, "result", 1, &data->result);
63  add_fieldinfo(IFT_UINT32, "test_uint", 1, &data->test_uint);
64  add_messageinfo("SetTestIntMessage");
65  add_messageinfo("SetTestStringMessage");
66  add_messageinfo("CalculateMessage");
67  unsigned char tmp_hash[] = {0xe4, 0xe2, 0x1, 0xa9, 0xc8, 0x87, 0x8d, 0x3d, 0xa3, 0xab, 0xc9, 0xcd, 0xf3, 0xf, 0x5a, 0x33};
68  set_hash(tmp_hash);
69 }
70 
71 /** Destructor */
72 TestInterface::~TestInterface()
73 {
74  free(data_ptr);
75 }
76 /** Convert TestEnum constant to string.
77  * @param value value to convert to string
78  * @return constant value as string.
79  */
80 const char *
82 {
83  switch (value) {
84  case TEST_ENUM_1: return "TEST_ENUM_1";
85  case TEST_ENUM_2: return "TEST_ENUM_2";
86  default: return "UNKNOWN";
87  }
88 }
89 /* Methods */
90 /** Get test_bool value.
91  * Test Bool
92  * @return test_bool value
93  */
94 bool
96 {
97  return data->test_bool;
98 }
99 
100 /** Get maximum length of test_bool value.
101  * @return length of test_bool value, can be length of the array or number of
102  * maximum number of characters for a string
103  */
104 size_t
106 {
107  return 1;
108 }
109 
110 /** Set test_bool value.
111  * Test Bool
112  * @param new_test_bool new test_bool value
113  */
114 void
115 TestInterface::set_test_bool(const bool new_test_bool)
116 {
117  data_changed |= change_field(data->test_bool, new_test_bool);
118 }
119 
120 /** Get test_int value.
121  * Test integer
122  * @return test_int value
123  */
124 int32_t
126 {
127  return data->test_int;
128 }
129 
130 /** Get maximum length of test_int value.
131  * @return length of test_int value, can be length of the array or number of
132  * maximum number of characters for a string
133  */
134 size_t
136 {
137  return 1;
138 }
139 
140 /** Set test_int value.
141  * Test integer
142  * @param new_test_int new test_int value
143  */
144 void
145 TestInterface::set_test_int(const int32_t new_test_int)
146 {
147  data_changed |= change_field(data->test_int, new_test_int);
148 }
149 
150 /** Get flags value.
151  * Flags spit down by the writer
152  * @return flags value
153  */
154 uint8_t
156 {
157  return data->flags;
158 }
159 
160 /** Get maximum length of flags value.
161  * @return length of flags value, can be length of the array or number of
162  * maximum number of characters for a string
163  */
164 size_t
166 {
167  return 1;
168 }
169 
170 /** Set flags value.
171  * Flags spit down by the writer
172  * @param new_flags new flags value
173  */
174 void
175 TestInterface::set_flags(const uint8_t new_flags)
176 {
177  data_changed |= change_field(data->flags, new_flags);
178 }
179 
180 /** Get test_string value.
181  * A test sring
182  * @return test_string value
183  */
184 char *
186 {
187  return data->test_string;
188 }
189 
190 /** Get maximum length of test_string value.
191  * @return length of test_string value, can be length of the array or number of
192  * maximum number of characters for a string
193  */
194 size_t
196 {
197  return 30;
198 }
199 
200 /** Set test_string value.
201  * A test sring
202  * @param new_test_string new test_string value
203  */
204 void
205 TestInterface::set_test_string(const char * new_test_string)
206 {
207  data_changed |= change_field(data->test_string, new_test_string);
208 }
209 
210 /** Get result value.
211  * Result of operation add operation from Calculate message.
212  * @return result value
213  */
214 int32_t
216 {
217  return data->result;
218 }
219 
220 /** Get maximum length of result value.
221  * @return length of result value, can be length of the array or number of
222  * maximum number of characters for a string
223  */
224 size_t
226 {
227  return 1;
228 }
229 
230 /** Set result value.
231  * Result of operation add operation from Calculate message.
232  * @param new_result new result value
233  */
234 void
235 TestInterface::set_result(const int32_t new_result)
236 {
237  data_changed |= change_field(data->result, new_result);
238 }
239 
240 /** Get test_uint value.
241  * Test uint32
242  * @return test_uint value
243  */
244 uint32_t
246 {
247  return data->test_uint;
248 }
249 
250 /** Get maximum length of test_uint value.
251  * @return length of test_uint value, can be length of the array or number of
252  * maximum number of characters for a string
253  */
254 size_t
256 {
257  return 1;
258 }
259 
260 /** Set test_uint value.
261  * Test uint32
262  * @param new_test_uint new test_uint value
263  */
264 void
265 TestInterface::set_test_uint(const uint32_t new_test_uint)
266 {
267  data_changed |= change_field(data->test_uint, new_test_uint);
268 }
269 
270 /* =========== message create =========== */
271 Message *
273 {
274  if ( strncmp("SetTestIntMessage", type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
275  return new SetTestIntMessage();
276  } else if ( strncmp("SetTestStringMessage", type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
277  return new SetTestStringMessage();
278  } else if ( strncmp("CalculateMessage", type, INTERFACE_MESSAGE_TYPE_SIZE_ - 1) == 0 ) {
279  return new CalculateMessage();
280  } else {
281  throw UnknownTypeException("The given type '%s' does not match any known "
282  "message type for this interface type.", type);
283  }
284 }
285 
286 
287 /** Copy values from other interface.
288  * @param other other interface to copy values from
289  */
290 void
292 {
293  const TestInterface *oi = dynamic_cast<const TestInterface *>(other);
294  if (oi == NULL) {
295  throw TypeMismatchException("Can only copy values from interface of same type (%s vs. %s)",
296  type(), other->type());
297  }
298  memcpy(data, oi->data, sizeof(TestInterface_data_t));
299 }
300 
301 const char *
302 TestInterface::enum_tostring(const char *enumtype, int val) const
303 {
304  if (strcmp(enumtype, "TestEnum") == 0) {
305  return tostring_TestEnum((TestEnum)val);
306  }
307  throw UnknownTypeException("Unknown enum type %s", enumtype);
308 }
309 
310 /* =========== messages =========== */
311 /** @class TestInterface::SetTestIntMessage <interfaces/TestInterface.h>
312  * SetTestIntMessage Fawkes BlackBoard Interface Message.
313  *
314 
315  */
316 
317 
318 /** Constructor with initial values.
319  * @param ini_test_int initial value for test_int
320  */
321 TestInterface::SetTestIntMessage::SetTestIntMessage(const int32_t ini_test_int) : Message("SetTestIntMessage")
322 {
323  data_size = sizeof(SetTestIntMessage_data_t);
324  data_ptr = malloc(data_size);
325  memset(data_ptr, 0, data_size);
326  data = (SetTestIntMessage_data_t *)data_ptr;
328  data->test_int = ini_test_int;
329  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
330  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
331  add_fieldinfo(IFT_INT32, "test_int", 1, &data->test_int);
332 }
333 /** Constructor */
335 {
336  data_size = sizeof(SetTestIntMessage_data_t);
337  data_ptr = malloc(data_size);
338  memset(data_ptr, 0, data_size);
339  data = (SetTestIntMessage_data_t *)data_ptr;
341  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
342  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
343  add_fieldinfo(IFT_INT32, "test_int", 1, &data->test_int);
344 }
345 
346 /** Destructor */
348 {
349  free(data_ptr);
350 }
351 
352 /** Copy constructor.
353  * @param m message to copy from
354  */
356 {
357  data_size = m->data_size;
358  data_ptr = malloc(data_size);
359  memcpy(data_ptr, m->data_ptr, data_size);
360  data = (SetTestIntMessage_data_t *)data_ptr;
362 }
363 
364 /* Methods */
365 /** Get test_int value.
366  * Test integer
367  * @return test_int value
368  */
369 int32_t
371 {
372  return data->test_int;
373 }
374 
375 /** Get maximum length of test_int value.
376  * @return length of test_int value, can be length of the array or number of
377  * maximum number of characters for a string
378  */
379 size_t
381 {
382  return 1;
383 }
384 
385 /** Set test_int value.
386  * Test integer
387  * @param new_test_int new test_int value
388  */
389 void
391 {
392  change_field(data->test_int, new_test_int);
393 }
394 
395 /** Clone this message.
396  * Produces a message of the same type as this message and copies the
397  * data to the new message.
398  * @return clone of this message
399  */
400 Message *
402 {
403  return new TestInterface::SetTestIntMessage(this);
404 }
405 /** @class TestInterface::SetTestStringMessage <interfaces/TestInterface.h>
406  * SetTestStringMessage Fawkes BlackBoard Interface Message.
407  *
408 
409  */
410 
411 
412 /** Constructor with initial values.
413  * @param ini_test_string initial value for test_string
414  */
415 TestInterface::SetTestStringMessage::SetTestStringMessage(const char * ini_test_string) : Message("SetTestStringMessage")
416 {
417  data_size = sizeof(SetTestStringMessage_data_t);
418  data_ptr = malloc(data_size);
419  memset(data_ptr, 0, data_size);
420  data = (SetTestStringMessage_data_t *)data_ptr;
422  strncpy(data->test_string, ini_test_string, 30-1);
423  data->test_string[30-1] = 0;
424  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
425  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
426  add_fieldinfo(IFT_STRING, "test_string", 30, data->test_string);
427 }
428 /** Constructor */
430 {
431  data_size = sizeof(SetTestStringMessage_data_t);
432  data_ptr = malloc(data_size);
433  memset(data_ptr, 0, data_size);
434  data = (SetTestStringMessage_data_t *)data_ptr;
436  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
437  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
438  add_fieldinfo(IFT_STRING, "test_string", 30, data->test_string);
439 }
440 
441 /** Destructor */
443 {
444  free(data_ptr);
445 }
446 
447 /** Copy constructor.
448  * @param m message to copy from
449  */
451 {
452  data_size = m->data_size;
453  data_ptr = malloc(data_size);
454  memcpy(data_ptr, m->data_ptr, data_size);
455  data = (SetTestStringMessage_data_t *)data_ptr;
457 }
458 
459 /* Methods */
460 /** Get test_string value.
461  * A test sring
462  * @return test_string value
463  */
464 char *
466 {
467  return data->test_string;
468 }
469 
470 /** Get maximum length of test_string value.
471  * @return length of test_string value, can be length of the array or number of
472  * maximum number of characters for a string
473  */
474 size_t
476 {
477  return 30;
478 }
479 
480 /** Set test_string value.
481  * A test sring
482  * @param new_test_string new test_string value
483  */
484 void
486 {
487  change_field(data->test_string, new_test_string);
488 }
489 
490 /** Clone this message.
491  * Produces a message of the same type as this message and copies the
492  * data to the new message.
493  * @return clone of this message
494  */
495 Message *
497 {
498  return new TestInterface::SetTestStringMessage(this);
499 }
500 /** @class TestInterface::CalculateMessage <interfaces/TestInterface.h>
501  * CalculateMessage Fawkes BlackBoard Interface Message.
502  *
503 
504  */
505 
506 
507 /** Constructor with initial values.
508  * @param ini_summand initial value for summand
509  * @param ini_addend initial value for addend
510  */
511 TestInterface::CalculateMessage::CalculateMessage(const int32_t ini_summand, const int32_t ini_addend) : Message("CalculateMessage")
512 {
513  data_size = sizeof(CalculateMessage_data_t);
514  data_ptr = malloc(data_size);
515  memset(data_ptr, 0, data_size);
516  data = (CalculateMessage_data_t *)data_ptr;
518  data->summand = ini_summand;
519  data->addend = ini_addend;
520  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
521  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
522  add_fieldinfo(IFT_INT32, "summand", 1, &data->summand);
523  add_fieldinfo(IFT_INT32, "addend", 1, &data->addend);
524 }
525 /** Constructor */
527 {
528  data_size = sizeof(CalculateMessage_data_t);
529  data_ptr = malloc(data_size);
530  memset(data_ptr, 0, data_size);
531  data = (CalculateMessage_data_t *)data_ptr;
533  enum_map_TestEnum[(int)TEST_ENUM_1] = "TEST_ENUM_1";
534  enum_map_TestEnum[(int)TEST_ENUM_2] = "TEST_ENUM_2";
535  add_fieldinfo(IFT_INT32, "summand", 1, &data->summand);
536  add_fieldinfo(IFT_INT32, "addend", 1, &data->addend);
537 }
538 
539 /** Destructor */
541 {
542  free(data_ptr);
543 }
544 
545 /** Copy constructor.
546  * @param m message to copy from
547  */
549 {
550  data_size = m->data_size;
551  data_ptr = malloc(data_size);
552  memcpy(data_ptr, m->data_ptr, data_size);
553  data = (CalculateMessage_data_t *)data_ptr;
555 }
556 
557 /* Methods */
558 /** Get summand value.
559  * Summand
560  * @return summand value
561  */
562 int32_t
564 {
565  return data->summand;
566 }
567 
568 /** Get maximum length of summand value.
569  * @return length of summand value, can be length of the array or number of
570  * maximum number of characters for a string
571  */
572 size_t
574 {
575  return 1;
576 }
577 
578 /** Set summand value.
579  * Summand
580  * @param new_summand new summand value
581  */
582 void
584 {
585  change_field(data->summand, new_summand);
586 }
587 
588 /** Get addend value.
589  * Addend
590  * @return addend value
591  */
592 int32_t
594 {
595  return data->addend;
596 }
597 
598 /** Get maximum length of addend value.
599  * @return length of addend value, can be length of the array or number of
600  * maximum number of characters for a string
601  */
602 size_t
604 {
605  return 1;
606 }
607 
608 /** Set addend value.
609  * Addend
610  * @param new_addend new addend value
611  */
612 void
614 {
615  change_field(data->addend, new_addend);
616 }
617 
618 /** Clone this message.
619  * Produces a message of the same type as this message and copies the
620  * data to the new message.
621  * @return clone of this message
622  */
623 Message *
625 {
626  return new TestInterface::CalculateMessage(this);
627 }
628 /** Check if message is valid and can be enqueued.
629  * @param message Message to check
630  * @return true if the message is valid, false otherwise.
631  */
632 bool
634 {
635  const SetTestIntMessage *m0 = dynamic_cast<const SetTestIntMessage *>(message);
636  if ( m0 != NULL ) {
637  return true;
638  }
639  const SetTestStringMessage *m1 = dynamic_cast<const SetTestStringMessage *>(message);
640  if ( m1 != NULL ) {
641  return true;
642  }
643  const CalculateMessage *m2 = dynamic_cast<const CalculateMessage *>(message);
644  if ( m2 != NULL ) {
645  return true;
646  }
647  return false;
648 }
649 
650 /// @cond INTERNALS
651 EXPORT_INTERFACE(TestInterface)
652 /// @endcond
653 
654 
655 } // end namespace fawkes
fawkes::Interface::data_ptr
void * data_ptr
Pointer to local memory storage.
Definition: interface.h:224
fawkes::TestInterface::TEST_ENUM_1
@ TEST_ENUM_1
Item 1.
Definition: TestInterface.h:45
fawkes::TestInterface::tostring_TestEnum
const char * tostring_TestEnum(TestEnum value) const
Convert TestEnum constant to string.
Definition: TestInterface.cpp:81
fawkes::TestInterface::create_message
virtual Message * create_message(const char *type) const
Create message based on type name.
Definition: TestInterface.cpp:272
fawkes::TestInterface::copy_values
virtual void copy_values(const Interface *other)
Copy values from other interface.
Definition: TestInterface.cpp:291
fawkes::TestInterface::SetTestStringMessage::maxlenof_test_string
size_t maxlenof_test_string() const
Get maximum length of test_string value.
Definition: TestInterface.cpp:475
fawkes::TestInterface::set_result
void set_result(const int32_t new_result)
Set result value.
Definition: TestInterface.cpp:235
fawkes::TestInterface::SetTestIntMessage::~SetTestIntMessage
~SetTestIntMessage()
Destructor.
Definition: TestInterface.cpp:347
fawkes::Message
Base class for all messages passed through interfaces in Fawkes BlackBoard.
Definition: message.h:45
fawkes::TestInterface::SetTestIntMessage::SetTestIntMessage
SetTestIntMessage()
Constructor.
Definition: TestInterface.cpp:334
fawkes::TestInterface::CalculateMessage::addend
int32_t addend() const
Get addend value.
Definition: TestInterface.cpp:593
fawkes::Message::data_ptr
void * data_ptr
Pointer to memory that contains local data.
Definition: message.h:128
fawkes::TestInterface::SetTestStringMessage::~SetTestStringMessage
~SetTestStringMessage()
Destructor.
Definition: TestInterface.cpp:442
fawkes::IFT_BOOL
@ IFT_BOOL
boolean field
Definition: types.h:37
fawkes::Message::data_ts
message_data_ts_t * data_ts
data timestamp aliasing pointer
Definition: message.h:138
fawkes::IFT_UINT32
@ IFT_UINT32
32 bit unsigned integer field
Definition: types.h:43
fawkes::TestInterface::CalculateMessage::CalculateMessage
CalculateMessage()
Constructor.
Definition: TestInterface.cpp:526
fawkes::TestInterface::SetTestStringMessage::set_test_string
void set_test_string(const char *new_test_string)
Set test_string value.
Definition: TestInterface.cpp:485
fawkes::TestInterface::set_test_int
void set_test_int(const int32_t new_test_int)
Set test_int value.
Definition: TestInterface.cpp:145
fawkes::TestInterface::TestEnum
TestEnum
Demonstrating enums.
Definition: TestInterface.h:44
fawkes::Interface::type
const char * type() const
Get type of interface.
Definition: interface.cpp:643
fawkes::TestInterface::CalculateMessage::~CalculateMessage
~CalculateMessage()
Destructor.
Definition: TestInterface.cpp:540
fawkes::TestInterface::SetTestIntMessage::test_int
int32_t test_int() const
Get test_int value.
Definition: TestInterface.cpp:370
fawkes::TestInterface::result
int32_t result() const
Get result value.
Definition: TestInterface.cpp:215
fawkes::Message::message_data_ts_t
Timestamp data, must be present and first entries for each interface data structs!...
Definition: message.h:134
fawkes::TestInterface::maxlenof_result
size_t maxlenof_result() const
Get maximum length of result value.
Definition: TestInterface.cpp:225
fawkes::TypeMismatchException
Type mismatch.
Definition: software.h:44
fawkes::TestInterface::maxlenof_flags
size_t maxlenof_flags() const
Get maximum length of flags value.
Definition: TestInterface.cpp:165
fawkes::Interface::data_changed
bool data_changed
Indicator if data has changed.
Definition: interface.h:226
fawkes::TestInterface::maxlenof_test_int
size_t maxlenof_test_int() const
Get maximum length of test_int value.
Definition: TestInterface.cpp:135
fawkes::TestInterface::CalculateMessage::set_summand
void set_summand(const int32_t new_summand)
Set summand value.
Definition: TestInterface.cpp:583
fawkes::IFT_INT32
@ IFT_INT32
32 bit integer field
Definition: types.h:42
fawkes::TestInterface::SetTestIntMessage
SetTestIntMessage Fawkes BlackBoard Interface Message.
Definition: TestInterface.h:69
fawkes::UnknownTypeException
Unknown type.
Definition: software.h:50
fawkes::TestInterface::CalculateMessage
CalculateMessage Fawkes BlackBoard Interface Message.
Definition: TestInterface.h:121
fawkes::TestInterface::SetTestStringMessage::test_string
char * test_string() const
Get test_string value.
Definition: TestInterface.cpp:465
fawkes::TestInterface::is_test_bool
bool is_test_bool() const
Get test_bool value.
Definition: TestInterface.cpp:95
fawkes::TestInterface::test_int
int32_t test_int() const
Get test_int value.
Definition: TestInterface.cpp:125
fawkes::TestInterface::SetTestIntMessage::maxlenof_test_int
size_t maxlenof_test_int() const
Get maximum length of test_int value.
Definition: TestInterface.cpp:380
fawkes
Fawkes library namespace.
fawkes::Interface::set_hash
void set_hash(unsigned char *ihash)
Set hash.
Definition: interface.cpp:316
fawkes::Message::data_size
unsigned int data_size
Size of memory needed to hold all data.
Definition: message.h:129
fawkes::TestInterface::enum_tostring
virtual const char * enum_tostring(const char *enumtype, int val) const
Convert arbitrary enum value to string.
Definition: TestInterface.cpp:302
fawkes::TestInterface::TEST_FLOAT_CONSTANT
static const float TEST_FLOAT_CONSTANT
TEST_FLOAT_CONSTANT constant.
Definition: TestInterface.h:41
fawkes::SwitchInterface::value
float value() const
Get value value.
Definition: SwitchInterface.cpp:119
fawkes::Interface
Base class for all Fawkes BlackBoard interfaces.
Definition: interface.h:79
fawkes::TestInterface::SetTestIntMessage::clone
virtual Message * clone() const
Clone this message.
Definition: TestInterface.cpp:401
fawkes::TestInterface::SetTestStringMessage::SetTestStringMessage
SetTestStringMessage()
Constructor.
Definition: TestInterface.cpp:429
fawkes::TestInterface::CalculateMessage::set_addend
void set_addend(const int32_t new_addend)
Set addend value.
Definition: TestInterface.cpp:613
fawkes::TestInterface::CalculateMessage::maxlenof_addend
size_t maxlenof_addend() const
Get maximum length of addend value.
Definition: TestInterface.cpp:603
fawkes::Message::add_fieldinfo
void add_fieldinfo(interface_fieldtype_t type, const char *name, size_t length, void *value, const char *enumtype=0, const interface_enum_map_t *enum_map=0)
Add an entry to the info list.
Definition: message.cpp:400
fawkes::TestInterface::maxlenof_test_uint
size_t maxlenof_test_uint() const
Get maximum length of test_uint value.
Definition: TestInterface.cpp:255
fawkes::TestInterface::TEST_CONSTANT
static const int32_t TEST_CONSTANT
TEST_CONSTANT constant.
Definition: TestInterface.h:40
fawkes::TestInterface::test_uint
uint32_t test_uint() const
Get test_uint value.
Definition: TestInterface.cpp:245
fawkes::TestInterface::SetTestStringMessage::clone
virtual Message * clone() const
Clone this message.
Definition: TestInterface.cpp:496
fawkes::TestInterface::CalculateMessage::maxlenof_summand
size_t maxlenof_summand() const
Get maximum length of summand value.
Definition: TestInterface.cpp:573
fawkes::TestInterface::set_flags
void set_flags(const uint8_t new_flags)
Set flags value.
Definition: TestInterface.cpp:175
fawkes::TestInterface::flags
uint8_t flags() const
Get flags value.
Definition: TestInterface.cpp:155
fawkes::TestInterface::CalculateMessage::clone
virtual Message * clone() const
Clone this message.
Definition: TestInterface.cpp:624
fawkes::TestInterface::set_test_uint
void set_test_uint(const uint32_t new_test_uint)
Set test_uint value.
Definition: TestInterface.cpp:265
fawkes::TestInterface::maxlenof_test_string
size_t maxlenof_test_string() const
Get maximum length of test_string value.
Definition: TestInterface.cpp:195
fawkes::TestInterface::test_string
char * test_string() const
Get test_string value.
Definition: TestInterface.cpp:185
fawkes::TestInterface::CalculateMessage::summand
int32_t summand() const
Get summand value.
Definition: TestInterface.cpp:563
fawkes::TestInterface::maxlenof_test_bool
size_t maxlenof_test_bool() const
Get maximum length of test_bool value.
Definition: TestInterface.cpp:105
fawkes::TestInterface::set_test_string
void set_test_string(const char *new_test_string)
Set test_string value.
Definition: TestInterface.cpp:205
fawkes::IFT_STRING
@ IFT_STRING
string field
Definition: types.h:48
fawkes::IFT_BYTE
@ IFT_BYTE
byte field, alias for uint8
Definition: types.h:49
fawkes::TestInterface::set_test_bool
void set_test_bool(const bool new_test_bool)
Set test_bool value.
Definition: TestInterface.cpp:115
fawkes::TestInterface::TEST_ENUM_2
@ TEST_ENUM_2
Item 2.
Definition: TestInterface.h:46
fawkes::TestInterface
TestInterface Fawkes BlackBoard Interface.
Definition: TestInterface.h:34
fawkes::Interface::add_messageinfo
void add_messageinfo(const char *name)
Add an entry to the message info list.
Definition: interface.cpp:375
fawkes::change_field
bool change_field(FieldT &field, const DataT &value)
Set a field and return whether it changed.
Definition: message.h:167
fawkes::TestInterface::SetTestIntMessage::set_test_int
void set_test_int(const int32_t new_test_int)
Set test_int value.
Definition: TestInterface.cpp:390
fawkes::TestInterface::SetTestStringMessage
SetTestStringMessage Fawkes BlackBoard Interface Message.
Definition: TestInterface.h:95
fawkes::TestInterface::message_valid
virtual bool message_valid(const Message *message) const
Check if message is valid and can be enqueued.
Definition: TestInterface.cpp:633