/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package org.jlab.groot.tree;

import java.util.ArrayList;
import java.util.List;
import javax.swing.tree.DefaultMutableTreeNode;
import org.jlab.groot.data.IDataSet;

/**
 *
 * @author gavalian
 */
public class TreeAnalyzer {
    List   datasets = new ArrayList();
    DynamicTree tree = new DynamicTree("Dataset Descriptors");
    public DynamicTree getTree() {
		return tree;
	}

	public void setTree(DynamicTree tree) {
		this.tree = tree;
	}

	public TreeAnalyzer(){
        
    }
    
    public void addDescriptor(DatasetDescriptor desc){
        this.datasets.add(desc);
        tree.addObject(desc.getDescName());
        System.out.println("Adding Descriptor"+desc.getDescName());
        tree.repaint();
        tree.revalidate();
    }
    
    public void process(ITree tree){
        process(tree,-1);
    }
    
    public void process(ITree tree, int limit){
        tree.reset();
        for(DatasetDescriptor desc : datasets){
            desc.getDataSet().reset();
        }
        int nentries = tree.getEntries();
        
        for(int i = 0; i < nentries; i++){
            tree.readEntry(i);
            if(i>limit&&limit>0) break;
            for(DatasetDescriptor desc : datasets){
                desc.fill(tree);
                //if(desc.getDataSet() instanceof )
            }
        }
    }
    
    public List  getDescriptors(){
        return this.datasets;
    }

	public void updateDescriptor(DatasetDescriptor descriptor) {
		List desc = this.getDescriptors();
		for(int i=0; i 

Ads help maintain this website.