spvirit-server 0.1.20

PVAccess server library for EPICS
Documentation
//! Example: serving an EPICS `.db` file.
//!
//! The same file `spserver --db` takes can be loaded into a `PvaServer`,
//! so a database written for a real IOC serves unchanged.
//!
//! Try it:
//!   cargo run -p spvirit-server --example db_file
//!
//! Then from another terminal:
//!   splist
//!   spget DEMO:TEMP
//!   spput DEMO:TEMP 46      # >= HIHI -> MAJOR
//!   spget DEMO:TEMP

use spvirit_server::PvaServer;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // ANCHOR: load
    let server = PvaServer::builder()
        .db_file("spvirit-server/examples/example.db")
        // .db LOW/HIGH/LOLO/HIHI are only evaluated when this is on.
        .compute_alarms(true)
        .build();
    // ANCHOR_END: load

    server.run().await
}