Package com.projity.algorithm.buffer

Examples of com.projity.algorithm.buffer.GroupedCalculatedValues


  public CalculatedValues computeTrace(Iterator taskIterator, List resources, Object trace,  boolean histogram, boolean cumulative) {
    if (taskIterator == null || !taskIterator.hasNext()) // if no task selected, dont change chart
      return null;
    CalculatedValues calculatedValues;
    if (histogram)
      calculatedValues = new GroupedCalculatedValues();
    else
      calculatedValues = new NonGroupedCalculatedValues(cumulative,coord.getOrigin());
   

    TimeIterator timeIterator = null;
View Full Code Here


    return calculatedValues;
  }


  public CalculatedValues computeAvailability(List resources) {
    CalculatedValues calculatedValues = new GroupedCalculatedValues();
    if (resources != null) {
      Iterator r = resources.iterator();
      while (r.hasNext()) {
        Object obj = r.next();
        if (!(obj instanceof Resource))
View Full Code Here

//    }
//    return null;
//  }
  // Other Projects
  public CalculatedValues computeOtherProjects(List tasks, List resources) {
    CalculatedValues calculatedValues = new GroupedCalculatedValues();
    if ((resources!=null&&resources.size()>0)||(tasks!=null&&tasks.size()>0)){ //resources can be put in tasks list, is it a bug?
      Iterator j=((resources==null||resources.size()==0)?tasks:resources).iterator();
      GroupedCalculatedValues c=(GroupedCalculatedValues)calculatedValues;
     
      TimeIterator timeIterator = coord.getProjectTimeIterator();
      //TODO uncomment when scheduling is corrected
      for (int k=0;timeIterator.hasNext();k++){
        TimeInterval interval=timeIterator.next();
        c.set(k,interval.getStart1(),interval.getEnd1(),0.0,null);
      }
        //return calculatedValues;
      while (j.hasNext()){
        ResourceImpl resource;
        Object obj=j.next();
        if (obj instanceof Assignment)
          resource=(ResourceImpl)((Assignment)obj).getResource();
        else if (obj instanceof ResourceImpl)
          resource=(ResourceImpl)obj;
        else
          continue;
        GroupedCalculatedValues global=resource.getGlobalResource().getGlobalWorkVector();
        if (global != null) {
          global=global.dayByDayConvert();
          c.mergeIn(global);
        }
      }
      return c;
    }
View Full Code Here

  public void computeHistogram(Project project, List tasks, List resources,Object[] traces) {
    boolean stackCurrentOnTop = traces == (Environment.getStandAlone()?HasTimeDistributedData.histogramTypes:HasTimeDistributedData.serverHistogramTypes);

    // Availability
    GroupedCalculatedValues availabilityCalculatedValues = (GroupedCalculatedValues) computeAvailability(resources);

    // Other Projects
    GroupedCalculatedValues otherProjectsCalculatedValues = null;
    if (!Environment.getStandAlone()) otherProjectsCalculatedValues=(GroupedCalculatedValues) computeOtherProjects(tasks,resources);
   
    //This Project
    GroupedCalculatedValues thisProjectCalculatedValues = (GroupedCalculatedValues) computeTrace(project.getTaskOutlineIterator(), resources, WORK,  true, false);

    //Selected
    GroupedCalculatedValues selectedCalculatedValues = (GroupedCalculatedValues) computeTrace(tasks==null?null:tasks.iterator(),resources, WORK,  true, false);


    // stack so that order is (from botom to top) other projects, this project, selected
    for (int i = 0; i < availabilityCalculatedValues.size(); i++) {
      double thisProject = thisProjectCalculatedValues != null ? thisProjectCalculatedValues.getUnscaledValue(i) : 0D;
      double allProjects = thisProject;
      if (otherProjectsCalculatedValues!=null) allProjects+= otherProjectsCalculatedValues.getUnscaledValue(i); // stack
      double selected = selectedCalculatedValues != null ? selectedCalculatedValues.getUnscaledValue(i) : 0D;
      if (stackCurrentOnTop) {
        if (selectedCalculatedValues != null)
          selectedCalculatedValues.setValue(i, allProjects);
        if (thisProjectCalculatedValues != null)
          thisProjectCalculatedValues.setValue(i, allProjects - selected);
      } else {
        if (otherProjectsCalculatedValues!=null) otherProjectsCalculatedValues.setValue(i,allProjects);
      }
View Full Code Here

TOP

Related Classes of com.projity.algorithm.buffer.GroupedCalculatedValues

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.