bool Location_File::Set_Field_Numbers (void) { //---- required fields ---- location = Required_Field ("LOCATION", "ID"); link = Required_Field ("LINK"); offset = Required_Field ("OFFSET"); if (location < 0 || link < 0 || offset < 0) return (false); //---- optional fields ---- setback = Optional_Field ("SETBACK"); zone = Optional_Field ("ZONE", "TAZ"); dir = LinkDir_Type_Field (); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- Set_Units (offset, METERS); Set_Units (setback, METERS); return (true); }
bool Access_File::Set_Field_Numbers (void) { //---- required fields ---- from_id = Required_Field ("FROMID", "FROM_ID"); to_id = Required_Field ("TOID", "TO_ID"); from_type = Required_Field ("FROMTYPE", "FROM_TYPE"); to_type = Required_Field ("TOTYPE", "TO_TYPE"); if (from_id < 0 || to_id < 0 || from_type < 0 || to_type < 0) return (false); //---- optional fields ---- link = Optional_Field ("LINK", "ACCESS", "ID", "RECORD"); dir = Optional_Field ("DIR", "DIRECTION"); time = Optional_Field ("DELAY", "TIME"); cost = Optional_Field ("COST"); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- Set_Units (from_type, ID_CODE); Set_Units (to_type, ID_CODE); Set_Units (time, SECONDS); Set_Units (cost, CENTS); return (true); }
bool Node_File::Set_Field_Numbers (void) { //---- required fields ---- node = Required_Field ("NODE", "ID", "N"); x = Required_Field (X_FIELD_NAMES); y = Required_Field (Y_FIELD_NAMES); if (node < 0 || x < 0 || y < 0) return (false); //---- optional fields ---- z = Optional_Field (Z_FIELD_NAMES); subarea = Optional_Field ("SUBAREA", "AREA"); part = Optional_Field ("PARTITION", "PART"); Subarea_Flag ((subarea >= 0 || part >= 0)); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- Set_Units (x, METERS); Set_Units (y, METERS); Set_Units (z, METERS); return (true); }
bool Veh_Type_File::Set_Field_Numbers (void) { //---- required fields ---- type = Required_Field ("TYPE", "VEHTYPE", "VEH_TYPE"); length = Required_Field ("LENGTH", "SIZE"); max_speed = Required_Field ("MAX_SPEED", "MAXVEL", "MAXSPEED", "MAXSPD"); max_accel = Required_Field ("MAX_ACCEL", "MAXACCEL"); capacity = Required_Field ("CAPACITY", "PASSENGERS"); if (!type || !length || !max_speed || !max_accel || !capacity) return (false); //---- optional fields ---- sub_type = Optional_Field ("SUBTYPE", "SUB_TYPE", "VSUBTYPE"); max_decel = Optional_Field ("MAX_DECEL", "MAXDECEL"); use = Optional_Field ("USE", "ACCESS"); load = Optional_Field ("LOADING", "LOAD", "BOARD", "BOARDING", "ON_RATE"); unload = Optional_Field ("UNLOADING", "UNLOAD", "ALIGHT", "ALIGHTING", "OFF_RATE"); method = Optional_Field ("METHOD", "LOAD_TYPE", "LOAD_METHOD"); min_dwell = Optional_Field ("MIN_DWELL", "MINDWELL", "DWELL"); max_dwell = Optional_Field ("MAX_DWELL", "MAXDWELL", "DWELL"); return (true); }
bool Skim_File::Set_Field_Numbers (void) { Matrix_File::Set_Field_Numbers (); //---- optional fields ---- count = Optional_Field ("COUNT"); time = Optional_Field (TIME_SKIM_FIELD_NAMES); walk = Optional_Field (WALK_SKIM_FIELD_NAMES); drive = Optional_Field (DRIVE_SKIM_FIELD_NAMES); transit = Optional_Field (TRANSIT_SKIM_FIELD_NAMES); wait = Optional_Field (WAIT_SKIM_FIELD_NAMES); other = Optional_Field (OTHER_SKIM_FIELD_NAMES); cost = Optional_Field (COST_SKIM_FIELD_NAMES); length = Optional_Field (LENGTH_SKIM_FIELD_NAMES); impedance = Optional_Field (IMP_SKIM_FIELD_NAMES); if (File_Access () != CREATE) Total_Time_Flag ((time >= 0)); //---- set default units ---- if (Version () <= 40) { Set_Units (time, SECONDS); Set_Units (walk, SECONDS); Set_Units (drive, SECONDS); Set_Units (transit, SECONDS); Set_Units (wait, SECONDS); Set_Units (other, SECONDS); Set_Units (cost, CENTS); Set_Units (length, METERS); Set_Units (impedance, IMPEDANCE); } else { Set_Units (time, SECONDS); Set_Units (walk, SECONDS); Set_Units (drive, SECONDS); Set_Units (transit, SECONDS); Set_Units (wait, SECONDS); Set_Units (other, SECONDS); Set_Units (cost, CENTS); Set_Units (length, FEET); Set_Units (impedance, IMPEDANCE); } return (true); }
bool Fare_File::Set_Field_Numbers (void) { //---- required fields ---- from_zone = Required_Field ("FROM_ZONE", "FROMZONE", "FROM", "BOARD"); to_zone = Required_Field ("TO_ZONE", "TOZONE", "TO", "ALIGHT"); to_mode = Required_Field ("MODE", "TO_MODE", "TOMODE"); fare = Required_Field ("FARE", "COST"); if (from_zone < 0 || to_zone < 0 || to_mode < 0 || fare < 0) return (false); //---- optional fields ---- from_mode = Optional_Field ("FROM_MODE", "FROMMODE"); period = Optional_Field ("PERIOD", "TIME", "TIME_PERIOD", "TIME_RANGE"); type = Optional_Field ("CLASS", "TYPE"); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- if (Code_Flag ()) { Set_Units (from_zone, FARE_ZONE); Set_Units (to_zone, FARE_ZONE); Set_Units (from_mode, TRANSIT_CODE); Set_Units (to_mode, TRANSIT_CODE); Set_Units (period, TIME_PERIOD); Set_Units (type, CLASS_CODE); } else { Set_Units (from_zone, FARE_ZONE_RANGE); Set_Units (to_zone, FARE_ZONE_RANGE); Set_Units (from_mode, TRANSIT_CODE_RANGE); Set_Units (to_mode, TRANSIT_CODE_RANGE); Set_Units (period, TIME_PERIOD_RANGE); Set_Units (type, CLASS_CODE_RANGE); } Set_Units (fare, CENTS); return (true); }
bool Location_File::Set_Field_Numbers (void) { //---- required fields ---- location = Required_Field ("LOCATION", "ID"); link = Required_Field ("LINK"); node = Required_Field ("DIR", "NODE"); offset = Required_Field ("OFFSET"); x = Required_Field ("X_COORD", "EASTING", "X"); y = Required_Field ("Y_COORD", "NORTHING", "Y"); if (!location || !link || !node || !offset || !x || !y) return (false); //---- optional fields ---- z = Optional_Field ("Z_COORD", "ELEVATION", "Z"); zone = Optional_Field ("ZONE", "TAZ"); Notes_Field (Optional_Field ("NOTES")); return (true); }
bool System_Event_File::Set_Field_Numbers (void) { //---- required fields ---- time = Required_Field ("TIME"); type = Required_Field ("EVENT", "TYPE"); node = Required_Field ("NODE"); if (!time || !type || !node) return (false); //---- optional fields ---- plan = Optional_Field ("PLAN", "TIMING"); phase = Optional_Field ("PHASE"); ring = Optional_Field ("RING"); group = Optional_Field ("GROUP"); status = Optional_Field ("STATUS", "MESSAGE"); return (true); }
bool Fare_File::Set_Field_Numbers (void) { //---- required fields ---- from_zone = Required_Field ("FROM_ZONE", "FROMZONE", "FROM", "BOARD"); to_zone = Required_Field ("TO_ZONE", "TOZONE", "TO", "ALIGHT"); to_mode = Required_Field ("MODE", "TO_MODE", "TOMODE"); fare = Required_Field ("FARE", "COST"); if (!from_zone || !to_zone || !to_mode || !fare) return (false); //---- optional fields ---- from_mode = Optional_Field ("FROM_MODE", "FROMMODE"); period = Optional_Field ("PERIOD", "TIME", "TIME_PERIOD", "TIME_RANGE"); type = Optional_Field ("CLASS", "TYPE"); Notes_Field (Optional_Field ("NOTES")); //---- old Version 4 fields ---- transfer = Optional_Field ("TRANSFER", "XFER_FARE"); max_fare = Optional_Field ("MAX_FARE", "MAXFARE"); return (true); }
bool Parking_File::Set_Field_Numbers (void) { //---- required fields ---- id = Required_Field ("PARKING", "ID"); link = Required_Field ("LINK"); node = Required_Field ("DIR", "NODE"); offset = Required_Field ("OFFSET"); type = Required_Field ("TYPE", "STYLE"); use = Required_Field ("USE", "VEHICLE"); if (!id || !link || !node || !offset || !type || !use) return (false); //---- optional fields ---- space = Optional_Field ("CAPACITY", "SPACE"); start = Optional_Field ("STARTTIME", "START", "START_TIME"); end = Optional_Field ("ENDTIME", "END", "END_TIME"); hourly = Optional_Field ("HOURLY", "RATE"); daily = Optional_Field ("DAILY", "MAXIMUM"); Notes_Field (Optional_Field ("NOTES")); return (true); }
bool Route_Nodes_File::Set_Field_Numbers (void) { //---- required fields ---- route = Required_Field ("ROUTE", "LINE"); node = Required_Field ("NODE", "STOP"); if (!route || !node) return (false); //---- optional fields ---- dwell = Optional_Field ("DWELL", "DWELL_TIME", "STOP_TIME", "STOPTIME"); dwell_flag = (dwell != 0); time = Optional_Field ("TIME", "TTIME", "RUNTIME", "RUN_TIME"); time_flag = (time != 0); speed = Optional_Field ("SPEED", "SPD", "RUNSPD", "RUN_SPD", "RUN_SPEED"); speed_flag = (speed != 0); return (true); }
bool Event_File::Set_Field_Numbers (void) { //---- required fields ---- hhold = Required_Field ("HOUSEHOLD", "HHOLD", "HH_ID", "HHID", "HH"); trip = Required_Field ("TRIP"); type = Required_Field ("EVENT", "TYPE"); schedule = Required_Field ("SCHEDULE"); actual = Required_Field ("ACTUAL"); if (!hhold || !trip || !schedule || !actual) return (false); //---- optional fields ---- person = Optional_Field ("PERSON", "MEMBER", "PER_ID", "PERID", "PER"); mode = Optional_Field ("MODE"); leg = Optional_Field ("LEG"); link = Optional_Field ("LINK"); offset = Optional_Field ("OFFSET"); return (true); }
bool Coordinator_File::Set_Field_Numbers (void) { //---- required fields ---- id = Required_Field ("ID", "NODE"); if (!id) return (false); //---- optional fields ---- Notes_Field (Optional_Field ("NOTES")); return (true); }
bool Connect_File::Set_Field_Numbers (void) { //---- required fields ---- link = Required_Field (IN_LINK_FIELD_NAMES); to_link = Required_Field (OUT_LINK_FIELD_NAMES); if (link < 0 || to_link < 0) return (false); //---- optional fields ---- dir = LinkDir_Type_Field (); lanes = Optional_Field ("LANES", "IN_LOW", "INLANE", "LANE_IN", "LANEIN"); to_lanes = Optional_Field ("TO_LANES", "OUT_LOW", "OUTLANE", "LANE_OUT", "LANEOUT"); type = Optional_Field ("TYPE", "MOVEMENT", "TURN", "TURNTYPE", "TURN_TYPE"); penalty = Optional_Field ("PENALTY", "DELAY"); speed = Optional_Field ("SPEED", "MAX_SPD"); capacity = Optional_Field ("CAPACITY", "SAT_FLOW"); Notes_Field (Optional_Field (NOTES_FIELD_NAMES)); //---- set default units ---- if (Version () <= 40) { in_high = Optional_Field ("IN_HIGH", "HIGH_IN", "LANES", "LANE_IN", "LANEIN"); out_high = Optional_Field ("OUT_HIGH", "HIGH_OUT", "TO_LANES", "LANE_OUT", "LANEOUT"); Set_Units (type, CONNECT_CODE); Set_Units (penalty, IMPEDANCE); Set_Units (speed, MPS); Set_Units (capacity, VPH); } else { Set_Units (lanes, LANE_RANGE_CODE); Set_Units (to_lanes, LANE_RANGE_CODE); in_high = out_high = -1; Set_Units (type, CONNECT_CODE); Set_Units (penalty, IMPEDANCE); Set_Units (speed, MPH); Set_Units (capacity, VPH); } return (true); }
bool Sign_File::Set_Field_Numbers (void) { //---- required fields ---- link = Required_Field ("LINK", "INLINK", "LINK_IN"); sign = Required_Field ("SIGN"); if (link < 0 || sign < 0) return (false); dir = LinkDir_Type_Field (); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- Set_Units (sign, CONTROL_CODE); return (true); }
int Db_Base::Required_Field (const char *name1, const char *name2, const char *name3, const char *name4, const char *name5) { int num = Optional_Field (name1, name2, name3, name4, name5); if (num < 0 && exe->Send_Messages ()) { if (name5) { exe->Error (String ("%s does not include field:\n\t\t\"%s\", \"%s\", \"%s\", \"%s\" or \"%s\"") % File_Type () % name1 % name2 % name3 % name4 % name5); } else if (name4) { exe->Error (String ("%s does not include field:\n\t\t\"%s\", \"%s\", \"%s\" or \"%s\"") % File_Type () % name1 % name2 % name3 % name4); } else if (name3) { exe->Error (String ("%s does not include field:\n\t\t\"%s\", \"%s\" or \"%s\"") % File_Type () % name1 % name2 % name3); } else if (name2) { exe->Error (String ("%s does not include \"%s\" or \"%s\" field") % File_Type () % name1 % name2); } else if (name1) { exe->Error (String ("%s does not include \"%s\" field") % File_Type () % name1); } else { exe->Error (String ("%s Required Field Name is NULL") % File_Type ()); } } return (num); }
bool Timing_File::Set_Field_Numbers (void) { //---- required fields ---- timing = Required_Field ("TIMING", "PLAN"); phase = Required_Field ("PHASE"); next = Required_Field ("NEXT_PHASE", "NEXTPHASES"); minimum = Required_Field ("MIN_GREEN", "GREENMIN"); if (!timing || !phase || !next || !minimum) return (false); //---- optional fields ---- maximum = Optional_Field ("MAX_GREEN", "GREENMAX"); extend = Optional_Field ("EXT_GREEN", "GREENEXT"); yellow = Optional_Field ("YELLOW"); red = Optional_Field ("RED_CLEAR", "REDCLEAR"); ring = Optional_Field ("RING", "GROUPFIRST"); group = Optional_Field ("GROUP", "BARRIER"); Notes_Field (Optional_Field ("NOTES")); return (true); }
bool Ridership_File::Set_Field_Numbers (void) { //---- required fields ---- route = Required_Field ("ROUTE", "LINE", "ROUTE_ID", "LINE_ID"); run = Required_Field ("RUN", "TRIP"); stop = Required_Field ("STOP", "STOP_ID"); board = Required_Field ("BOARD", "ON", "GET_ON"); alight = Required_Field ("ALIGHT", "OFF", "GET_OFF"); if (!route || !run || !stop || !board || !alight) return (false); //---- optional fields ---- mode = Optional_Field ("MODE", "TYPE"); schedule = Optional_Field ("SCHEDULE", "DEPART"); time = Optional_Field ("TIME", "ARRIVE", "ACTUAL"); load = Optional_Field ("LOAD", "RIDERS", "PASSENGERS", "IN"); factor = Optional_Field ("FACTOR", "LOAD_FACTOR", "VC"); Notes_Field (Optional_Field ("NOTES")); return (true); }
bool Snapshot_File::Set_Field_Numbers (void) { //---- compress check ---- blob = Optional_Field ("COMPRESS"); if (blob >= 0) { compress = true; rec = (Compressed_Snapshot *) Record_String (); Set_Units (blob, METERS); units = Field (blob)->Units (); Status_Flag (true); return (true); } compress = false; //---- required fields ---- if (Version () <= 40) { hhold = Required_Field ("DRIVER", "VEHICLE"); } else { hhold = Required_Field (HHOLD_FIELD_NAMES); } vehicle = Required_Field (VEHICLE_FIELD_NAMES); link = Required_Field ("LINK"); time = Required_Field ("TIME"); link = Required_Field ("LINK"); lane = Required_Field ("LANE"); offset = Required_Field ("OFFSET", "DISTANCE"); speed = Required_Field ("SPEED", "VELOCITY"); if (hhold < 0 || vehicle < 0 || time < 0 || link < 0 || lane < 0 || offset < 0 || speed < 0) return (false); //---- optional fields ---- dir = LinkDir_Type_Field (); cell = Optional_Field ("CELL", "PART"); pass = Optional_Field ("PASSENGERS", "OCCUPANCY"); type = Optional_Field ("TYPE", "VEHTYPE", "VEH_TYPE"); wait = Optional_Field ("WAIT", "STOPTIME", "DELAY"); diff = Optional_Field ("TIME_DIFF", "VARIANCE", "DIFFERENCE"); user = Optional_Field ("USER", "DATA"); x = Optional_Field (X_FIELD_NAMES); y = Optional_Field (Y_FIELD_NAMES); z = Optional_Field (Z_FIELD_NAMES); bearing = Optional_Field ("BEARING", "DIRECTION", "DEGREES"); Cell_Flag (cell >= 0); Location_Flag (x >= 0 && y >= 0 && bearing >= 0); Status_Flag (wait >= 0 || diff >= 0 || user >= 0); //---- set default units ---- Set_Units (time, DAY_TIME); Set_Units (lane, LANE_ID_CODE); Set_Units (offset, METERS); Set_Units (speed, MPS); Set_Units (type, VEH_TYPE); Set_Units (wait, SECONDS); Set_Units (diff, SECONDS); Set_Units (x, METERS); Set_Units (y, METERS); Set_Units (z, METERS); Set_Units (bearing, DEGREES); return (true); }
bool Travel_Time_File::Set_Field_Numbers (void) { //---- required fields ---- hhold = Required_Field (HHOLD_FIELD_NAMES); trip = Required_Field (TRIP_FIELD_NAMES); if (hhold < 0 || trip < 0) return (false); //---- optional fields ---- person = Optional_Field (PERSON_FIELD_NAMES); tour = Optional_Field (TOUR_FIELD_NAMES); mode = Optional_Field (MODE_FIELD_NAMES); purpose = Optional_Field (PURPOSE_FIELD_NAMES); constraint = Optional_Field (CONSTRAINT_FIELD_NAMES); //---- optional fields ---- start_link = Optional_Field ("START_LINK", "STARTLINK", "ORIGIN"); end_link = Optional_Field ("END_LINK", "ENDLINK", "DESTINATION"); trip_start = Optional_Field ("TRIP_START", "TRIPSTART"); base_start = Optional_Field ("BASE_START", "BASESTART", "SCHEDULE1"); started = Optional_Field ("STARTED", "START", "ACTUAL1"); start_diff = Optional_Field ("START_DIFF", "STARTDIFF", "DIFF1"); trip_end = Optional_Field ("TRIP_END", "TRIPEND"); base_end = Optional_Field ("BASE_END", "BASEEND", "SCHEDULE2"); ended = Optional_Field ("ENDED", "END", "ACTUAL2"); end_diff = Optional_Field ("END_DIFF", "ENDDIFF", "DIFF2"); mid_trip = Optional_Field ("MID_TRIP", "MIDTRIP", "TIME", "TOD"); ttime = Optional_Field ("TTIME", "DURATION", "TRAVELTIME"); Set_Units (mode, MODE_CODE); Set_Units (constraint, CONSTRAINT_CODE); Set_Units (trip_start, SECONDS); Set_Units (base_start, SECONDS); Set_Units (started, SECONDS); Set_Units (start_diff, SECONDS); Set_Units (trip_end, SECONDS); Set_Units (base_end, SECONDS); Set_Units (ended, SECONDS); Set_Units (end_diff, SECONDS); Set_Units (mid_trip, SECONDS); Set_Units (ttime, SECONDS); return (true); }
bool Veh_Type_File::Set_Field_Numbers (void) { //---- required fields ---- type = Required_Field ("TYPE", "VEHTYPE", "VEH_TYPE"); length = Required_Field ("LENGTH", "SIZE"); max_speed = Required_Field ("MAX_SPEED", "MAXVEL", "MAXSPEED", "MAXSPD"); max_accel = Required_Field ("MAX_ACCEL", "MAXACCEL"); capacity = Required_Field ("CAPACITY", "PASSENGERS"); if (type < 0 || length < 0 || max_speed < 0 || max_accel < 0 || capacity < 0) return (false); //---- optional fields ---- occupancy = Optional_Field ("OCCUPANCY", "PASSENGERS", "AVG_OCC"); max_decel = Optional_Field ("MAX_DECEL", "MAXDECEL"); op_cost = Optional_Field ("OP_COST", "OPCOST", "COST"); use = Optional_Field ("USE", "ACCESS"); max_load = Optional_Field ("MAX_LOAD", "MAXLOAD", "MAX_CAP"); load = Optional_Field ("LOADING", "LOAD", "BOARD", "BOARDING", "ON_RATE"); unload = Optional_Field ("UNLOADING", "UNLOAD", "ALIGHT", "ALIGHTING", "OFF_RATE"); method = Optional_Field ("METHOD", "LOAD_TYPE", "LOAD_METHOD"); min_dwell = Optional_Field ("MIN_DWELL", "MINDWELL", "DWELL"); max_dwell = Optional_Field ("MAX_DWELL", "MAXDWELL", "DWELL"); grade = Optional_Field ("GRADE", "GRADE_FUNC", "GRADE_FUNCTION", "GRADE_NUM"); fuel = Optional_Field ("FUEL", "FUEL_FUNC", "FUEL_FUNCTION", "FUEL_NUM"); fuel_cap = Optional_Field ("FUEL_CAP", "MAX_FUEL", "TANK_SIZE", "FUELCAP"); //---- Version 4.0 compatibility ---- subtype = Optional_Field ("SUBTYPE", "SUB_TYPE", "VSUBTYPE"); Notes_Field (Optional_Field (NOTES_FIELD_NAMES)); //---- set default units ---- if (Version () <= 40) { Set_Units (type, VEH_TYPE); Set_Units (length, METERS); Set_Units (max_speed, MPS); Set_Units (max_accel, MPS2); Set_Units (max_decel, MPS2); Set_Units (op_cost, CENT_KM); Set_Units (use, VEH_USE_CODE); Set_Units (capacity, PPV); Set_Units (max_load, PPV); Set_Units (occupancy, PPV); Set_Units (load, SPP); Set_Units (unload, SPP); Set_Units (method, LOADING_CODE); Set_Units (min_dwell, SECONDS); Set_Units (max_dwell, SECONDS); Set_Units (fuel_cap, LITERS); } else { Set_Units (type, VEH_TYPE); Set_Units (length, FEET); Set_Units (max_speed, MPH); Set_Units (max_accel, FPS2); Set_Units (max_decel, FPS2); Set_Units (op_cost, CENT_MI); Set_Units (use, VEH_USE_CODE); Set_Units (capacity, PPV); Set_Units (max_load, PPV); Set_Units (occupancy, PPV); Set_Units (load, SPP); Set_Units (unload, SPP); Set_Units (method, LOADING_CODE); Set_Units (min_dwell, SECONDS); Set_Units (max_dwell, SECONDS); Set_Units (fuel_cap, GALLONS); } return (true); }
bool Travel_Time_File::Set_Field_Numbers (void) { //---- required fields ---- hhold = Required_Field ("HOUSEHOLD", "HHOLD", "HH_ID", "HHID", "HH"); trip = Required_Field ("TRIP"); if (!hhold || !trip) return (false); //---- optional fields ---- person = Optional_Field ("PERSON", "MEMBER", "PER_ID", "PERID", "PER"); leg = Optional_Field ("LEG"); mode = Optional_Field ("MODE"); purpose = Optional_Field ("PURPOSE", "TYPE"); constraint = Optional_Field ("CONSTRAINT", "LIMIT"); start_link = Optional_Field ("START_LINK", "STARTLINK", "ORIGIN"); end_link = Optional_Field ("END_LINK", "ENDLINK", "DESTINATION"); trip_start = Optional_Field ("TRIP_START", "TRIPSTART"); base_start = Optional_Field ("BASE_START", "BASESTART", "SCHEDULE1"); started = Optional_Field ("STARTED", "START", "ACTUAL1"); start_diff = Optional_Field ("START_DIFF", "STARTDIFF", "DIFF1"); trip_end = Optional_Field ("TRIP_END", "TRIPEND"); base_end = Optional_Field ("BASE_END", "BASEEND", "SCHEDULE2"); ended = Optional_Field ("ENDED", "END", "ACTUAL2"); end_diff = Optional_Field ("END_DIFF", "ENDDIFF", "DIFF2"); mid_trip = Optional_Field ("MID_TRIP", "MIDTRIP", "TIME", "TOD"); ttime = Optional_Field ("DURATION", "TRAVELTIME", "TTIME"); return (true); }
bool Tour_File::Set_Field_Numbers (void) { //---- optional fields ---- hhold = Optional_Field ("HOUSEHOLD", "HHOLD", "HH_ID", "HHID", "HH"); person = Optional_Field ("PERSON", "MEMBER", "PER_ID", "PERID", "PER"); tour = Optional_Field ("TOUR", "TOUR_ID"); purpose = Optional_Field ("PURPOSE", "PUR"); mode = Optional_Field ("MODE", "MOD"); origin = Optional_Field ("ORIGIN", "ORG"); destination = Optional_Field ("DESTINATION", "DES"); stop_out = Optional_Field ("STOP_OUT"); stop_in = Optional_Field ("STOP_IN"); start = Optional_Field ("START", "START_TIME", "STARTTIME", "DEPART"); end = Optional_Field ("RETURN", "RETURN_TIME", "END", "END_TIME", "ENDTIME"); group = Optional_Field ("GROUP", "NUMBER", "PURPOSE"); return (true); }
bool Link_Delay_File::Set_Field_Numbers (void) { bool flag = false; //---- required fields ---- link = Required_Field ("LINK"); flow = Required_Field (FLOW_RATE_FIELD_NAMES); if (Version () <= 40) { start = Optional_Field (START_FIELD_NAMES); end = Optional_Field (END_FIELD_NAMES); if (start < 0 && end < 0) { start = end = Required_Field ("PERIOD", "TIME"); time = Required_Field ("AVG_TIME", "TTIME", "SUM"); flag = true; } else { time = Required_Field (TRAVEL_TIME_FIELD_NAMES); } } else { time = Required_Field (TRAVEL_TIME_FIELD_NAMES); start = Required_Field (START_FIELD_NAMES); end = Required_Field (END_FIELD_NAMES); } if (link < 0 || flow < 0 || time < 0 || start < 0 || end < 0) return (false); //---- other required fields ---- dir = LinkDir_Type_Field (); type = Optional_Field ("TYPE", "USE", "HOV", "GROUP"); //---- nested optional fields ---- Num_Nest_Field (Optional_Field (CONNECTION_FIELD_NAMES)); if (Num_Nest_Field () < 0) turn_flag = false; out_link = Optional_Field (OUT_LINK_FIELD_NAMES); out_flow = Optional_Field (FLOW_OUT_FIELD_NAMES); out_time = Optional_Field (TIME_OUT_FIELD_NAMES); //---- set default units ---- if (flag) { Set_Units (start, SECONDS); Set_Units (end, SECONDS); } else { Set_Units (start, DAY_TIME); Set_Units (end, DAY_TIME); } Set_Units (flow, flow_units); Set_Units (time, SECONDS); Set_Units (out_flow, flow_units); Set_Units (out_time, SECONDS); Units_Type units = Get_Units (flow); if (units != NO_UNITS) Flow_Units (units); Lane_Use_Flows ((type >= 0)); return (true); }
bool Skim_File::Set_Field_Numbers (void) { //---- required fields ---- if (!Matrix_File::Set_Field_Numbers ()) return (false); //---- optional fields ---- mode = Optional_Field ("MODE", "TYPE"); count = Optional_Field ("COUNT", "NUMBER"); walk = Optional_Field ("WALK", "WALK_TIME"); wait = Optional_Field ("WAIT", "WAIT_TIME"); transit = Optional_Field ("TRANSIT", "TRANSIT_TIME"); drive = Optional_Field ("DRIVE", "DRIVE_TIME"); other = Optional_Field ("OTHER", "OTHER_TIME"); length = Optional_Field ("LENGTH", "DISTANCE"); cost = Optional_Field ("COST", "FARE"); time = Optional_Field ("TIME", "UTILITY"); variance = Optional_Field ("VARIANCE", "RANGE"); total = Optional_Field ("TOTAL", "TIME"); return (true); }
bool Link_Detail_File::Set_Field_Numbers (void) { //---- required fields ---- link = Required_Field ("LINK"); if (link < 0) return (false); dir = LinkDir_Type_Field (); control = Optional_Field ("CONTROL", "TYPE", "INT_TYPE"); group = Optional_Field ("GROUP", "TYPE"); lm_length = Optional_Field ("LM_LENGTH", "LM_LEN"); left_merge = Optional_Field ("L_MERGE", "LEFT_MERGE", "LT_MERGE"); lt_length = Optional_Field ("LT_LENGTH", "LT_LEN", "LEFT_LEN"); left = Optional_Field ("LEFT", "LEFT_TURN", "L"); left_thru = Optional_Field ("LEFT_THRU", "SHARED_LEFT", "LT"); thru = Optional_Field ("THRU", "T"); right_thru = Optional_Field ("RIGHT_THRU", "SHARED_RIGHT", "RT"); right = Optional_Field ("RIGHT", "R"); rt_length = Optional_Field ("RT_LENGTH", "RT_LEN", "RIGHT_LEN"); right_merge = Optional_Field ("R_MERGE", "RIGHT_MERGE", "RT_MERGE"); rm_length = Optional_Field ("RM_LENGTH", "RM_LEN"); use = Optional_Field ("USE", "USE_TYPE", "VEHICLE"); lanes = Optional_Field ("LANES", "USE_LANES", "LANE"); period = Optional_Field ("PERIOD", "USE_PERIOD", "USE_TIME"); Notes_Field (Optional_Field ("NOTES")); //---- set default units ---- Set_Units (control, CONTROL_CODE); Set_Units (lm_length, METERS); Set_Units (lt_length, METERS); Set_Units (rt_length, METERS); Set_Units (rm_length, METERS); Set_Units (use, USE_CODE); if (Version () > 40) Set_Units (lanes, LANE_RANGE_CODE); return (true); }