#include <Annotatable.h>
Data Structures | |
| struct | aInfo |
Public Member Functions | |
| AnnotatableDense () | |
| ~AnnotatableDense () | |
| template<class T > | |
| bool | addAnnotation (const T *a, AnnotationClass< T > &a_id) |
| template<class T > | |
| bool | getAnnotation (T *&a, AnnotationClass< T > &a_id) const |
| template<class T > | |
| bool | removeAnnotation (AnnotationClass< T > &a_id) |
| void | serializeAnnotations (SerializerBase *sb, const char *tag) |
| void | annotationsReport () |
Private Types | |
| typedef void * | anno_list_t |
| typedef anno_list_t | anno_map_t |
Private Member Functions | |
| bool | addAnnotation (const void *a, AnnotationClassID id) |
Private Attributes | |
| aInfo * | annotations |
Friends | |
| class | SerializerBase |
| class | Serializable |
| COMMON_EXPORT bool | add_annotations (SerializerBase *, AnnotatableDense *, std::vector< ser_rec_t > &) |
Definition at line 189 of file Annotatable.h.
typedef void* Dyninst::AnnotatableDense::anno_list_t [private] |
Definition at line 194 of file Annotatable.h.
typedef anno_list_t Dyninst::AnnotatableDense::anno_map_t [private] |
Inheriting from this class adds a pointer to each object. Multiple types of annotations are stored under this pointer in a annotation_type -> anno_list_t map.
Definition at line 204 of file Annotatable.h.
| Dyninst::AnnotatableDense::AnnotatableDense | ( | ) | [inline] |
Definition at line 261 of file Annotatable.h.
| Dyninst::AnnotatableDense::~AnnotatableDense | ( | ) | [inline] |
Definition at line 265 of file Annotatable.h.
| bool Dyninst::AnnotatableDense::addAnnotation | ( | const T * | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | [inline] |
Definition at line 276 of file Annotatable.h.
References Dyninst::annotation_debug_flag(), Dyninst::dense, FILE__, fprintf, Dyninst::getExistingOutputSB(), Dyninst::AnnotationClassBase::getID(), Dyninst::AnnotationClassBase::getName(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::ser_operation(), Dyninst::serialize_post_annotation(), serialize_printf, and Dyninst::sp_add_anno.
| bool Dyninst::AnnotatableDense::addAnnotation | ( | const void * | a, | |
| AnnotationClassID | id | |||
| ) | [inline, private] |
Definition at line 218 of file Annotatable.h.
References Dyninst::annotation_debug_flag(), FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), and fprintf.
| void Dyninst::AnnotatableDense::annotationsReport | ( | ) | [inline] |
Definition at line 448 of file Annotatable.h.
References FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, and getTypeName().
| bool Dyninst::AnnotatableDense::getAnnotation | ( | T *& | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | const [inline] |
Definition at line 328 of file Annotatable.h.
References Dyninst::AnnotationClassBase::getID().
| bool Dyninst::AnnotatableDense::removeAnnotation | ( | AnnotationClass< T > & | a_id | ) | [inline] |
Definition at line 347 of file Annotatable.h.
References Dyninst::annotation_debug_flag(), FILE__, fprintf, Dyninst::AnnotationClassBase::getID(), Dyninst::AnnotationClassBase::getName(), and Dyninst::AnnotationClass< T >::getTypeName().
| void Dyninst::AnnotatableDense::serializeAnnotations | ( | SerializerBase * | sb, | |
| const char * | tag | |||
| ) | [inline] |
Definition at line 372 of file Annotatable.h.
References Dyninst::ser_rec_t::acb, Dyninst::add_annotations(), Dyninst::ser_rec_t::data, Dyninst::dense, FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, Dyninst::get_serializer_index(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::is_output(), Dyninst::ser_rec_t::parent_id, Dyninst::serialize_annotation_list(), serialize_printf, and Dyninst::ser_rec_t::sod.
| COMMON_EXPORT bool add_annotations | ( | SerializerBase * | , | |
| AnnotatableDense * | , | |||
| std::vector< ser_rec_t > & | ||||
| ) | [friend] |
friend class Serializable [friend] |
Definition at line 193 of file Annotatable.h.
friend class SerializerBase [friend] |
Definition at line 192 of file Annotatable.h.
aInfo* Dyninst::AnnotatableDense::annotations [private] |
Definition at line 212 of file Annotatable.h.
1.6.1