Statistics {
	xmlFile "Statistics.xml"

  TextSize 1.0

	#define SYSTEM_COLOR [0 1 1 1]
	#define SPACE_COLOR [0 1.0 0.3 1]
	#define SIMULATION_COLOR [1 0 0 1]

	#define MIN_VALUE 0.0
  #define MAX_VALUE 0.0

	WindowEntries {

		Graph {
		  Width 0.9
		  Height 0.2
		  OffsetX 0.01
		  OffsetY 0.01
		}


    ////
    // Entries for Simulation.
    ////

    Entry {
      Module "Simulation"
      Data "Step forward time"
      Title "StepForward"
      Color SIMULATION_COLOR
      TextSize 1.1
    }

    GraphEntry {
      Module "Simulation"
      Data "Step forward time"
      Title "StepForward"
      Color SIMULATION_COLOR
      MinValue MIN_VALUE
      MaxValue MAX_VALUE
    }

    Entry {
      Module "Simulation"
      Data "Dynamics-system time"
      Title "DynamicsSystem"
      Color SIMULATION_COLOR
    }

    GraphEntry {
      Module "Simulation"
      Title "Dynamics"
      Data "Dynamics-system time"
      Color SYSTEM_COLOR
      MinValue MIN_VALUE
      MaxValue MAX_VALUE
    }

    Entry {
      Module "Simulation"
      Data "Collision-detection time"
      Title "Total Space"
      Color SIMULATION_COLOR
    }

    GraphEntry {
      Module "Simulation"
      Data "Collision-detection time"
      Title "Space"
      Color SPACE_COLOR
      MinValue MIN_VALUE
      MaxValue MAX_VALUE
    }

    Entry {
      Module "Simulation"
      Data "Contact reduction"
      Title "Contact reduction"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Culling contacts"
      Title "Culling contacts"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Num contacts removed"
      Title "Num contacts removed"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Update RenderManager"
      Title "Update render manager"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Pre-collide event time"
      Title "Pre-collide event time"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Pre-step event time"
      Title "Pre-step event time"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Post-step event time"
      Title "Post-step event time"
      Color SIMULATION_COLOR
    }


    Entry {
      Module "Simulation"
      Data "Last-step event time"
      Title "Last-step event time"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Triggering contact events"
      Title "Triggering contact events"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Triggering contact separation events"
      Title "Triggering contact separation events"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Inter-step time"
      Title "Time outside AGX"
      Color SIMULATION_COLOR
    }



    ////
    // Entries for DynamicsSystem
    ////

    Entry {
      Module "DynamicsSystem"
      Data "Update time"
      Title "Total time"
      Color SYSTEM_COLOR
      TextSize 1.1
    }

    Entry {
      Module "DynamicsSystem"
      Data "Solver time"
      Title "Solve"
      Color SYSTEM_COLOR
    }

    Entry {
      Module "DynamicsSystem"
      Data "Num enabled rigid bodies"
      Title "Num RigidBodies"
      Color SYSTEM_COLOR
    }

    Entry {
      Module "DynamicsSystem"
      Data "Num binary constraints"
      Title "Num binary constraints"
      Color SYSTEM_COLOR
    }

    Entry {
      Module "DynamicsSystem"
      Data "Num multi-body constraints"
      Title "Num multi-body constraints"
      Color SYSTEM_COLOR
    }

    Entry {
      Module "DynamicsSystem"
      Data "Num solve islands"
      Title "Num solve islands"
      Color SYSTEM_COLOR
    }



    ////
    // Entries for Space
    ////

    Entry {
      Module "Space"
      Data "Update time"
      Title "Update"
      Color SPACE_COLOR
      TextSize 1.1
    }

    Entry {
      Module "Space"
      Data "Sync transforms time"
      Title "Sync transforms"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Sync bounds time"
      Title "Sync bounds"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Broad-phase time"
      Title "BroadPhase"
      Color SPACE_COLOR
    }
    Entry {
      Module "SweepPrune"
      Data "NumOverlaps"
      Title "NumBBoxOverlaps"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Narrow-phase time"
      Title "NarrowPhase"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Num geometries"
      Title "Num geometries"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Num narrow phase tests"
      Title "Num narrow phase tests"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Num geometry-geometry contacts"
      Title "Num geometry-geometry contacts"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data  "Num geometry-particle contacts"
      Title "Num geometry-particle contacts"
      Color SPACE_COLOR
    }

    Entry {
      Module "Space"
      Data "Num particle-particle contacts"
      Title "Num particle-particle contacts"
      Color SPACE_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Num warm started particle-particle contacts"
      Title "Num warm started particle-particle contacts"
      Color SIMULATION_COLOR
    }

    Entry {
      Module "Simulation"
      Data "Num warm started geometry-particle contacts"
      Title "Num warm started particle-geometry contacts"
      Color SIMULATION_COLOR
    }


    ////
    // Misc. entries.
    ////

    Entry {
        Module "Simulation"
        Data "Num particles"
        Title "Num particles"
        Color SIMULATION_COLOR
        Optional 1
    }

    Entry {
        Module "Simulation"
        Data "DataTransferRate"
        Title "Data Transfer Rate (MB/s)"
        Color SIMULATION_COLOR
        Optional 1
    }
  }
}
