ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PartitionedAnalysis Class Referenceabstract

#include <partitionedAnalysis.h>

Inheritance diagram for PartitionedAnalysis:
Collaboration diagram for PartitionedAnalysis:

Public Member Functions

 PartitionedAnalysis (IntraPartitionDataflow *intraFactory)
 
void initMaster ()
 
IntraPartitionDataflowgetMasterDFAnalysis ()
 
bool activatePart (IntraPartitionDataflow *part)
 
std::set
< IntraPartitionDataflow * > 
split (IntraPartitionDataflow *origA, std::vector< IntraPartitionDataflowCheckpoint * > partitionChkpts, const Function &func, NodeState *fState, bool newSplit, bool newPartActive)
 
void join (IntraPartitionDataflow *joinA, IntraPartitionDataflowCheckpoint *chkpt, const Function &func, NodeState *fState)
 
virtual std::set
< IntraPartitionDataflow * > 
preJoin (partSplit *s, const Function &func, NodeState *fState, const std::map< IntraPartitionDataflow *, IntraPartitionDataflowCheckpoint * > &parts2chkpts)=0
 
virtual void postFinish (partSplit *s, const std::map< IntraPartitionDataflow *, IntraPartitionDataflowCheckpoint * > &parts2chkpts)=0
 
bool runAnalysis (const Function &func, NodeState *state)
 
- Public Member Functions inherited from IntraProceduralAnalysis
void setInterAnalysis (InterProceduralAnalysis *interAnalysis)
 
virtual ~IntraProceduralAnalysis ()
 
- Public Member Functions inherited from Analysis
 Analysis (bool(*f)(CFGNode)=defaultFilter)
 

Private Attributes

std::set
< IntraPartitionDataflow * > 
activeParts
 
std::set
< IntraPartitionDataflow * > 
joinParts
 
std::map
< IntraPartitionDataflow
*, std::list< partSplit * > > 
parts2splits
 
std::map
< IntraPartitionDataflow
*, IntraPartitionDataflowCheckpoint * > 
parts2chkpts
 
IntraPartitionDataflowintraFactory
 

Additional Inherited Members

- Public Attributes inherited from Analysis
bool(* filter )(CFGNode cfgn)
 
- Protected Attributes inherited from IntraProceduralAnalysis
InterProceduralAnalysisinterAnalysis
 

Detailed Description

Definition at line 75 of file partitionedAnalysis.h.

Constructor & Destructor Documentation

PartitionedAnalysis::PartitionedAnalysis ( IntraPartitionDataflow intraFactory)

Member Function Documentation

void PartitionedAnalysis::initMaster ( )
IntraPartitionDataflow* PartitionedAnalysis::getMasterDFAnalysis ( )
bool PartitionedAnalysis::activatePart ( IntraPartitionDataflow part)
std::set<IntraPartitionDataflow*> PartitionedAnalysis::split ( IntraPartitionDataflow origA,
std::vector< IntraPartitionDataflowCheckpoint * >  partitionChkpts,
const Function func,
NodeState fState,
bool  newSplit,
bool  newPartActive 
)
void PartitionedAnalysis::join ( IntraPartitionDataflow joinA,
IntraPartitionDataflowCheckpoint chkpt,
const Function func,
NodeState fState 
)
virtual std::set<IntraPartitionDataflow*> PartitionedAnalysis::preJoin ( partSplit s,
const Function func,
NodeState fState,
const std::map< IntraPartitionDataflow *, IntraPartitionDataflowCheckpoint * > &  parts2chkpts 
)
pure virtual
virtual void PartitionedAnalysis::postFinish ( partSplit s,
const std::map< IntraPartitionDataflow *, IntraPartitionDataflowCheckpoint * > &  parts2chkpts 
)
pure virtual
bool PartitionedAnalysis::runAnalysis ( const Function func,
NodeState state 
)
virtual

Member Data Documentation

std::set<IntraPartitionDataflow*> PartitionedAnalysis::activeParts
private

Definition at line 78 of file partitionedAnalysis.h.

std::set<IntraPartitionDataflow*> PartitionedAnalysis::joinParts
private

Definition at line 84 of file partitionedAnalysis.h.

std::map<IntraPartitionDataflow*, std::list<partSplit*> > PartitionedAnalysis::parts2splits
private

Definition at line 91 of file partitionedAnalysis.h.

std::map<IntraPartitionDataflow*, IntraPartitionDataflowCheckpoint*> PartitionedAnalysis::parts2chkpts
private

Definition at line 95 of file partitionedAnalysis.h.

IntraPartitionDataflow* PartitionedAnalysis::intraFactory
private

Definition at line 98 of file partitionedAnalysis.h.


The documentation for this class was generated from the following file: