Changeset 237 in tmcsimulator for trunk/src


Ignore:
Timestamp:
12/13/2017 03:02:27 AM (8 years ago)
Author:
jtorres
Message:

Added new package atmsdriver.batchbuilder. Includes BatchBuilderGUI, TimeFrame?, TimeFrames?, and TrafficLaneEvent? classes. Added some auxillary methods to Highways.java, Highway.java, and Station.java.

Location:
trunk/src
Files:
6 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/atmsdriver/ConsoleTrafficDriver.java

    r234 r237  
    7979            ConsoleDriverProperties.load(new FileInputStream(System.getProperty("ATMSDRIVER_PROPERTIES"))); 
    8080        } catch (Exception e) { 
    81             Logger.getLogger("CosoleDriver").logp(Level.SEVERE, "ConsoleDriver", 
     81            Logger.getLogger("ConsoleDriver").logp(Level.SEVERE, "ConsoleDriver", 
    8282                    "Constructor", "Exception in reading properties file.", e); 
    8383        } 
  • trunk/src/atmsdriver/model/Highway.java

    r212 r237  
    11package atmsdriver.model; 
    22 
     3import atmsdriver.model.Station.DIRECTION; 
    34import java.util.ArrayList; 
    45import java.util.List; 
     
    1718    /** The ordered list of stations (lane detector stations) on this highway */ 
    1819    public final List<Station> stations; 
    19  
     20         
    2021    /** Construct a highway  
    2122     *  
     
    2829        this.stations = stations; 
    2930    } 
     31     
     32    /** 
     33     *  
     34     */ 
     35    public List<DIRECTION> getDirections() 
     36    { 
     37                    // Get available directions for route 
     38            ArrayList<DIRECTION> availDirs = new ArrayList<>(); 
     39            for(Station stn : stations) 
     40            { 
     41                if(!availDirs.contains(stn.direction)) 
     42                { 
     43                    availDirs.add(stn.direction); 
     44                } 
     45            } 
     46            return availDirs; 
     47    } 
     48     
     49    @Override 
     50    public String toString() 
     51    { 
     52        return Integer.toString(this.routeNumber); 
     53    } 
    3054} 
  • trunk/src/atmsdriver/model/Highways.java

    r234 r237  
    11package atmsdriver.model; 
    22 
     3import atmsdriver.batchbuilder.TrafficLaneEvent; 
     4import atmsdriver.model.LoopDetector.DOTCOLOR; 
    35import atmsdriver.model.Station.DIRECTION; 
    46import java.io.File; 
     
    520522        return result.toString(); 
    521523    } 
     524     
     525    /** 
     526     * Generates the route number list, used for user input validation. 
     527     * @return list of route numbers. 
     528     */ 
     529    public List<Integer> getAllRouteNums() 
     530    { 
     531        ArrayList<Integer> routeNums = new ArrayList<>(); 
     532        // add the route number for each highway to the list 
     533        for(Highway hwy : highways) 
     534        { 
     535            routeNums.add(hwy.routeNumber); 
     536        } 
     537        return routeNums; 
     538    } 
     539     
    522540    /** 
    523541     * XML tags used in writeToXML() 
     
    535553        } 
    536554    } 
     555     
     556    public void reset() 
     557    { 
     558        for(FEPLine line : lines) 
     559        { 
     560            for(Station stn : line.stations) 
     561            { 
     562                for(LoopDetector ld : stn.loops) 
     563                { 
     564                    ld.occ = 0; 
     565                    ld.vol = 0; 
     566                } 
     567            } 
     568        } 
     569    } 
     570     
     571    public void applyTrafficLaneEvent(TrafficLaneEvent event) 
     572    { 
     573        Integer routeNum = event.routeNum; 
     574        Highway hwy = getHighwayByRouteNumber(routeNum); 
     575        for(Station stn: hwy.stations) 
     576        { 
     577            if(stn.equals(event.station)) 
     578            { 
     579                for(LoopDetector ld : stn.loops) 
     580                { 
     581                    if(ld.equals(event.loopDetector)) 
     582                    { 
     583                        ld.occ = event.color.occupancy(); 
     584                        ld.vol = event.color.volume(); 
     585                        break; 
     586                    } 
     587                } 
     588                break; 
     589            } 
     590        } 
     591    } 
    537592} 
  • trunk/src/atmsdriver/model/Station.java

    r234 r237  
    22 
    33import atmsdriver.model.LoopDetector.DOTCOLOR; 
     4import java.util.ArrayList; 
    45import java.util.List; 
    56import org.w3c.dom.Document; 
     
    366367            return this.toString().substring(0, 1); 
    367368        } 
    368  
     369         
    369370        public DIRECTION getOpposite() 
    370371        { 
     
    392393        public static DIRECTION toDirection(String letter) 
    393394        { 
     395            if(letter.indexOf(letter.charAt(0)) == -1) 
     396            { 
     397                return null; 
     398            } 
    394399            return values()[allLetters.indexOf(letter.charAt(0))]; 
    395400        } 
    396  
     401    } 
     402     
     403    @Override 
     404    public String toString() 
     405    { 
     406        return Integer.toString(this.ldsID); 
    397407    } 
    398408} 
  • trunk/src/tmcsim/application.properties

    r234 r237  
    1 #Thu, 23 Nov 2017 17:06:06 -0800 
     1#Wed, 13 Dec 2017 04:11:31 -0800 
    22 
    3 Application.revision=232 
     3Application.revision=234 
    44 
    55Application.buildnumber=88 
Note: See TracChangeset for help on using the changeset viewer.