view visualizer/Util/src/com/sun/hotspot/igv/util/CompilationViewModel.java @ 9790:6b515c453646

CompilationTask: print exception of compilation also when we don't exit the VM for example, this is useful for CTW, in order to see on which methods the compiler bails out
author Bernhard Urban <bernhard.urban@jku.at>
date Wed, 22 May 2013 16:28:12 +0200
parents 015fb895586b
children
line wrap: on
line source

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.sun.hotspot.igv.util;

import com.sun.hotspot.igv.data.*;
import java.awt.Color;
import java.util.List;

public class CompilationViewModel implements ChangedEventProvider<CompilationViewModel> {
    
    private final ChangedEvent<CompilationViewModel> changedEvent = new ChangedEvent<>(this);
    private final RangeSliderModel model;
    private final Group group;

    @Override
    public ChangedEvent<CompilationViewModel> getChangedEvent() {
        return changedEvent;
    }
    
    public CompilationViewModel(RangeSliderModel model, Group group) {
        this.model = model;
        this.group = group;
        model.getChangedEvent().addListener(rangeSliderChangedListener);
    }
    
    private final ChangedListener<RangeSliderModel> rangeSliderChangedListener = new ChangedListener<RangeSliderModel>() {
        @Override
        public void changed(RangeSliderModel source) {
            changedEvent.fire();
        }
    };
    
    public InputGraph getFirstSnapshot() {
        return group.getGraphs().get(model.getFirstPosition());
    }
    
    public InputGraph getSecondSnapshot() {
        return group.getGraphs().get(model.getSecondPosition());
    }

    public void setColors(List<Color> colors) {
        model.setColors(colors);
    }
}