#include <Edge.h>
Public Types | |
| typedef boost::shared_ptr< Edge > | Ptr |
| typedef dyn_hash_map< void *, void *, void_ptr_hasher > | annos_by_type_t |
| typedef std::vector < annos_by_type_t * > | annos_t |
Public Member Functions | |
| NodeSharedPtr | source () const |
| NodeSharedPtr | target () const |
| void | setSource (NodeSharedPtr source) |
| void | setTarget (NodeSharedPtr target) |
| virtual | ~Edge () |
| template<class T > | |
| AN_INLINE bool | addAnnotation (const T *a, AnnotationClass< T > &a_id) |
| bool | operator== (AnnotatableSparse &cmp) |
| template<class T > | |
| AN_INLINE bool | getAnnotation (T *&a, AnnotationClass< T > &a_id) const |
| template<class T > | |
| bool | removeAnnotation (AnnotationClass< T > &a_id) |
| void | serializeAnnotations (SerializerBase *sb, const char *) |
| void | annotationsReport () |
Static Public Member Functions | |
| static Ptr | createEdge (const NodeSharedPtr source, const NodeSharedPtr target) |
Protected Member Functions | |
| Edge (const NodePtr source, const NodePtr target) | |
| Edge () | |
Protected Attributes | |
| NodePtr | source_ |
| NodePtr | target_ |
Private Types | |
| typedef boost::shared_ptr< Node > | NodeSharedPtr |
| typedef boost::weak_ptr< Node > | NodePtr |
Friends | |
| class | Node |
| class | Graph |
| class | Creator |
Definition at line 43 of file Edge.h.
typedef dyn_hash_map<void *, void *, void_ptr_hasher> Dyninst::AnnotatableSparse::annos_by_type_t [inherited] |
Definition at line 505 of file Annotatable.h.
typedef std::vector<annos_by_type_t *> Dyninst::AnnotatableSparse::annos_t [inherited] |
Definition at line 508 of file Annotatable.h.
typedef boost::weak_ptr<Node> Dyninst::Edge::NodePtr [private] |
typedef boost::shared_ptr<Node> Dyninst::Edge::NodeSharedPtr [private] |
| typedef boost::shared_ptr<Edge> Dyninst::Edge::Ptr |
| Edge::Edge | ( | ) | [protected] |
Definition at line 57 of file Edge.C.
Referenced by createEdge().
| AN_INLINE bool Dyninst::AnnotatableSparse::addAnnotation | ( | const T * | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | [inline, inherited] |
Definition at line 754 of file Annotatable.h.
References Dyninst::annotatable_printf(), FILE__, fprintf, Dyninst::getExistingOutputSB(), Dyninst::AnnotationClassBase::getID(), Dyninst::AnnotationClassBase::getName(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::ser_operation(), Dyninst::serialize_post_annotation(), Dyninst::sp_add_anno, and Dyninst::sparse.
Referenced by Dyninst::SymtabAPI::parseStabString().
| void Dyninst::AnnotatableSparse::annotationsReport | ( | ) | [inline, inherited] |
Definition at line 932 of file Annotatable.h.
References FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, and getTypeName().
| Edge::Ptr Edge::createEdge | ( | const NodeSharedPtr | source, | |
| const NodeSharedPtr | target | |||
| ) | [static] |
Definition at line 44 of file Edge.C.
References Edge().
Referenced by Dyninst::Graph::insertPair().
| AN_INLINE bool Dyninst::AnnotatableSparse::getAnnotation | ( | T *& | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | const [inline, inherited] |
Definition at line 818 of file Annotatable.h.
Referenced by Dyninst::SymtabAPI::Function::addLocalVar(), Dyninst::SymtabAPI::Function::addParam(), Dyninst::SymtabAPI::Symtab::addUserRegion(), Dyninst::SymtabAPI::Symtab::addUserType(), Dyninst::SymtabAPI::Function::findLocalVariable(), Dyninst::SymtabAPI::Symtab::getAllNewRegions(), Dyninst::SymtabAPI::Function::getLocalVariables(), Dyninst::SymtabAPI::Function::getParams(), Dyninst::SymtabAPI::Symbol::getVersionFileName(), Dyninst::SymtabAPI::Symbol::getVersions(), Dyninst::SymtabAPI::parseStabString(), Dyninst::SymtabAPI::Function::setupParams(), Dyninst::SymtabAPI::Symbol::setVersionFileName(), Dyninst::SymtabAPI::Symbol::setVersions(), Dyninst::SymtabAPI::Function::~Function(), Dyninst::SymtabAPI::Symbol::~Symbol(), and Dyninst::SymtabAPI::Symtab::~Symtab().
| bool Dyninst::AnnotatableSparse::operator== | ( | AnnotatableSparse & | cmp | ) | [inline, inherited] |
Definition at line 668 of file Annotatable.h.
References FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, Dyninst::AnnotatableSparse::getAnnos(), and Dyninst::AnnotationClassBase::getCmpFunc().
| bool Dyninst::AnnotatableSparse::removeAnnotation | ( | AnnotationClass< T > & | a_id | ) | [inline, inherited] |
Definition at line 843 of file Annotatable.h.
References Dyninst::annotation_debug_flag(), FILE__, fprintf, Dyninst::AnnotationClassBase::getID(), and Dyninst::AnnotationClassBase::getName().
Referenced by Dyninst::SymtabAPI::Function::~Function(), and Dyninst::SymtabAPI::Symbol::~Symbol().
| void Dyninst::AnnotatableSparse::serializeAnnotations | ( | SerializerBase * | sb, | |
| const char * | ||||
| ) | [inline, inherited] |
Definition at line 869 of file Annotatable.h.
References Dyninst::ser_rec_t::acb, Dyninst::add_annotations(), Dyninst::ser_rec_t::data, FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, Dyninst::get_serializer_index(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::is_input(), Dyninst::is_output(), Dyninst::ser_rec_t::parent_id, Dyninst::serialize_annotation_list(), Dyninst::ser_rec_t::sod, and Dyninst::sparse.
| void Dyninst::Edge::setSource | ( | NodeSharedPtr | source | ) | [inline] |
| void Dyninst::Edge::setTarget | ( | NodeSharedPtr | target | ) | [inline] |
| NodeSharedPtr Dyninst::Edge::source | ( | ) | const [inline] |
| NodeSharedPtr Dyninst::Edge::target | ( | ) | const [inline] |
NodePtr Dyninst::Edge::source_ [protected] |
NodePtr Dyninst::Edge::target_ [protected] |
1.6.1