(defpackage #:lime.core (:use #:cl) (:documentation "The protocol-independent Activity/View/Head/Lease model used by Lime.") (:export ;; Conditions #:lime-error #:unknown-entity #:unknown-entity-kind #:unknown-entity-id #:invalid-activity-membership #:invalid-activity-membership-client-id #:invalid-activity-membership-activity-id #:activation-blocked #:activation-blocked-report #:stale-transition-plan #:degraded-presentation-update #:invalid-transition ;; Data types and accessors useful to the UI/backend layer. #:world #:make-world #:normalize-activity-arrangements #:world-revision #:activity #:activity-id #:activity-name #:activity-client-ids #:activity-view-ids #:client #:client-id #:client-activity-id #:client-shared-p #:client-available-in-activity-p #:activity-available-client-ids #:client-name #:client-metadata #:placement #:make-placement #:placement-client-id #:placement-kind #:placement-data #:placement-tile-weight #:default-floating-placement-data #:layout-leaf #:make-layout-leaf #:layout-leaf-client-id #:layout-split #:make-layout-split #:layout-split-orientation #:layout-split-ratio #:layout-split-first #:layout-split-second #:layout-node-client-ids #:geometry #:make-geometry #:geometry-x #:geometry-y #:geometry-width #:geometry-height #:default-layout-root #:master-stack-layout-root #:resolve-presentation-layout #:view #:view-id #:view-activity-id #:view-name #:view-placements #:view-layout-root #:view-layout-mode #:view-layout-options #:view-focus-client-id #:viewset-entry #:make-viewset-entry #:viewset-entry-head-id #:viewset-entry-view-id #:viewset #:viewset-id #:viewset-name #:viewset-entries #:head #:head-id #:head-active-presentation-id #:presentation #:presentation-id #:presentation-head-id #:presentation-activity-id #:presentation-source-view-id #:presentation-placements #:presentation-layout-root #:presentation-layout-mode #:presentation-layout-options #:presentation-focus-client-id #:presentation-dirty-p #:presentation-unavailable-client-ids #:lease #:lease-client-id #:lease-presentation-id #:activation-conflict #:activation-conflict-kind #:activation-conflict-client-id #:activation-conflict-view-id #:activation-conflict-holder-head-id #:activation-conflict-holder-presentation-id #:activation-report #:activation-report-world-revision #:activation-report-head-id #:activation-report-view-id #:activation-report-source-presentation-id #:activation-report-activity-id #:activation-report-current-presentation-id #:activation-report-desired-placements #:activation-report-desired-layout-root #:activation-report-desired-layout-mode #:activation-report-desired-layout-options #:activation-report-focus-client-id #:activation-report-conflicts #:activation-plan #:activation-plan-policy #:activation-plan-layout-mode #:activation-plan-layout-options #:viewset-conflict #:viewset-conflict-kind #:viewset-conflict-target-head-id #:viewset-conflict-client-id #:viewset-conflict-view-id #:viewset-conflict-holder-head-id #:viewset-conflict-holder-presentation-id #:viewset-report #:viewset-report-world-revision #:viewset-report-viewset-id #:viewset-report-entries #:viewset-report-outgoing-presentation-ids #:viewset-report-conflicts #:viewset-plan #:viewset-plan-policy #:viewset-result #:viewset-result-viewset-id #:viewset-result-presentation-ids #:viewset-result-unavailable-client-ids-by-head #:head-topology-source #:head-topology-source-head-id #:head-topology-source-presentation-id #:head-topology-source-activity-id #:head-topology-source-source-view-id #:head-topology-report #:head-topology-report-world-revision #:head-topology-report-current-head-ids #:head-topology-report-desired-head-ids #:head-topology-report-added-head-ids #:head-topology-report-retained-head-ids #:head-topology-report-removed-head-ids #:head-topology-report-removed-active-sources #:head-topology-move #:make-head-topology-move #:head-topology-move-from-head-id #:head-topology-move-to-head-id #:head-topology-plan #:head-topology-plan-base-revision #:head-topology-plan-current-head-ids #:head-topology-plan-desired-head-ids #:head-topology-plan-added-head-ids #:head-topology-plan-removed-head-ids #:head-topology-plan-moves #:head-topology-result #:head-topology-result-moved-presentation-ids #:head-topology-result-suspended-presentation-ids #:head-topology-result-added-head-ids #:head-topology-result-removed-head-ids ;; Queries. #:find-activity #:find-client #:find-view #:find-viewset #:find-head #:find-presentation #:list-activities #:activity-deletion-summary #:list-viewsets #:current-presentation #:activity-draft-for-head #:lease-for-client #:presentation-client-ids #:presentation-leased-client-ids #:presentation-hidden-client-ids #:presentation-active-p #:activation-report-ready-p #:viewset-report-ready-p ;; Model construction. #:create-head #:create-activity #:delete-activity #:create-client #:move-client-to-activity #:move-client-to-presentation #:set-client-shared #:make-client-private-in-presentation #:create-view #:create-viewset ;; Planning and transitions. #:preflight-view-activation #:preflight-presentation-resume #:activity-presentations #:preflight-presentation-bring #:bring-presentation-to-head #:preflight-activity-draft #:preflight-viewset-activation #:preflight-head-topology-reconciliation #:build-strict-activation-plan #:build-partial-activation-plan #:build-taking-activation-plan #:commit-activation-plan #:build-strict-viewset-plan #:build-partial-viewset-plan #:build-taking-viewset-plan #:commit-viewset-plan #:build-head-topology-reconciliation-plan #:commit-head-topology-reconciliation-plan #:activate-view-strictly #:activate-view-partially #:activate-view-taking #:activate-viewset-strictly #:activate-viewset-partially #:activate-viewset-taking #:resume-presentation-strictly #:resume-presentation-partially #:resume-presentation-taking #:open-activity-draft #:retire-client #:transfer-client-lease #:reclaim-available-slots #:show-client-on-presentation #:hide-client-from-presentation #:hide-focused-client-in-presentation #:focus-client-on-presentation #:set-presentation-layout-root #:set-presentation-layout-mode #:set-presentation-master-stack-layout #:set-presentation-monocle-layout #:set-presentation-manual-layout #:set-client-tile-weight #:set-focused-layout-split-orientation #:adjust-focused-layout-split-ratio #:swap-presentation-layout-clients #:swap-focused-layout-client #:promote-client-to-master #:presentation-client-floating-p #:toggle-client-floating #:toggle-focused-client-floating #:set-client-floating-geometry #:update-view-from-presentation #:save-view-from-presentation #:validate-world))