#include "istring.h"Include dependency graph for object_base.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Classes | |
| class | object_base |
| A virtual base class that specifies some requirements for HOOPLE objects. More... | |
| class | istring_object |
| An istring that is also derived from object_base. More... | |
| class | clonable |
| Provides a means to make a copy of an existing object. More... | |
| class | synchronizer_base |
| This is a pure virtual base for the simplest notion of synchronization. More... | |
| class | pairing< type1, type2 > |
| groups two items together. More... | |
Defines | |
| #define | IMPLEMENT_CLASS_NAME(objname) |
| Defines the name of a class by providing a variety of standard methods. | |
| #define IMPLEMENT_CLASS_NAME | ( | objname | ) |
Value:
static const char *static_class_name() { return (objname); } \ virtual const char *class_name() const { return static_class_name(); }
This macro helps a class implementor with a gnarly issue; often the class_name would be nice as a static function. However, that conflicts with the notion of derived classes in C++. So this macro takes the class's name as a parameter and produces both a static version of the function and the required virtual version. There is no redundant storage since the latter is implemented in terms of the former.
Definition at line 71 of file object_base.h.
Referenced by timer_driver_private_handler().
1.5.1