|
From: dongyu s. <sun...@ya...> - 2008-10-17 15:53:30
|
Hi,
I got some question on the use of DSFPathFinder.
1./ To construct a DSFPathFinder object, the constructor requires a "filter" obj, which only has one method of "accept". How this accept is used? does it give indication of when the search should stop or which node should be included in the path? If it is to test whether a node should be included what the criteria should given?
Currently, I used this class to search a interprocedure CFG, and I used the getNumber() of the BasicBlockInContext<ISSABasicBlock> and return true if this number equals. It is as following
Filter<BasicBlockInContext<ISSABasicBlock>> f = new Filter<BasicBlockInContext<ISSABasicBlock>>() {
public boolean accepts(BasicBlockInContext<ISSABasicBlock> o) {
return endNode.getNumber()==o.getNumber();
}
};
Is this the right way to use? Becaues after I use this method, It seems does not work, I even can't get the start and end node in the list.
2./ from the description of DSFPathFinder, it returns the first path found connnecting two node, is there any way to find all the path between two nodes?
thanks
dongyu
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com |