summaryrefslogtreecommitdiff
path: root/examples/basic.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/basic.rs')
-rw-r--r--examples/basic.rs33
1 files changed, 33 insertions, 0 deletions
diff --git a/examples/basic.rs b/examples/basic.rs
new file mode 100644
index 0000000..5164fda
--- /dev/null
+++ b/examples/basic.rs
@@ -0,0 +1,33 @@
+/// Check the `util` module to see how the `Card` structure is implemented.
+pub mod utils;
+use crate::utils::*;
+
+pub fn main() {
+ let card = Card::open_global();
+
+ // Attempt to acquire and release master lock
+ println!("Get Master lock: {:?}", card.acquire_master_lock());
+ println!("Release Master lock: {:?}", card.release_master_lock());
+
+ // Get the Bus ID of the device
+ println!("Getting Bus ID: {:?}", card.get_bus_id().unwrap());
+
+ // Figure out driver in use
+ println!("Getting driver info");
+ let driver = card.get_driver().unwrap();
+ println!("\tName: {:?}", driver.name());
+ println!("\tDate: {:?}", driver.date());
+ println!("\tDesc: {:?}", driver.description());
+
+ // Enable all possible client capabilities
+ println!("Setting client capabilities");
+ for &cap in capabilities::CLIENT_CAP_ENUMS {
+ println!("\t{:?}: {:?}", cap, card.set_client_capability(cap, true));
+ }
+
+ // Get driver capabilities
+ println!("Getting driver capabilities");
+ for &cap in capabilities::DRIVER_CAP_ENUMS {
+ println!("\t{:?}: {:?}", cap, card.get_driver_capability(cap));
+ }
+}