Dyninst::AnnotationClassBase Class Reference

#include <Annotatable.h>

Inheritance diagram for Dyninst::AnnotationClassBase:
Dyninst::AnnotationClass< T >

Public Member Functions

COMMON_EXPORT AnnotationClassID getID ()
COMMON_EXPORT std::string & getName ()
COMMON_EXPORT anno_cmp_func_t getCmpFunc ()
COMMON_EXPORT ser_func_t getSerializeFunc ()
virtual COMMON_EXPORT const char * getTypeName ()=0
virtual COMMON_EXPORT void * allocate ()=0

Static Public Member Functions

static COMMON_EXPORT
AnnotationClassBase
findAnnotationClass (unsigned int id)
static COMMON_EXPORT void dumpAnnotationClasses ()

Protected Member Functions

COMMON_EXPORT AnnotationClassBase (std::string n, anno_cmp_func_t cmp_func_=NULL, ser_func_t sf_=NULL)
virtual COMMON_EXPORT ~AnnotationClassBase ()

Protected Attributes

ser_func_t serialize_func

Private Attributes

anno_cmp_func_t cmp_func
AnnotationClassID id
std::string name

Static Private Attributes

static std::vector
< AnnotationClassBase * > * 
annotation_types = NULL
static dyn_hash_map
< std::string,
AnnotationClassID > * 
annotation_ids_by_name = NULL

Friends

class Serializable

Detailed Description

Definition at line 71 of file Annotatable.h.


Constructor & Destructor Documentation

AnnotationClassBase::AnnotationClassBase ( std::string  n,
anno_cmp_func_t  cmp_func_ = NULL,
ser_func_t  sf_ = NULL 
) [protected]
AnnotationClassBase::~AnnotationClassBase (  )  [protected, virtual]

Member Function Documentation

virtual COMMON_EXPORT void* Dyninst::AnnotationClassBase::allocate (  )  [pure virtual]
void AnnotationClassBase::dumpAnnotationClasses (  )  [static]

Definition at line 227 of file Annotatable.C.

References annotation_types, FILE__, fprintf, getID(), getName(), and getTypeName().

Dyninst::AnnotationClassBase * AnnotationClassBase::findAnnotationClass ( unsigned int  id  )  [static]
COMMON_EXPORT anno_cmp_func_t Dyninst::AnnotationClassBase::getCmpFunc (  )  [inline]

Definition at line 101 of file Annotatable.h.

References cmp_func.

Referenced by Dyninst::AnnotatableSparse::operator==().

COMMON_EXPORT AnnotationClassID Dyninst::AnnotationClassBase::getID (  )  [inline]
COMMON_EXPORT std::string& Dyninst::AnnotationClassBase::getName (  )  [inline]
COMMON_EXPORT ser_func_t Dyninst::AnnotationClassBase::getSerializeFunc (  )  [inline]
virtual COMMON_EXPORT const char* Dyninst::AnnotationClassBase::getTypeName (  )  [pure virtual]

Friends And Related Function Documentation

friend class Serializable [friend]

Definition at line 73 of file Annotatable.h.


Field Documentation

dyn_hash_map< std::string, AnnotationClassID > * AnnotationClassBase::annotation_ids_by_name = NULL [static, private]

Definition at line 76 of file Annotatable.h.

Referenced by AnnotationClassBase(), and ~AnnotationClassBase().

std::vector< AnnotationClassBase * > * AnnotationClassBase::annotation_types = NULL [static, private]

Definition at line 80 of file Annotatable.h.

Referenced by AnnotationClassBase(), and getCmpFunc().

Definition at line 81 of file Annotatable.h.

Referenced by AnnotationClassBase(), and getID().

std::string Dyninst::AnnotationClassBase::name [private]

The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 12 Jul 2013 for SymtabAPI by  doxygen 1.6.1