Skip to content

Release notes

Hand-authored release notes for the SIDRA INTERSECTION API.

Use the version selector in the top bar to read the docs for a specific release. Links below pin to a specific version's API reference so they stay correct no matter which version you're viewing this page from.

11.0.4

Added

Network assignment (SIDRA ASSIGN): networks can now carry an assignment scheme, with trip matrices, assignment volume bins and zones as inputs, and per-OD and per-route results as outputs. Process an Assign Network with ISIAPINetwork.Process(), as the two new SIDRA ASSIGN examples in the sample ZIP do. Start with the SIDRA ASSIGN guide.

New interfaces for assignment inputs:

New interfaces for assignment outputs:

Source application tracking: set SourceAppName on the API object and it is saved to the Created_by_source_app and Modified_by_source_app properties of the sites, networks, site volume bins and assignment volume bins you create or change. The matching _type properties report which kind of application did it: 1 = SIDRA INTERSECTION Main Application, 2 = SI API Application. Sites and networks can also report 3 = SIDRA MAPS and 4 = Imported from SIP9.

ISIAPI

  • string SourceAppName: the name of the application that calls the API

ISIAPINetwork

  • ISIAPIAssignScheme AssignScheme
  • int Created_by_source_app_type: the type of application that created this network
  • string Created_by_source_app
  • int Modified_by_source_app_type: the type of application that last modified this network
  • string Modified_by_source_app

ISIAPINetworkFolder

  • bool IsExpanded
  • ISIAPINetwork AddAssignNetwork(ISIAPINetwork sourceNetwork, ISIAPIAssignVolumeBin assignVolBin)

ISIAPIProject

  • ISIAPIAssignVolumeBinFolders AssignVolumeBinFolders
  • ISIAPIAssignVolumeBinFolder AddAssignVolumeBinFolder(string name)
  • bool RemoveAssignVolumeBinFolder(ISIAPIAssignVolumeBinFolder assignVolumeBinFolder)
  • bool MoveAssignVolumeBinFolderTo(ISIAPIAssignVolumeBinFolder assignVolumeBinFolder, int newPosition)

ISIAPIRouteMC

  • bool UseAssignRouteVolumeFactor
  • float AssignRouteVolumeFactor

ISIAPISite

  • int Created_by_source_app_type: the type of application that created this site
  • string Created_by_source_app
  • int Modified_by_source_app_type: the type of application that last modified this site
  • string Modified_by_source_app

ISIAPISiteFolder

  • bool IsExpanded

ISIAPISiteVolumeBin

  • int Created_by_source_app_type: the type of application that created this site volume bin
  • string Created_by_source_app
  • int Modified_by_source_app_type: the type of application that last modified this site volume bin
  • string Modified_by_source_app

ISIAPISiteVolumeBinFolder

  • bool IsExpanded

Samples

  • Two SIDRA ASSIGN examples, AssignTest1 and AssignTest2, in C#, C++ and Python, and the project file APIAssignTest2.sipx that AssignTest2 opens. The sample ZIP now runs ten examples. AssignTest2 also writes its O-D, route and convergence results to CSV files.
  • The signalised Site example now prints phasing and timing inputs and results, through PrintPhasingAndTimingInputOutputData() in each language's Utilities file.
  • Renamed routines: ReadLaneDisciplines() is now PrintLaneDisciplines(), ReadPrioritiesData() is now PrintPrioritiesData(), CreateNewTypeSite() is now CreateNewTypeSites(), and the three Read...Output() helpers are now PrintIntersectionOutput(), PrintMovementOutput() and PrintLaneOutput().

Changed

ISIAPIMovementClass

  • string Display_id is now read-only in effect. This is the ID shown in the Site Movement Definitions dialog, and earlier versions let you edit it. From 11.0.4 the set accessor still exists but does not change the value. It will be removed in SIDRA INTERSECTION 12, so stop assigning to this property now.

Fixed

  • After a lane was changed from Slip/Bypass to Normal through the API, the affected movement could still run in every phase.

Full API reference for 11.0.4

11.0.3

Initial published release of the rewritten developer documentation. Full API surface (~178 interfaces) documented with per-language code samples (C#, C++, Python) and cross-type navigation.

Added

Network convergence: the Two-Loop Convergence Method can be selected and tuned per network, with new output properties reporting convergence behaviour at network and site level.

ISIAPINetwork

  • int ConvergenceMethod: 0 = One-Loop Convergence Method (default), 1 = Two-Loop Convergence Method
  • int TwoLoops_OuterMaxIterations
  • float TwoLoops_StoppingPercent
  • bool TwoLoops_ApplyMinStoppingPercent
  • int TwoLoops_InnerMaxIterations
  • float TwoLoops_InnerStoppingPercent

ISIAPIOutputNetwork

  • int TwoLoops_TotalInnerIterations
  • bool Is_settled
  • bool Is_minPSC_regenerated
  • float MinPSC
  • int MinPSC_iteration

ISIAPIOutputNetworkVehicle

  • float DiffDelayControlAveragePct
  • float DiffDelayControlAveragePctPrev
  • float DiffDelayControlAveragePctPrev2
  • float DiffSpeedEfficiencyPct
  • float DiffSpeedEfficiencyPctPrev
  • float DiffSpeedEfficiencyPctPrev2

ISIAPIOutputSiteVehicle

  • float MaxDxPct
  • float MaxDxPctPrev
  • float MaxDxPctPrev2
  • float DiffDelayControlAveragePct
  • float DiffDelayControlAveragePctPrev
  • float DiffDelayControlAveragePctPrev2
  • float DiffSpeedEfficiencyPct
  • float DiffSpeedEfficiencyPctPrev
  • float DiffSpeedEfficiencyPctPrev2

Full API reference for 11.0.3