code: protected void setLayout() {
  
  		int sizeEnsemble = this.ensembleSizeOption.getValue();
  
  		distributorP = new BaggingDistributorProcessor();
  		distributorP.setSizeEnsemble(sizeEnsemble);
                  this.builder.addProcessor(distributorP, 1);
  		        
  		//instantiate classifier
  		classifier = this.baseLearnerOption.getValue();
  		if (classifier instanceof AdaptiveLearner) {
  				// logger.info("Building an AdaptiveLearner {}", classifier.getClass().getName());
  				AdaptiveLearner ada = (AdaptiveLearner) classifier;
  				ada.setChangeDetector((ChangeDetector) this.driftDetectionMethodOption.getValue());
  		}
  		classifier.init(builder, this.dataset, sizeEnsemble);
          
  		PredictionCombinerProcessor predictionCombinerP= new PredictionCombinerProcessor();
  		predictionCombinerP.setSizeEnsemble(sizeEnsemble);
  		this.builder.addProcessor(predictionCombinerP, 1);
  		
  		//Streams
  		resultStream = this.builder.createStream(predictionCombinerP);
  		predictionCombinerP.setOutputStream(resultStream);
  
  		for (Stream subResultStream:classifier.getResultStreams()) {
  			this.builder.connectInputKeyStream(subResultStream, predictionCombinerP);
  		}
  		
  		/* The training stream. */
  		Stream testingStream = this.builder.createStream(distributorP);
                  this.builder.connectInputKeyStream(testingStream, classifier.getInputProcessor());
  	
  		/* The prediction stream. */
  		Stream predictionStream = this.builder.createStream(distributorP);
                  this.builder.connectInputKeyStream(predictionStream, classifier.getInputProcessor());
  		
  		distributorP.setOutputStream(testingStream);
  		distributorP.setPredictionStream(predictionStream);
  	}
docs: Sets the layout.