Crate origen[][src]

Re-exports

pub use self::core::metadata::Metadata;
pub use self::core::status::Operation;
pub use self::core::user;
pub use self::core::user::User;
pub use self::generator::utility::transaction::Action as TransactionAction;
pub use self::generator::utility::transaction::Transaction;
pub use error::Error;
pub use self::core::dut::Dut;
pub use self::core::producer::Producer;
pub use self::core::tester::Capture;
pub use self::core::tester::Overlay;
pub use self::core::tester::Tester;
pub use self::services::Services;
pub use self::core::frontend::callbacks as CALLBACKS;
pub use self::core::frontend::emit_callback;
pub use self::core::frontend::with_frontend;
pub use self::core::frontend::with_frontend_app;
pub use self::core::frontend::with_optional_frontend;

Modules

Macros

Returns a error stating that the backend doesn’t have an expected ID. This signals a bug somewhere and should only be used when we’re expecting something to exists.

Returns an Origen Error with pre-formatted message complaining that something already exists.

Returns an Err with the given error message

Exit the origen process with a failing exit code and a big ERROR banner

Exit the origen process with a failing exit code and a big FAIL banner

Exit the origen process with a passing exit code and a big PASS banner

Exit the origen process with a passing exit code and a big SUCCESS banner

Structs

The current device model, containing all metadata about hierarchy, regs, pins, specs, timing, etc. and responsible for maintaining the current state of the DUT (regs, pins, etc.)

This is analogous to the TEST for test program duration, it provides a similar API for pushing nodes to the current flow, FLOW.push(my_node), etc.

Provides configuration information derived from origen.toml files found in the Origen installation and application file system paths

Producer

Services owned by the current DUT, stored as a separate collection to avoid having to get a mutable ref on the DUT if the service needs mutation

Provides status information derived from the runtime environment, e.g. if an app is present If an app is present then its Application struct is stored in here. Things like the current output and reference directories should be derived from here.

Storage for the current test (pattern)

The global tester model.

Enums

Constants

The available Origen runtime modes

Functions

Sanitizes the given mode string and returns it, but will exit the process if it is invalid

This is called immediately upon Origen booting

This will be called immediately before loading a fresh set of targets. Everything required to clear previous state from the existing targets should be initiated from here.

Clears the current test (pattern) AST and starts a new one, this will be called by the producer before loading the next pattern source file

Execute the given function with a reference to the current job. Returns an error if there is no current job, otherwise the result of the given function.

Execute the given function with a mutable reference to the current job. Returns an error if there is no current job, otherwise the result of the given function.

Type Definitions