first =false;
    public Object visitPipeline(SIRPipeline self,                                JFieldDeclaration[] fields,                                JMethodDeclaration[] methods,                                JMethodDeclaration init) {                 					System.out.println("***** Entering visitPipeline "+ self.getName());                                			GEPipeline pipeline = new GEPipeline(self.getName());                 			// Walk through each of the elements in the pipeline.		Iterator iter = self.getChildren().iterator();			while (iter.hasNext())		{			SIROperator oper = (SIROperator)iter.next();									GEStreamNode currNode = (GEStreamNode) oper.accept(this);			pipeline.addChild(currNode);			currNode.setEncapsulatingNode(pipeline);					}		  		graph.addHierarchy(pipeline, pipeline.getSuccesors());						/* ***********************************************************		 * DEBUGGING CODE BEGIN		*/		System.out.println("The pipeline "+ pipeline.getName() + " has the following children");		ArrayList pipeChildren = pipeline.getSuccesors();		for (int i = 0; i < pipeChildren.size(); i++)		{			System.out.println("Child  "+ i + " = " + ((GEStreamNode) pipeChildren.get(i)).getName());		}		/* 		 * DEBUGGING CODE END		*********************************************************** */						return pipeline;    }