blob: 612bca98e1f0b7b93aa6183897fbe26d01cb1364 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
use std::sync::mpsc::*;
use crate::config::*;
use swaystatus_plugin::*;
use crate::communication::*;
pub mod pulse;
use pulse::Pulse;
pub struct PulseVolumeRunnable<'p> {
config : &'p PulseVolumeConfig,
to_main : Box<dyn MsgModuleToMain + 'p>,
from_main : Receiver<MessagesFromMain>,
pulse : Pulse
}
impl<'p : 's, 's> PulseVolumeRunnable<'p> {
pub fn new(config : &'p PulseVolumeConfig, to_main : Box<dyn MsgModuleToMain + 'p>) -> (Self, SenderForMain) {
let (s, r) = channel();
let result = PulseVolumeRunnable {
config,
to_main,
from_main : r,
pulse: Pulse::init(&config.sink),
};
let sender = SenderForMain::new(s, result.pulse.get_wake_up());
(result, sender)
}
}
impl<'p> SwayStatusModuleRunnable for PulseVolumeRunnable<'p> {
fn run(&self) {
//TODO
}
}
|