ROSE
0.9.6a
|
#include <Callgraph.h>
Public Member Functions | |
CallgraphTraversal (SgProject &project) | |
CallgraphInhAttr | evaluateInheritedAttribute (SgNode *astNode, CallgraphInhAttr inheritedAttribute) |
pure virtual function which must be implemented to compute the inherited attribute at a node More... | |
void | removeDeletedFunctionRows (void) |
remove functions row entries from DB using mpFunctionDefinitions More... | |
void | setFunctionDefinitions (vector< long > *set) |
set function def vector More... | |
vector< long > * | getFunctionDefinitions (void) |
get function def vector More... | |
void | setFileScopes (vector< long > *set) |
set file scope vector More... | |
vector< long > * | getFileScopes (void) |
get file scope vector More... | |
void | setDB (GlobalDatabaseConnection *set) |
set DB connection More... | |
GlobalDatabaseConnection * | getDB (void) |
get DB connection More... | |
void | setProjectId (long set) |
set project ID More... | |
long | getProjectId (void) |
get project ID More... | |
void | setFileId (long set) |
set file ID More... | |
long | getFileId (void) |
get file ID More... | |
void | setCallgraph (Callgraph *set) |
set pointer to the callgraph graph object More... | |
Callgraph * | getCallgraph (void) |
get pointer to the callgraph graph object More... | |
void | setClasshierarchy (Classhierarchy *set) |
set pointer to the Classhierarchy graph object More... | |
Classhierarchy * | getClasshierarchy (void) |
get pointer to the Classhierarchy graph object More... | |
void | setSgProject (SgProject *set) |
set pointer to the SgProject graph object More... | |
SgProject * | getSgProject (void) |
get pointer to the SgProject graph object More... | |
set< int > * | getCGFileSubgraphs (void) |
get callgraph file subgraph storage More... | |
void | setDeclList (list< SgNode * > *set) |
set query decl list More... | |
Private Member Functions | |
void | addCallEdge (SgFunctionDeclaration *funcDec, long functionScope) |
add an edge for the call to this function to the callgraph More... | |
Private Attributes | |
GlobalDatabaseConnection * | mpGDB |
long | mProjectId |
ID of the current project. More... | |
long | mFileId |
ID of the current file. More... | |
Callgraph * | mCallgraph |
graph to store the callgraph More... | |
Classhierarchy * | mClasshierarchy |
graph to store the class hierarchy More... | |
vector< long > * | mpFunctionDefinitions |
vector of encoutered function definitions (needed for detection of deleted functions) More... | |
vector< long > * | mpFileScopes |
vector of all id's of the processed files (for cleanup) More... | |
SgProject * | mpSgProject |
pointer to the project node More... | |
set< int > | mCGFileSubgraphs |
inited callgraph file subgraph values More... | |
list< SgNode * > * | mpDeclQList |
pointer to a query list of declaration nodes for quicker query More... | |
Additional Inherited Members | |
Public Types inherited from AstTopDownProcessing< CallgraphInhAttr > | |
typedef SgTreeTraversal < CallgraphInhAttr, DummyAttribute > ::SynthesizedAttributesList | SynthesizedAttributesList |
Protected Types inherited from SgTreeTraversal< CallgraphInhAttr, DummyAttribute > | |
typedef AstSuccessorsSelectors::SuccessorsContainer | SuccessorsContainer |
typedef SuccessorsContainer & | SuccessorsContainerRef |
Protected Member Functions inherited from AstTopDownProcessing< CallgraphInhAttr > | |
virtual void | atTraversalStart () |
Function called at the start of the traversal, before any node is visited; override if necessary, the default implementation is a no-op. More... | |
virtual void | atTraversalEnd () |
virtual void | destroyInheritedValue (SgNode *, CallgraphInhAttr) |
Definition at line 113 of file Callgraph.h.
|
inline |
Definition at line 117 of file Callgraph.h.
References mCallgraph, mClasshierarchy, mFileId, mpFunctionDefinitions, mProjectId, and mpSgProject.
|
virtual |
pure virtual function which must be implemented to compute the inherited attribute at a node
Implements AstTopDownProcessing< CallgraphInhAttr >.
void CallgraphTraversal::removeDeletedFunctionRows | ( | void | ) |
remove functions row entries from DB using mpFunctionDefinitions
|
inline |
set function def vector
Definition at line 139 of file Callgraph.h.
References mpFunctionDefinitions.
|
inline |
get function def vector
Definition at line 141 of file Callgraph.h.
References mpFunctionDefinitions.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
set pointer to the callgraph graph object
Definition at line 165 of file Callgraph.h.
References mCallgraph.
|
inline |
get pointer to the callgraph graph object
Definition at line 167 of file Callgraph.h.
References mCallgraph.
|
inline |
set pointer to the Classhierarchy graph object
Definition at line 170 of file Callgraph.h.
References mClasshierarchy.
|
inline |
get pointer to the Classhierarchy graph object
Definition at line 172 of file Callgraph.h.
References mClasshierarchy.
|
inline |
set pointer to the SgProject graph object
Definition at line 175 of file Callgraph.h.
References mpSgProject.
|
inline |
get pointer to the SgProject graph object
Definition at line 177 of file Callgraph.h.
References mpSgProject.
|
inline |
get callgraph file subgraph storage
Definition at line 180 of file Callgraph.h.
References mCGFileSubgraphs.
|
inline |
|
private |
add an edge for the call to this function to the callgraph
|
private |
Definition at line 193 of file Callgraph.h.
|
private |
ID of the current project.
Definition at line 196 of file Callgraph.h.
Referenced by CallgraphTraversal(), getProjectId(), and setProjectId().
|
private |
ID of the current file.
Definition at line 199 of file Callgraph.h.
Referenced by CallgraphTraversal(), getFileId(), and setFileId().
|
private |
graph to store the callgraph
Definition at line 203 of file Callgraph.h.
Referenced by CallgraphTraversal(), getCallgraph(), and setCallgraph().
|
private |
graph to store the class hierarchy
Definition at line 206 of file Callgraph.h.
Referenced by CallgraphTraversal(), getClasshierarchy(), and setClasshierarchy().
|
private |
vector of encoutered function definitions (needed for detection of deleted functions)
Definition at line 209 of file Callgraph.h.
Referenced by CallgraphTraversal(), getFunctionDefinitions(), and setFunctionDefinitions().
|
private |
vector of all id's of the processed files (for cleanup)
Definition at line 212 of file Callgraph.h.
Referenced by getFileScopes(), and setFileScopes().
|
private |
pointer to the project node
Definition at line 215 of file Callgraph.h.
Referenced by CallgraphTraversal(), getSgProject(), and setSgProject().
|
private |
inited callgraph file subgraph values
Definition at line 218 of file Callgraph.h.
Referenced by getCGFileSubgraphs().
|
private |
pointer to a query list of declaration nodes for quicker query
Definition at line 221 of file Callgraph.h.
Referenced by setDeclList().