#lang racket/base ;;; SPDX-License-Identifier: LGPL-3.0-or-later ;;; SPDX-FileCopyrightText: Copyright © 2017-2022 Tony Garnock-Jones (provide (except-out (all-defined-out) render-config) (rename-out [make-render-config render-config] [render-config ])) (require struct-defaults) ;;--------------------------------------------------------------------------- ;; Representation of a parsed trace. (struct msd (max-lane events) #:prefab) (struct diagram-position (lane row) #:prefab) (struct begin-swimlane (pos) #:prefab) (struct activate-swimlane (pos) #:prefab) (struct deactivate-swimlane (pos) #:prefab) (struct end-swimlane (pos) #:prefab) (struct annotate-swimlane (pos color annotation) #:prefab) (struct connection (bidirectional? from-pos to-pos) #:prefab) ;;--------------------------------------------------------------------------- ;; Configuration for the renderer (struct render-config ( width height gap number-steps? number-gap active-width activation-color action-color event-color label-color scale ) #:prefab) (define-struct-defaults make-render-config render-config [ #:width [render-config-width 100] #:height [render-config-height 4] #:gap [render-config-gap 12] #:number-steps? [render-config-number-steps? #f] #:number-gap [render-config-number-gap 0] #:active-width [render-config-active-width 10] #:activation-color [render-config-activation-color "pink"] #:action-color [render-config-action-color "white"] #:event-color [render-config-event-color "orange"] #:label-color [render-config-label-color "palegreen"] #:scale [render-config-scale 1] ])