diff --git a/atom/src/port.rs b/atom/src/port.rs index 155c4df4..ab70cd10 100644 --- a/atom/src/port.rs +++ b/atom/src/port.rs @@ -110,15 +110,23 @@ impl PortType for AtomPort { type OutputPortType = PortWriter<'static>; #[inline] - unsafe fn input_from_raw(pointer: NonNull, _sample_count: u32) -> PortReader<'static> { - let header = AtomHeader::from_raw(pointer.cast().as_ref()); - PortReader::new(UnidentifiedAtom::from_header(header)) + unsafe fn input_from_raw( + pointer: NonNull, + _sample_count: u32, + ) -> *const PortReader<'static> { + todo!(); + //let header = AtomHeader::from_raw(pointer.cast().as_ref()); + //PortReader::new(UnidentifiedAtom::from_header(header)) } #[inline] - unsafe fn output_from_raw(pointer: NonNull, _sample_count: u32) -> PortWriter<'static> { - let header = AtomHeader::from_raw_mut(pointer.cast().as_mut()); - PortWriter::new(UnidentifiedAtom::from_header_mut(header).body_mut()) + unsafe fn output_from_raw( + pointer: NonNull, + _sample_count: u32, + ) -> *mut PortWriter<'static> { + todo!(); + //let header = AtomHeader::from_raw_mut(pointer.cast().as_mut()); + //PortWriter::new(UnidentifiedAtom::from_header_mut(header).body_mut()) } } diff --git a/core/Cargo.toml b/core/Cargo.toml index 96a6465e..38a3d10e 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -18,5 +18,8 @@ urid = { version = "0.1.0", default-features = false } lv2-sys = "2.0.0" lv2-core-derive = { version = "2.1.0", optional = true } +[dev-dependencies] +urid = { version = "0.1.0", default-features = true } + [features] default = ["lv2-core-derive"] diff --git a/core/src/feature/mod.rs b/core/src/feature/mod.rs index 3871d1eb..d001e55d 100644 --- a/core/src/feature/mod.rs +++ b/core/src/feature/mod.rs @@ -9,6 +9,9 @@ pub use cache::FeatureCache; pub use core_features::*; pub use descriptor::FeatureDescriptor; +#[cfg(feature = "lv2-core-derive")] +pub use lv2_core_derive::FeatureCollection; + use std::ffi::c_void; /// All threading contexts of LV2 interface methods. diff --git a/core/src/lib.rs b/core/src/lib.rs index 369b2245..876d7951 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -7,6 +7,7 @@ //! ``` //! // Import everything we need. //! use lv2_core::prelude::*; +//! use port::inplace::*; //imports ports supporting inplace processing //! use urid::*; //! //! // The input and output ports are defined by a struct which implements the `PortCollection` trait. @@ -14,9 +15,9 @@ //! // port and an output audio port. //! #[derive(PortCollection)] //! struct Ports { -//! gain: InputPort, -//! input: InputPort