#![allow(clippy::all, unused_imports, rustdoc::bare_urls)]
use crate::error::{check, Error, Result};
use crate::object::{BaseObject, Interface, Ref};
use crate::sys;
use crate::value::{Complex, Ratio, Value};
use crate::generated::*;
use std::ffi::c_char;
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Allocator(pub(crate) BaseObject);
impl std::ops::Deref for Allocator {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Allocator {}
unsafe impl Interface for Allocator {
const NAME: &'static str = "daqAllocator";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqAllocator_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Allocator {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Allocator(BaseObject(r)) }
}
impl std::fmt::Display for Allocator {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Allocator> for Value {
fn from(value: &Allocator) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Allocator> for Value {
fn from(value: Allocator) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Allocator {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Connection(pub(crate) BaseObject);
impl std::ops::Deref for Connection {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Connection {}
unsafe impl Interface for Connection {
const NAME: &'static str = "daqConnection";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqConnection_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Connection {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Connection(BaseObject(r)) }
}
impl std::fmt::Display for Connection {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Connection> for Value {
fn from(value: &Connection) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Connection> for Value {
fn from(value: Connection) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Connection {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct ConnectionInternal(pub(crate) BaseObject);
impl std::ops::Deref for ConnectionInternal {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for ConnectionInternal {}
unsafe impl Interface for ConnectionInternal {
const NAME: &'static str = "daqConnectionInternal";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqConnectionInternal_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl ConnectionInternal {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { ConnectionInternal(BaseObject(r)) }
}
impl std::fmt::Display for ConnectionInternal {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&ConnectionInternal> for Value {
fn from(value: &ConnectionInternal) -> Value { Value::Object(value.to_base_object()) }
}
impl From<ConnectionInternal> for Value {
fn from(value: ConnectionInternal) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for ConnectionInternal {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DataDescriptor(pub(crate) BaseObject);
impl std::ops::Deref for DataDescriptor {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DataDescriptor {}
unsafe impl Interface for DataDescriptor {
const NAME: &'static str = "daqDataDescriptor";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDataDescriptor_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DataDescriptor {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DataDescriptor(BaseObject(r)) }
}
impl std::fmt::Display for DataDescriptor {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DataDescriptor> for Value {
fn from(value: &DataDescriptor) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DataDescriptor> for Value {
fn from(value: DataDescriptor) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DataDescriptor {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DataDescriptorBuilder(pub(crate) BaseObject);
impl std::ops::Deref for DataDescriptorBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DataDescriptorBuilder {}
unsafe impl Interface for DataDescriptorBuilder {
const NAME: &'static str = "daqDataDescriptorBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDataDescriptorBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DataDescriptorBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DataDescriptorBuilder(BaseObject(r)) }
}
impl std::fmt::Display for DataDescriptorBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DataDescriptorBuilder> for Value {
fn from(value: &DataDescriptorBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DataDescriptorBuilder> for Value {
fn from(value: DataDescriptorBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DataDescriptorBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DataPacket(pub(crate) Packet);
impl std::ops::Deref for DataPacket {
type Target = Packet;
fn deref(&self) -> &Packet { &self.0 }
}
impl crate::sealed::Sealed for DataPacket {}
unsafe impl Interface for DataPacket {
const NAME: &'static str = "daqDataPacket";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDataPacket_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DataPacket {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DataPacket(Packet::__from_ref(r)) }
}
impl std::fmt::Display for DataPacket {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DataPacket> for Value {
fn from(value: &DataPacket) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DataPacket> for Value {
fn from(value: DataPacket) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DataPacket {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DataRule(pub(crate) BaseObject);
impl std::ops::Deref for DataRule {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DataRule {}
unsafe impl Interface for DataRule {
const NAME: &'static str = "daqDataRule";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDataRule_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DataRule {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DataRule(BaseObject(r)) }
}
impl std::fmt::Display for DataRule {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DataRule> for Value {
fn from(value: &DataRule) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DataRule> for Value {
fn from(value: DataRule) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DataRule {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DataRuleBuilder(pub(crate) BaseObject);
impl std::ops::Deref for DataRuleBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DataRuleBuilder {}
unsafe impl Interface for DataRuleBuilder {
const NAME: &'static str = "daqDataRuleBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDataRuleBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DataRuleBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DataRuleBuilder(BaseObject(r)) }
}
impl std::fmt::Display for DataRuleBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DataRuleBuilder> for Value {
fn from(value: &DataRuleBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DataRuleBuilder> for Value {
fn from(value: DataRuleBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DataRuleBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Deleter(pub(crate) BaseObject);
impl std::ops::Deref for Deleter {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Deleter {}
unsafe impl Interface for Deleter {
const NAME: &'static str = "daqDeleter";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDeleter_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Deleter {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Deleter(BaseObject(r)) }
}
impl std::fmt::Display for Deleter {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Deleter> for Value {
fn from(value: &Deleter) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Deleter> for Value {
fn from(value: Deleter) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Deleter {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Dimension(pub(crate) BaseObject);
impl std::ops::Deref for Dimension {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Dimension {}
unsafe impl Interface for Dimension {
const NAME: &'static str = "daqDimension";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDimension_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Dimension {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Dimension(BaseObject(r)) }
}
impl std::fmt::Display for Dimension {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Dimension> for Value {
fn from(value: &Dimension) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Dimension> for Value {
fn from(value: Dimension) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Dimension {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DimensionBuilder(pub(crate) BaseObject);
impl std::ops::Deref for DimensionBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DimensionBuilder {}
unsafe impl Interface for DimensionBuilder {
const NAME: &'static str = "daqDimensionBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDimensionBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DimensionBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DimensionBuilder(BaseObject(r)) }
}
impl std::fmt::Display for DimensionBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DimensionBuilder> for Value {
fn from(value: &DimensionBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DimensionBuilder> for Value {
fn from(value: DimensionBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DimensionBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DimensionRule(pub(crate) BaseObject);
impl std::ops::Deref for DimensionRule {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DimensionRule {}
unsafe impl Interface for DimensionRule {
const NAME: &'static str = "daqDimensionRule";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDimensionRule_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DimensionRule {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DimensionRule(BaseObject(r)) }
}
impl std::fmt::Display for DimensionRule {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DimensionRule> for Value {
fn from(value: &DimensionRule) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DimensionRule> for Value {
fn from(value: DimensionRule) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DimensionRule {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct DimensionRuleBuilder(pub(crate) BaseObject);
impl std::ops::Deref for DimensionRuleBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for DimensionRuleBuilder {}
unsafe impl Interface for DimensionRuleBuilder {
const NAME: &'static str = "daqDimensionRuleBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqDimensionRuleBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl DimensionRuleBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { DimensionRuleBuilder(BaseObject(r)) }
}
impl std::fmt::Display for DimensionRuleBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&DimensionRuleBuilder> for Value {
fn from(value: &DimensionRuleBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<DimensionRuleBuilder> for Value {
fn from(value: DimensionRuleBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for DimensionRuleBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct InputPortPrivate(pub(crate) BaseObject);
impl std::ops::Deref for InputPortPrivate {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for InputPortPrivate {}
unsafe impl Interface for InputPortPrivate {
const NAME: &'static str = "daqInputPortPrivate";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqInputPortPrivate_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl InputPortPrivate {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { InputPortPrivate(BaseObject(r)) }
}
impl std::fmt::Display for InputPortPrivate {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&InputPortPrivate> for Value {
fn from(value: &InputPortPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl From<InputPortPrivate> for Value {
fn from(value: InputPortPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for InputPortPrivate {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct PacketDestructCallback(pub(crate) BaseObject);
impl std::ops::Deref for PacketDestructCallback {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for PacketDestructCallback {}
unsafe impl Interface for PacketDestructCallback {
const NAME: &'static str = "daqPacketDestructCallback";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqPacketDestructCallback_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl PacketDestructCallback {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { PacketDestructCallback(BaseObject(r)) }
}
impl std::fmt::Display for PacketDestructCallback {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&PacketDestructCallback> for Value {
fn from(value: &PacketDestructCallback) -> Value { Value::Object(value.to_base_object()) }
}
impl From<PacketDestructCallback> for Value {
fn from(value: PacketDestructCallback) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for PacketDestructCallback {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Range(pub(crate) BaseObject);
impl std::ops::Deref for Range {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Range {}
unsafe impl Interface for Range {
const NAME: &'static str = "daqRange";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqRange_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Range {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Range(BaseObject(r)) }
}
impl std::fmt::Display for Range {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Range> for Value {
fn from(value: &Range) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Range> for Value {
fn from(value: Range) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Range {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct ReferenceDomainInfoBuilder(pub(crate) BaseObject);
impl std::ops::Deref for ReferenceDomainInfoBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for ReferenceDomainInfoBuilder {}
unsafe impl Interface for ReferenceDomainInfoBuilder {
const NAME: &'static str = "daqReferenceDomainInfoBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl ReferenceDomainInfoBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { ReferenceDomainInfoBuilder(BaseObject(r)) }
}
impl std::fmt::Display for ReferenceDomainInfoBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&ReferenceDomainInfoBuilder> for Value {
fn from(value: &ReferenceDomainInfoBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<ReferenceDomainInfoBuilder> for Value {
fn from(value: ReferenceDomainInfoBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for ReferenceDomainInfoBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct ReusableDataPacket(pub(crate) BaseObject);
impl std::ops::Deref for ReusableDataPacket {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for ReusableDataPacket {}
unsafe impl Interface for ReusableDataPacket {
const NAME: &'static str = "daqReusableDataPacket";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqReusableDataPacket_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl ReusableDataPacket {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { ReusableDataPacket(BaseObject(r)) }
}
impl std::fmt::Display for ReusableDataPacket {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&ReusableDataPacket> for Value {
fn from(value: &ReusableDataPacket) -> Value { Value::Object(value.to_base_object()) }
}
impl From<ReusableDataPacket> for Value {
fn from(value: ReusableDataPacket) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for ReusableDataPacket {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct RulePrivate(pub(crate) BaseObject);
impl std::ops::Deref for RulePrivate {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for RulePrivate {}
unsafe impl Interface for RulePrivate {
const NAME: &'static str = "daqRulePrivate";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqRulePrivate_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl RulePrivate {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { RulePrivate(BaseObject(r)) }
}
impl std::fmt::Display for RulePrivate {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&RulePrivate> for Value {
fn from(value: &RulePrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl From<RulePrivate> for Value {
fn from(value: RulePrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for RulePrivate {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct Scaling(pub(crate) BaseObject);
impl std::ops::Deref for Scaling {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for Scaling {}
unsafe impl Interface for Scaling {
const NAME: &'static str = "daqScaling";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqScaling_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl Scaling {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { Scaling(BaseObject(r)) }
}
impl std::fmt::Display for Scaling {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&Scaling> for Value {
fn from(value: &Scaling) -> Value { Value::Object(value.to_base_object()) }
}
impl From<Scaling> for Value {
fn from(value: Scaling) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for Scaling {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct ScalingBuilder(pub(crate) BaseObject);
impl std::ops::Deref for ScalingBuilder {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for ScalingBuilder {}
unsafe impl Interface for ScalingBuilder {
const NAME: &'static str = "daqScalingBuilder";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqScalingBuilder_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl ScalingBuilder {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { ScalingBuilder(BaseObject(r)) }
}
impl std::fmt::Display for ScalingBuilder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&ScalingBuilder> for Value {
fn from(value: &ScalingBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl From<ScalingBuilder> for Value {
fn from(value: ScalingBuilder) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for ScalingBuilder {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct ScalingCalcPrivate(pub(crate) BaseObject);
impl std::ops::Deref for ScalingCalcPrivate {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for ScalingCalcPrivate {}
unsafe impl Interface for ScalingCalcPrivate {
const NAME: &'static str = "daqScalingCalcPrivate";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqScalingCalcPrivate_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl ScalingCalcPrivate {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { ScalingCalcPrivate(BaseObject(r)) }
}
impl std::fmt::Display for ScalingCalcPrivate {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&ScalingCalcPrivate> for Value {
fn from(value: &ScalingCalcPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl From<ScalingCalcPrivate> for Value {
fn from(value: ScalingCalcPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for ScalingCalcPrivate {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct SignalConfig(pub(crate) Signal);
impl std::ops::Deref for SignalConfig {
type Target = Signal;
fn deref(&self) -> &Signal { &self.0 }
}
impl crate::sealed::Sealed for SignalConfig {}
unsafe impl Interface for SignalConfig {
const NAME: &'static str = "daqSignalConfig";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqSignalConfig_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl SignalConfig {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { SignalConfig(Signal::__from_ref(r)) }
}
impl std::fmt::Display for SignalConfig {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&SignalConfig> for Value {
fn from(value: &SignalConfig) -> Value { Value::Object(value.to_base_object()) }
}
impl From<SignalConfig> for Value {
fn from(value: SignalConfig) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for SignalConfig {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct SignalEvents(pub(crate) BaseObject);
impl std::ops::Deref for SignalEvents {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for SignalEvents {}
unsafe impl Interface for SignalEvents {
const NAME: &'static str = "daqSignalEvents";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqSignalEvents_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl SignalEvents {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { SignalEvents(BaseObject(r)) }
}
impl std::fmt::Display for SignalEvents {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&SignalEvents> for Value {
fn from(value: &SignalEvents) -> Value { Value::Object(value.to_base_object()) }
}
impl From<SignalEvents> for Value {
fn from(value: SignalEvents) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for SignalEvents {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
#[repr(transparent)]
#[derive(Clone, Debug)]
pub struct SignalPrivate(pub(crate) BaseObject);
impl std::ops::Deref for SignalPrivate {
type Target = BaseObject;
fn deref(&self) -> &BaseObject { &self.0 }
}
impl crate::sealed::Sealed for SignalPrivate {}
unsafe impl Interface for SignalPrivate {
const NAME: &'static str = "daqSignalPrivate";
fn interface_id() -> Option<crate::IntfID> {
let mut id = crate::IntfID { Data1: 0, Data2: 0, Data3: 0, Data4: 0 };
unsafe { (crate::sys::api().daqSignalPrivate_getInterfaceId)(&mut id) };
Some(id)
}
unsafe fn from_raw(ptr: *mut std::ffi::c_void) -> Option<Self> {
Ref::from_owned(ptr).map(Self::__from_ref)
}
fn as_base_object(&self) -> &BaseObject { &self.0 }
}
impl SignalPrivate {
#[doc(hidden)]
pub(crate) fn __from_ref(r: Ref) -> Self { SignalPrivate(BaseObject(r)) }
}
impl std::fmt::Display for SignalPrivate {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
std::fmt::Display::fmt(self.as_base_object(), f)
}
}
impl From<&SignalPrivate> for Value {
fn from(value: &SignalPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl From<SignalPrivate> for Value {
fn from(value: SignalPrivate) -> Value { Value::Object(value.to_base_object()) }
}
impl crate::value::FromDaqOwned for SignalPrivate {
unsafe fn from_daq_owned(ptr: *mut std::ffi::c_void, op: &'static str) -> Result<Self> {
crate::value::cast_owned(ptr, op)
}
}
impl Allocator {
pub fn malloc() -> Result<Allocator> {
let mut __obj: *mut sys::daqAllocator = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqAllocator_createMallocAllocator)(&mut __obj) };
check(__code, "daqAllocator_createMallocAllocator")?;
Ok(unsafe { crate::marshal::require_object::<Allocator>(__obj as *mut _, "daqAllocator_createMallocAllocator") }?)
}
}
impl ConnectionInternal {
pub fn enqueue_last_descriptor(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqConnectionInternal_enqueueLastDescriptor)(self.as_raw() as *mut _) };
check(__code, "daqConnectionInternal_enqueueLastDescriptor")?;
Ok(())
}
}
impl Connection {
pub fn new(input_port: &InputPort, signal: &Signal, context: &Context) -> Result<Connection> {
let mut __obj: *mut sys::daqConnection = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_createConnection)(&mut __obj, input_port.as_raw() as *mut _, signal.as_raw() as *mut _, context.as_raw() as *mut _) };
check(__code, "daqConnection_createConnection")?;
Ok(unsafe { crate::marshal::require_object::<Connection>(__obj as *mut _, "daqConnection_createConnection") }?)
}
pub fn dequeue(&self) -> Result<Option<Packet>> {
let mut __packet: *mut sys::daqPacket = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_dequeue)(self.as_raw() as *mut _, &mut __packet) };
check(__code, "daqConnection_dequeue")?;
Ok(unsafe { crate::marshal::take_object::<Packet>(__packet as *mut _) })
}
pub fn dequeue_all(&self) -> Result<Vec<Packet>> {
let mut __packets: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_dequeueAll)(self.as_raw() as *mut _, &mut __packets) };
check(__code, "daqConnection_dequeueAll")?;
Ok(unsafe { crate::marshal::take_list::<Packet>(__packets as *mut _, "daqConnection_dequeueAll") }?)
}
pub fn enqueue(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqConnection_enqueue)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqConnection_enqueue")?;
Ok(())
}
pub fn enqueue_and_steal_ref(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqConnection_enqueueAndStealRef)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqConnection_enqueueAndStealRef")?;
Ok(())
}
pub fn enqueue_multiple(&self, packets: &[Packet]) -> Result<()> {
let __packets = crate::marshal::list_from_interfaces(packets)?;
let __code = unsafe { (crate::sys::api().daqConnection_enqueueMultiple)(self.as_raw() as *mut _, __packets.as_ptr() as *mut _) };
check(__code, "daqConnection_enqueueMultiple")?;
Ok(())
}
pub fn enqueue_multiple_and_steal_ref(&self, packets: &[Packet]) -> Result<()> {
let __packets = crate::marshal::list_from_interfaces(packets)?;
let __code = unsafe { (crate::sys::api().daqConnection_enqueueMultipleAndStealRef)(self.as_raw() as *mut _, __packets.as_ptr() as *mut _) };
check(__code, "daqConnection_enqueueMultipleAndStealRef")?;
Ok(())
}
pub fn enqueue_on_this_thread(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqConnection_enqueueOnThisThread)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqConnection_enqueueOnThisThread")?;
Ok(())
}
pub fn enqueue_with_scheduler(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqConnection_enqueueWithScheduler)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqConnection_enqueueWithScheduler")?;
Ok(())
}
pub fn available_samples(&self) -> Result<usize> {
let mut __samples: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqConnection_getAvailableSamples)(self.as_raw() as *mut _, &mut __samples) };
check(__code, "daqConnection_getAvailableSamples")?;
Ok(__samples)
}
pub fn input_port(&self) -> Result<Option<InputPort>> {
let mut __input_port: *mut sys::daqInputPort = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_getInputPort)(self.as_raw() as *mut _, &mut __input_port) };
check(__code, "daqConnection_getInputPort")?;
Ok(unsafe { crate::marshal::take_object::<InputPort>(__input_port as *mut _) })
}
pub fn packet_count(&self) -> Result<usize> {
let mut __packet_count: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqConnection_getPacketCount)(self.as_raw() as *mut _, &mut __packet_count) };
check(__code, "daqConnection_getPacketCount")?;
Ok(__packet_count)
}
pub fn samples_until_next_descriptor(&self) -> Result<usize> {
let mut __samples: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqConnection_getSamplesUntilNextDescriptor)(self.as_raw() as *mut _, &mut __samples) };
check(__code, "daqConnection_getSamplesUntilNextDescriptor")?;
Ok(__samples)
}
pub fn samples_until_next_event_packet(&self) -> Result<usize> {
let mut __samples: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqConnection_getSamplesUntilNextEventPacket)(self.as_raw() as *mut _, &mut __samples) };
check(__code, "daqConnection_getSamplesUntilNextEventPacket")?;
Ok(__samples)
}
pub fn samples_until_next_gap_packet(&self) -> Result<usize> {
let mut __samples: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqConnection_getSamplesUntilNextGapPacket)(self.as_raw() as *mut _, &mut __samples) };
check(__code, "daqConnection_getSamplesUntilNextGapPacket")?;
Ok(__samples)
}
pub fn signal(&self) -> Result<Option<Signal>> {
let mut __signal: *mut sys::daqSignal = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_getSignal)(self.as_raw() as *mut _, &mut __signal) };
check(__code, "daqConnection_getSignal")?;
Ok(unsafe { crate::marshal::take_object::<Signal>(__signal as *mut _) })
}
pub fn has_event_packet(&self) -> Result<bool> {
let mut __has_event_packet: u8 = 0;
let __code = unsafe { (crate::sys::api().daqConnection_hasEventPacket)(self.as_raw() as *mut _, &mut __has_event_packet) };
check(__code, "daqConnection_hasEventPacket")?;
Ok(__has_event_packet != 0)
}
pub fn has_gap_packet(&self) -> Result<bool> {
let mut __has_gap_packet: u8 = 0;
let __code = unsafe { (crate::sys::api().daqConnection_hasGapPacket)(self.as_raw() as *mut _, &mut __has_gap_packet) };
check(__code, "daqConnection_hasGapPacket")?;
Ok(__has_gap_packet != 0)
}
pub fn is_remote(&self) -> Result<bool> {
let mut __remote: u8 = 0;
let __code = unsafe { (crate::sys::api().daqConnection_isRemote)(self.as_raw() as *mut _, &mut __remote) };
check(__code, "daqConnection_isRemote")?;
Ok(__remote != 0)
}
pub fn peek(&self) -> Result<Option<Packet>> {
let mut __packet: *mut sys::daqPacket = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqConnection_peek)(self.as_raw() as *mut _, &mut __packet) };
check(__code, "daqConnection_peek")?;
Ok(unsafe { crate::marshal::take_object::<Packet>(__packet as *mut _) })
}
}
impl DataDescriptorBuilder {
pub fn build(&self) -> Result<Option<DataDescriptor>> {
let mut __data_descriptor: *mut sys::daqDataDescriptor = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_build)(self.as_raw() as *mut _, &mut __data_descriptor) };
check(__code, "daqDataDescriptorBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<DataDescriptor>(__data_descriptor as *mut _) })
}
pub fn new() -> Result<DataDescriptorBuilder> {
let mut __obj: *mut sys::daqDataDescriptorBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_createDataDescriptorBuilder)(&mut __obj) };
check(__code, "daqDataDescriptorBuilder_createDataDescriptorBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DataDescriptorBuilder>(__obj as *mut _, "daqDataDescriptorBuilder_createDataDescriptorBuilder") }?)
}
pub fn from_existing(descriptor_to_copy: &DataDescriptor) -> Result<DataDescriptorBuilder> {
let mut __obj: *mut sys::daqDataDescriptorBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_createDataDescriptorBuilderFromExisting)(&mut __obj, descriptor_to_copy.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_createDataDescriptorBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<DataDescriptorBuilder>(__obj as *mut _, "daqDataDescriptorBuilder_createDataDescriptorBuilderFromExisting") }?)
}
pub fn dimensions(&self) -> Result<Vec<Dimension>> {
let mut __dimensions: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getDimensions)(self.as_raw() as *mut _, &mut __dimensions) };
check(__code, "daqDataDescriptorBuilder_getDimensions")?;
Ok(unsafe { crate::marshal::take_list::<Dimension>(__dimensions as *mut _, "daqDataDescriptorBuilder_getDimensions") }?)
}
pub fn metadata(&self) -> Result<std::collections::HashMap<String, String>> {
let mut __metadata: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getMetadata)(self.as_raw() as *mut _, &mut __metadata) };
check(__code, "daqDataDescriptorBuilder_getMetadata")?;
Ok(unsafe { crate::marshal::take_dict::<String, String>(__metadata as *mut _, "daqDataDescriptorBuilder_getMetadata") }?)
}
pub fn name(&self) -> Result<String> {
let mut __name: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getName)(self.as_raw() as *mut _, &mut __name) };
check(__code, "daqDataDescriptorBuilder_getName")?;
Ok(unsafe { crate::marshal::take_string(__name) })
}
pub fn origin(&self) -> Result<String> {
let mut __origin: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getOrigin)(self.as_raw() as *mut _, &mut __origin) };
check(__code, "daqDataDescriptorBuilder_getOrigin")?;
Ok(unsafe { crate::marshal::take_string(__origin) })
}
pub fn post_scaling(&self) -> Result<Option<Scaling>> {
let mut __scaling: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getPostScaling)(self.as_raw() as *mut _, &mut __scaling) };
check(__code, "daqDataDescriptorBuilder_getPostScaling")?;
Ok(unsafe { crate::marshal::take_object::<Scaling>(__scaling as *mut _) })
}
pub fn reference_domain_info(&self) -> Result<Option<ReferenceDomainInfo>> {
let mut __reference_domain_info: *mut sys::daqReferenceDomainInfo = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getReferenceDomainInfo)(self.as_raw() as *mut _, &mut __reference_domain_info) };
check(__code, "daqDataDescriptorBuilder_getReferenceDomainInfo")?;
Ok(unsafe { crate::marshal::take_object::<ReferenceDomainInfo>(__reference_domain_info as *mut _) })
}
pub fn rule(&self) -> Result<Option<DataRule>> {
let mut __rule: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getRule)(self.as_raw() as *mut _, &mut __rule) };
check(__code, "daqDataDescriptorBuilder_getRule")?;
Ok(unsafe { crate::marshal::take_object::<DataRule>(__rule as *mut _) })
}
pub fn sample_type(&self) -> Result<SampleType> {
let mut __sample_type: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getSampleType)(self.as_raw() as *mut _, &mut __sample_type) };
check(__code, "daqDataDescriptorBuilder_getSampleType")?;
Ok(crate::marshal::enum_out(SampleType::from_raw(__sample_type), "daqDataDescriptorBuilder_getSampleType")?)
}
pub fn struct_fields(&self) -> Result<Vec<DataDescriptor>> {
let mut __struct_fields: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getStructFields)(self.as_raw() as *mut _, &mut __struct_fields) };
check(__code, "daqDataDescriptorBuilder_getStructFields")?;
Ok(unsafe { crate::marshal::take_list::<DataDescriptor>(__struct_fields as *mut _, "daqDataDescriptorBuilder_getStructFields") }?)
}
pub fn tick_resolution(&self) -> Result<Option<Ratio>> {
let mut __tick_resolution: *mut sys::daqRatio = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getTickResolution)(self.as_raw() as *mut _, &mut __tick_resolution) };
check(__code, "daqDataDescriptorBuilder_getTickResolution")?;
Ok(unsafe { crate::value::take_ratio(__tick_resolution, "daqDataDescriptorBuilder_getTickResolution") }?)
}
pub fn unit(&self) -> Result<Option<Unit>> {
let mut __unit: *mut sys::daqUnit = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getUnit)(self.as_raw() as *mut _, &mut __unit) };
check(__code, "daqDataDescriptorBuilder_getUnit")?;
Ok(unsafe { crate::marshal::take_object::<Unit>(__unit as *mut _) })
}
pub fn value_range(&self) -> Result<Option<Range>> {
let mut __range: *mut sys::daqRange = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_getValueRange)(self.as_raw() as *mut _, &mut __range) };
check(__code, "daqDataDescriptorBuilder_getValueRange")?;
Ok(unsafe { crate::marshal::take_object::<Range>(__range as *mut _) })
}
pub fn set_dimensions(&self, dimensions: &[Dimension]) -> Result<()> {
let __dimensions = crate::marshal::list_from_interfaces(dimensions)?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setDimensions)(self.as_raw() as *mut _, __dimensions.as_ptr() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setDimensions")?;
Ok(())
}
pub fn set_metadata(&self, metadata: impl Into<Value>) -> Result<()> {
let __metadata = crate::value::to_daq(&metadata.into())?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setMetadata)(self.as_raw() as *mut _, crate::value::opt_ref_ptr(&__metadata) as *mut _) };
check(__code, "daqDataDescriptorBuilder_setMetadata")?;
Ok(())
}
pub fn set_name(&self, name: &str) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setName)(self.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setName")?;
Ok(())
}
pub fn set_origin(&self, origin: &str) -> Result<()> {
let __origin = crate::marshal::make_string(origin)?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setOrigin)(self.as_raw() as *mut _, __origin.as_ptr() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setOrigin")?;
Ok(())
}
pub fn set_post_scaling(&self, scaling: &Scaling) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setPostScaling)(self.as_raw() as *mut _, scaling.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setPostScaling")?;
Ok(())
}
pub fn set_reference_domain_info(&self, reference_domain_info: &ReferenceDomainInfo) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setReferenceDomainInfo)(self.as_raw() as *mut _, reference_domain_info.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setReferenceDomainInfo")?;
Ok(())
}
pub fn set_rule(&self, rule: &DataRule) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setRule)(self.as_raw() as *mut _, rule.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setRule")?;
Ok(())
}
pub fn set_sample_type(&self, sample_type: SampleType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setSampleType)(self.as_raw() as *mut _, sample_type as u32) };
check(__code, "daqDataDescriptorBuilder_setSampleType")?;
Ok(())
}
pub fn set_struct_fields(&self, struct_fields: &[DataDescriptor]) -> Result<()> {
let __struct_fields = crate::marshal::list_from_interfaces(struct_fields)?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setStructFields)(self.as_raw() as *mut _, __struct_fields.as_ptr() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setStructFields")?;
Ok(())
}
pub fn set_tick_resolution(&self, tick_resolution: Ratio) -> Result<()> {
let __tick_resolution = crate::value::ratio_to_ref(tick_resolution)?;
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setTickResolution)(self.as_raw() as *mut _, __tick_resolution.as_ptr() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setTickResolution")?;
Ok(())
}
pub fn set_unit(&self, unit: &Unit) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setUnit)(self.as_raw() as *mut _, unit.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setUnit")?;
Ok(())
}
pub fn set_value_range(&self, range: &Range) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataDescriptorBuilder_setValueRange)(self.as_raw() as *mut _, range.as_raw() as *mut _) };
check(__code, "daqDataDescriptorBuilder_setValueRange")?;
Ok(())
}
}
impl DataDescriptor {
pub fn from_builder(builder: &DataDescriptorBuilder) -> Result<DataDescriptor> {
let mut __obj: *mut sys::daqDataDescriptor = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_createDataDescriptorFromBuilder)(&mut __obj, builder.as_raw() as *mut _) };
check(__code, "daqDataDescriptor_createDataDescriptorFromBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DataDescriptor>(__obj as *mut _, "daqDataDescriptor_createDataDescriptorFromBuilder") }?)
}
pub fn dimensions(&self) -> Result<Vec<Dimension>> {
let mut __dimensions: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getDimensions)(self.as_raw() as *mut _, &mut __dimensions) };
check(__code, "daqDataDescriptor_getDimensions")?;
Ok(unsafe { crate::marshal::take_list::<Dimension>(__dimensions as *mut _, "daqDataDescriptor_getDimensions") }?)
}
pub fn metadata(&self) -> Result<std::collections::HashMap<String, String>> {
let mut __metadata: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getMetadata)(self.as_raw() as *mut _, &mut __metadata) };
check(__code, "daqDataDescriptor_getMetadata")?;
Ok(unsafe { crate::marshal::take_dict::<String, String>(__metadata as *mut _, "daqDataDescriptor_getMetadata") }?)
}
pub fn name(&self) -> Result<String> {
let mut __name: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getName)(self.as_raw() as *mut _, &mut __name) };
check(__code, "daqDataDescriptor_getName")?;
Ok(unsafe { crate::marshal::take_string(__name) })
}
pub fn origin(&self) -> Result<String> {
let mut __origin: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getOrigin)(self.as_raw() as *mut _, &mut __origin) };
check(__code, "daqDataDescriptor_getOrigin")?;
Ok(unsafe { crate::marshal::take_string(__origin) })
}
pub fn post_scaling(&self) -> Result<Option<Scaling>> {
let mut __scaling: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getPostScaling)(self.as_raw() as *mut _, &mut __scaling) };
check(__code, "daqDataDescriptor_getPostScaling")?;
Ok(unsafe { crate::marshal::take_object::<Scaling>(__scaling as *mut _) })
}
pub fn raw_sample_size(&self) -> Result<usize> {
let mut __raw_sample_size: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getRawSampleSize)(self.as_raw() as *mut _, &mut __raw_sample_size) };
check(__code, "daqDataDescriptor_getRawSampleSize")?;
Ok(__raw_sample_size)
}
pub fn reference_domain_info(&self) -> Result<Option<ReferenceDomainInfo>> {
let mut __reference_domain_info: *mut sys::daqReferenceDomainInfo = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getReferenceDomainInfo)(self.as_raw() as *mut _, &mut __reference_domain_info) };
check(__code, "daqDataDescriptor_getReferenceDomainInfo")?;
Ok(unsafe { crate::marshal::take_object::<ReferenceDomainInfo>(__reference_domain_info as *mut _) })
}
pub fn rule(&self) -> Result<Option<DataRule>> {
let mut __rule: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getRule)(self.as_raw() as *mut _, &mut __rule) };
check(__code, "daqDataDescriptor_getRule")?;
Ok(unsafe { crate::marshal::take_object::<DataRule>(__rule as *mut _) })
}
pub fn sample_size(&self) -> Result<usize> {
let mut __sample_size: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getSampleSize)(self.as_raw() as *mut _, &mut __sample_size) };
check(__code, "daqDataDescriptor_getSampleSize")?;
Ok(__sample_size)
}
pub fn sample_type(&self) -> Result<SampleType> {
let mut __sample_type: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getSampleType)(self.as_raw() as *mut _, &mut __sample_type) };
check(__code, "daqDataDescriptor_getSampleType")?;
Ok(crate::marshal::enum_out(SampleType::from_raw(__sample_type), "daqDataDescriptor_getSampleType")?)
}
pub fn struct_fields(&self) -> Result<Vec<DataDescriptor>> {
let mut __struct_fields: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getStructFields)(self.as_raw() as *mut _, &mut __struct_fields) };
check(__code, "daqDataDescriptor_getStructFields")?;
Ok(unsafe { crate::marshal::take_list::<DataDescriptor>(__struct_fields as *mut _, "daqDataDescriptor_getStructFields") }?)
}
pub fn tick_resolution(&self) -> Result<Option<Ratio>> {
let mut __tick_resolution: *mut sys::daqRatio = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getTickResolution)(self.as_raw() as *mut _, &mut __tick_resolution) };
check(__code, "daqDataDescriptor_getTickResolution")?;
Ok(unsafe { crate::value::take_ratio(__tick_resolution, "daqDataDescriptor_getTickResolution") }?)
}
pub fn unit(&self) -> Result<Option<Unit>> {
let mut __unit: *mut sys::daqUnit = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getUnit)(self.as_raw() as *mut _, &mut __unit) };
check(__code, "daqDataDescriptor_getUnit")?;
Ok(unsafe { crate::marshal::take_object::<Unit>(__unit as *mut _) })
}
pub fn value_range(&self) -> Result<Option<Range>> {
let mut __range: *mut sys::daqRange = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataDescriptor_getValueRange)(self.as_raw() as *mut _, &mut __range) };
check(__code, "daqDataDescriptor_getValueRange")?;
Ok(unsafe { crate::marshal::take_object::<Range>(__range as *mut _) })
}
}
impl DataPacket {
pub fn new(descriptor: &DataDescriptor, sample_count: usize, offset: impl Into<Value>) -> Result<DataPacket> {
let __offset = crate::value::to_daq_number(&offset.into())?;
let mut __obj: *mut sys::daqDataPacket = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_createDataPacket)(&mut __obj, descriptor.as_raw() as *mut _, sample_count, crate::value::opt_ref_ptr(&__offset) as *mut _) };
check(__code, "daqDataPacket_createDataPacket")?;
Ok(unsafe { crate::marshal::require_object::<DataPacket>(__obj as *mut _, "daqDataPacket_createDataPacket") }?)
}
pub fn with_domain(domain_packet: &DataPacket, descriptor: &DataDescriptor, sample_count: usize, offset: impl Into<Value>) -> Result<DataPacket> {
let __offset = crate::value::to_daq_number(&offset.into())?;
let mut __obj: *mut sys::daqDataPacket = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_createDataPacketWithDomain)(&mut __obj, domain_packet.as_raw() as *mut _, descriptor.as_raw() as *mut _, sample_count, crate::value::opt_ref_ptr(&__offset) as *mut _) };
check(__code, "daqDataPacket_createDataPacketWithDomain")?;
Ok(unsafe { crate::marshal::require_object::<DataPacket>(__obj as *mut _, "daqDataPacket_createDataPacketWithDomain") }?)
}
pub fn data_descriptor(&self) -> Result<Option<DataDescriptor>> {
let mut __descriptor: *mut sys::daqDataDescriptor = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getDataDescriptor)(self.as_raw() as *mut _, &mut __descriptor) };
check(__code, "daqDataPacket_getDataDescriptor")?;
Ok(unsafe { crate::marshal::take_object::<DataDescriptor>(__descriptor as *mut _) })
}
pub fn data_size(&self) -> Result<usize> {
let mut __data_size: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDataPacket_getDataSize)(self.as_raw() as *mut _, &mut __data_size) };
check(__code, "daqDataPacket_getDataSize")?;
Ok(__data_size)
}
pub fn domain_packet(&self) -> Result<Option<DataPacket>> {
let mut __packet: *mut sys::daqDataPacket = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getDomainPacket)(self.as_raw() as *mut _, &mut __packet) };
check(__code, "daqDataPacket_getDomainPacket")?;
Ok(unsafe { crate::marshal::take_object::<DataPacket>(__packet as *mut _) })
}
pub fn last_value(&self) -> Result<Value> {
let mut __value: *mut sys::daqBaseObject = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getLastValue)(self.as_raw() as *mut _, &mut __value, std::ptr::null_mut()) };
check(__code, "daqDataPacket_getLastValue")?;
Ok(unsafe { crate::value::take_value(__value, "daqDataPacket_getLastValue") }?)
}
pub fn last_value_with(&self, type_manager: Option<&TypeManager>) -> Result<Value> {
let mut __value: *mut sys::daqBaseObject = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getLastValue)(self.as_raw() as *mut _, &mut __value, type_manager.map_or(std::ptr::null_mut(), |o| o.as_raw() as *mut _)) };
check(__code, "daqDataPacket_getLastValue")?;
Ok(unsafe { crate::value::take_value(__value, "daqDataPacket_getLastValue") }?)
}
pub fn offset(&self) -> Result<Option<f64>> {
let mut __offset: *mut sys::daqNumber = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getOffset)(self.as_raw() as *mut _, &mut __offset) };
check(__code, "daqDataPacket_getOffset")?;
Ok(unsafe { crate::value::take_number(__offset, "daqDataPacket_getOffset") }?)
}
pub fn packet_id(&self) -> Result<i64> {
let mut __packet_id: i64 = Default::default();
let __code = unsafe { (crate::sys::api().daqDataPacket_getPacketId)(self.as_raw() as *mut _, &mut __packet_id) };
check(__code, "daqDataPacket_getPacketId")?;
Ok(__packet_id)
}
pub fn raw_data_size(&self) -> Result<usize> {
let mut __raw_data_size: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDataPacket_getRawDataSize)(self.as_raw() as *mut _, &mut __raw_data_size) };
check(__code, "daqDataPacket_getRawDataSize")?;
Ok(__raw_data_size)
}
pub fn sample_count(&self) -> Result<usize> {
let mut __sample_count: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDataPacket_getSampleCount)(self.as_raw() as *mut _, &mut __sample_count) };
check(__code, "daqDataPacket_getSampleCount")?;
Ok(__sample_count)
}
pub fn value_by_index(&self, index: usize) -> Result<Value> {
let mut __value: *mut sys::daqBaseObject = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getValueByIndex)(self.as_raw() as *mut _, &mut __value, index, std::ptr::null_mut()) };
check(__code, "daqDataPacket_getValueByIndex")?;
Ok(unsafe { crate::value::take_value(__value, "daqDataPacket_getValueByIndex") }?)
}
pub fn value_by_index_with(&self, index: usize, type_manager: Option<&TypeManager>) -> Result<Value> {
let mut __value: *mut sys::daqBaseObject = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataPacket_getValueByIndex)(self.as_raw() as *mut _, &mut __value, index, type_manager.map_or(std::ptr::null_mut(), |o| o.as_raw() as *mut _)) };
check(__code, "daqDataPacket_getValueByIndex")?;
Ok(unsafe { crate::value::take_value(__value, "daqDataPacket_getValueByIndex") }?)
}
}
impl DataRuleBuilder {
pub fn add_parameter(&self, name: &str, parameter: impl Into<Value>) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __parameter = crate::value::to_daq(¶meter.into())?;
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_addParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _, crate::value::opt_ref_ptr(&__parameter) as *mut _) };
check(__code, "daqDataRuleBuilder_addParameter")?;
Ok(())
}
pub fn build(&self) -> Result<Option<DataRule>> {
let mut __data_rule: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_build)(self.as_raw() as *mut _, &mut __data_rule) };
check(__code, "daqDataRuleBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<DataRule>(__data_rule as *mut _) })
}
pub fn new() -> Result<DataRuleBuilder> {
let mut __obj: *mut sys::daqDataRuleBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_createDataRuleBuilder)(&mut __obj) };
check(__code, "daqDataRuleBuilder_createDataRuleBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DataRuleBuilder>(__obj as *mut _, "daqDataRuleBuilder_createDataRuleBuilder") }?)
}
pub fn from_existing(rule_to_copy: &DataRule) -> Result<DataRuleBuilder> {
let mut __obj: *mut sys::daqDataRuleBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_createDataRuleBuilderFromExisting)(&mut __obj, rule_to_copy.as_raw() as *mut _) };
check(__code, "daqDataRuleBuilder_createDataRuleBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<DataRuleBuilder>(__obj as *mut _, "daqDataRuleBuilder_createDataRuleBuilderFromExisting") }?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqDataRuleBuilder_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqDataRuleBuilder_getParameters") }?)
}
pub fn type_(&self) -> Result<DataRuleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_getType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqDataRuleBuilder_getType")?;
Ok(crate::marshal::enum_out(DataRuleType::from_raw(__type_), "daqDataRuleBuilder_getType")?)
}
pub fn remove_parameter(&self, name: &str) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_removeParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqDataRuleBuilder_removeParameter")?;
Ok(())
}
pub fn set_parameters(&self, parameters: impl Into<Value>) -> Result<()> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_setParameters)(self.as_raw() as *mut _, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqDataRuleBuilder_setParameters")?;
Ok(())
}
pub fn set_type(&self, type_: DataRuleType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDataRuleBuilder_setType)(self.as_raw() as *mut _, type_ as u32) };
check(__code, "daqDataRuleBuilder_setType")?;
Ok(())
}
}
impl DataRule {
pub fn constant() -> Result<DataRule> {
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createConstantDataRule)(&mut __obj) };
check(__code, "daqDataRule_createConstantDataRule")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createConstantDataRule") }?)
}
pub fn new(rule_type: DataRuleType, parameters: impl Into<Value>) -> Result<DataRule> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createDataRule)(&mut __obj, rule_type as u32, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqDataRule_createDataRule")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createDataRule") }?)
}
pub fn from_builder(builder: &DataRuleBuilder) -> Result<DataRule> {
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createDataRuleFromBuilder)(&mut __obj, builder.as_raw() as *mut _) };
check(__code, "daqDataRule_createDataRuleFromBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createDataRuleFromBuilder") }?)
}
pub fn explicit() -> Result<DataRule> {
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createExplicitDataRule)(&mut __obj) };
check(__code, "daqDataRule_createExplicitDataRule")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createExplicitDataRule") }?)
}
pub fn explicit_domain(min_expected_delta: impl Into<Value>, max_expected_delta: impl Into<Value>) -> Result<DataRule> {
let __min_expected_delta = crate::value::to_daq_number(&min_expected_delta.into())?;
let __max_expected_delta = crate::value::to_daq_number(&max_expected_delta.into())?;
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createExplicitDomainDataRule)(&mut __obj, crate::value::opt_ref_ptr(&__min_expected_delta) as *mut _, crate::value::opt_ref_ptr(&__max_expected_delta) as *mut _) };
check(__code, "daqDataRule_createExplicitDomainDataRule")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createExplicitDomainDataRule") }?)
}
pub fn linear(delta: impl Into<Value>, start: impl Into<Value>) -> Result<DataRule> {
let __delta = crate::value::to_daq_number(&delta.into())?;
let __start = crate::value::to_daq_number(&start.into())?;
let mut __obj: *mut sys::daqDataRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_createLinearDataRule)(&mut __obj, crate::value::opt_ref_ptr(&__delta) as *mut _, crate::value::opt_ref_ptr(&__start) as *mut _) };
check(__code, "daqDataRule_createLinearDataRule")?;
Ok(unsafe { crate::marshal::require_object::<DataRule>(__obj as *mut _, "daqDataRule_createLinearDataRule") }?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDataRule_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqDataRule_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqDataRule_getParameters") }?)
}
pub fn type_(&self) -> Result<DataRuleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDataRule_getType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqDataRule_getType")?;
Ok(crate::marshal::enum_out(DataRuleType::from_raw(__type_), "daqDataRule_getType")?)
}
}
impl DimensionBuilder {
pub fn build(&self) -> Result<Option<Dimension>> {
let mut __dimension: *mut sys::daqDimension = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_build)(self.as_raw() as *mut _, &mut __dimension) };
check(__code, "daqDimensionBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<Dimension>(__dimension as *mut _) })
}
pub fn new() -> Result<DimensionBuilder> {
let mut __obj: *mut sys::daqDimensionBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_createDimensionBuilder)(&mut __obj) };
check(__code, "daqDimensionBuilder_createDimensionBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DimensionBuilder>(__obj as *mut _, "daqDimensionBuilder_createDimensionBuilder") }?)
}
pub fn from_existing(dimension_to_copy: &Dimension) -> Result<DimensionBuilder> {
let mut __obj: *mut sys::daqDimensionBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_createDimensionBuilderFromExisting)(&mut __obj, dimension_to_copy.as_raw() as *mut _) };
check(__code, "daqDimensionBuilder_createDimensionBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<DimensionBuilder>(__obj as *mut _, "daqDimensionBuilder_createDimensionBuilderFromExisting") }?)
}
pub fn name(&self) -> Result<String> {
let mut __name: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_getName)(self.as_raw() as *mut _, &mut __name) };
check(__code, "daqDimensionBuilder_getName")?;
Ok(unsafe { crate::marshal::take_string(__name) })
}
pub fn rule(&self) -> Result<Option<DimensionRule>> {
let mut __rule: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_getRule)(self.as_raw() as *mut _, &mut __rule) };
check(__code, "daqDimensionBuilder_getRule")?;
Ok(unsafe { crate::marshal::take_object::<DimensionRule>(__rule as *mut _) })
}
pub fn unit(&self) -> Result<Option<Unit>> {
let mut __unit: *mut sys::daqUnit = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_getUnit)(self.as_raw() as *mut _, &mut __unit) };
check(__code, "daqDimensionBuilder_getUnit")?;
Ok(unsafe { crate::marshal::take_object::<Unit>(__unit as *mut _) })
}
pub fn set_name(&self, name: &str) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_setName)(self.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqDimensionBuilder_setName")?;
Ok(())
}
pub fn set_rule(&self, rule: &DimensionRule) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_setRule)(self.as_raw() as *mut _, rule.as_raw() as *mut _) };
check(__code, "daqDimensionBuilder_setRule")?;
Ok(())
}
pub fn set_unit(&self, unit: &Unit) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDimensionBuilder_setUnit)(self.as_raw() as *mut _, unit.as_raw() as *mut _) };
check(__code, "daqDimensionBuilder_setUnit")?;
Ok(())
}
}
impl DimensionRuleBuilder {
pub fn add_parameter(&self, name: &str, parameter: impl Into<Value>) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __parameter = crate::value::to_daq(¶meter.into())?;
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_addParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _, crate::value::opt_ref_ptr(&__parameter) as *mut _) };
check(__code, "daqDimensionRuleBuilder_addParameter")?;
Ok(())
}
pub fn build(&self) -> Result<Option<DimensionRule>> {
let mut __dimension_rule: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_build)(self.as_raw() as *mut _, &mut __dimension_rule) };
check(__code, "daqDimensionRuleBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<DimensionRule>(__dimension_rule as *mut _) })
}
pub fn new() -> Result<DimensionRuleBuilder> {
let mut __obj: *mut sys::daqDimensionRuleBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_createDimensionRuleBuilder)(&mut __obj) };
check(__code, "daqDimensionRuleBuilder_createDimensionRuleBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRuleBuilder>(__obj as *mut _, "daqDimensionRuleBuilder_createDimensionRuleBuilder") }?)
}
pub fn from_existing(rule_to_copy: &DimensionRule) -> Result<DimensionRuleBuilder> {
let mut __obj: *mut sys::daqDimensionRuleBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_createDimensionRuleBuilderFromExisting)(&mut __obj, rule_to_copy.as_raw() as *mut _) };
check(__code, "daqDimensionRuleBuilder_createDimensionRuleBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRuleBuilder>(__obj as *mut _, "daqDimensionRuleBuilder_createDimensionRuleBuilderFromExisting") }?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqDimensionRuleBuilder_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqDimensionRuleBuilder_getParameters") }?)
}
pub fn type_(&self) -> Result<DimensionRuleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_getType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqDimensionRuleBuilder_getType")?;
Ok(crate::marshal::enum_out(DimensionRuleType::from_raw(__type_), "daqDimensionRuleBuilder_getType")?)
}
pub fn remove_parameter(&self, name: &str) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_removeParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqDimensionRuleBuilder_removeParameter")?;
Ok(())
}
pub fn set_parameters(&self, parameters: impl Into<Value>) -> Result<()> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_setParameters)(self.as_raw() as *mut _, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqDimensionRuleBuilder_setParameters")?;
Ok(())
}
pub fn set_type(&self, type_: DimensionRuleType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqDimensionRuleBuilder_setType)(self.as_raw() as *mut _, type_ as u32) };
check(__code, "daqDimensionRuleBuilder_setType")?;
Ok(())
}
}
impl DimensionRule {
pub fn new(type_: DimensionRuleType, parameters: impl Into<Value>) -> Result<DimensionRule> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let mut __obj: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_createDimensionRule)(&mut __obj, type_ as u32, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqDimensionRule_createDimensionRule")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRule>(__obj as *mut _, "daqDimensionRule_createDimensionRule") }?)
}
pub fn from_builder(builder: &DimensionRuleBuilder) -> Result<DimensionRule> {
let mut __obj: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_createDimensionRuleFromBuilder)(&mut __obj, builder.as_raw() as *mut _) };
check(__code, "daqDimensionRule_createDimensionRuleFromBuilder")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRule>(__obj as *mut _, "daqDimensionRule_createDimensionRuleFromBuilder") }?)
}
pub fn linear(delta: impl Into<Value>, start: impl Into<Value>, size: usize) -> Result<DimensionRule> {
let __delta = crate::value::to_daq_number(&delta.into())?;
let __start = crate::value::to_daq_number(&start.into())?;
let mut __obj: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_createLinearDimensionRule)(&mut __obj, crate::value::opt_ref_ptr(&__delta) as *mut _, crate::value::opt_ref_ptr(&__start) as *mut _, size) };
check(__code, "daqDimensionRule_createLinearDimensionRule")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRule>(__obj as *mut _, "daqDimensionRule_createLinearDimensionRule") }?)
}
pub fn list(list: impl Into<Value>) -> Result<DimensionRule> {
let __list = crate::value::to_daq(&list.into())?;
let mut __obj: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_createListDimensionRule)(&mut __obj, crate::value::opt_ref_ptr(&__list) as *mut _) };
check(__code, "daqDimensionRule_createListDimensionRule")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRule>(__obj as *mut _, "daqDimensionRule_createListDimensionRule") }?)
}
pub fn logarithmic(delta: impl Into<Value>, start: impl Into<Value>, base: impl Into<Value>, size: usize) -> Result<DimensionRule> {
let __delta = crate::value::to_daq_number(&delta.into())?;
let __start = crate::value::to_daq_number(&start.into())?;
let __base = crate::value::to_daq_number(&base.into())?;
let mut __obj: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_createLogarithmicDimensionRule)(&mut __obj, crate::value::opt_ref_ptr(&__delta) as *mut _, crate::value::opt_ref_ptr(&__start) as *mut _, crate::value::opt_ref_ptr(&__base) as *mut _, size) };
check(__code, "daqDimensionRule_createLogarithmicDimensionRule")?;
Ok(unsafe { crate::marshal::require_object::<DimensionRule>(__obj as *mut _, "daqDimensionRule_createLogarithmicDimensionRule") }?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimensionRule_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqDimensionRule_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqDimensionRule_getParameters") }?)
}
pub fn type_(&self) -> Result<DimensionRuleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqDimensionRule_getType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqDimensionRule_getType")?;
Ok(crate::marshal::enum_out(DimensionRuleType::from_raw(__type_), "daqDimensionRule_getType")?)
}
}
impl Dimension {
pub fn new(rule: &DimensionRule, unit: &Unit, name: &str) -> Result<Dimension> {
let __name = crate::marshal::make_string(name)?;
let mut __obj: *mut sys::daqDimension = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_createDimension)(&mut __obj, rule.as_raw() as *mut _, unit.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqDimension_createDimension")?;
Ok(unsafe { crate::marshal::require_object::<Dimension>(__obj as *mut _, "daqDimension_createDimension") }?)
}
pub fn from_builder(builder: &DimensionBuilder) -> Result<Dimension> {
let mut __obj: *mut sys::daqDimension = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_createDimensionFromBuilder)(&mut __obj, builder.as_raw() as *mut _) };
check(__code, "daqDimension_createDimensionFromBuilder")?;
Ok(unsafe { crate::marshal::require_object::<Dimension>(__obj as *mut _, "daqDimension_createDimensionFromBuilder") }?)
}
pub fn labels(&self) -> Result<Vec<Value>> {
let mut __labels: *mut sys::daqList = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_getLabels)(self.as_raw() as *mut _, &mut __labels) };
check(__code, "daqDimension_getLabels")?;
Ok(unsafe { crate::marshal::take_list::<Value>(__labels as *mut _, "daqDimension_getLabels") }?)
}
pub fn name(&self) -> Result<String> {
let mut __name: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_getName)(self.as_raw() as *mut _, &mut __name) };
check(__code, "daqDimension_getName")?;
Ok(unsafe { crate::marshal::take_string(__name) })
}
pub fn rule(&self) -> Result<Option<DimensionRule>> {
let mut __rule: *mut sys::daqDimensionRule = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_getRule)(self.as_raw() as *mut _, &mut __rule) };
check(__code, "daqDimension_getRule")?;
Ok(unsafe { crate::marshal::take_object::<DimensionRule>(__rule as *mut _) })
}
pub fn size(&self) -> Result<usize> {
let mut __size: usize = Default::default();
let __code = unsafe { (crate::sys::api().daqDimension_getSize)(self.as_raw() as *mut _, &mut __size) };
check(__code, "daqDimension_getSize")?;
Ok(__size)
}
pub fn unit(&self) -> Result<Option<Unit>> {
let mut __unit: *mut sys::daqUnit = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqDimension_getUnit)(self.as_raw() as *mut _, &mut __unit) };
check(__code, "daqDimension_getUnit")?;
Ok(unsafe { crate::marshal::take_object::<Unit>(__unit as *mut _) })
}
}
impl InputPortPrivate {
pub fn connect_signal_scheduler_notification(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqInputPortPrivate_connectSignalSchedulerNotification)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqInputPortPrivate_connectSignalSchedulerNotification")?;
Ok(())
}
pub fn disconnect_without_signal_notification(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqInputPortPrivate_disconnectWithoutSignalNotification)(self.as_raw() as *mut _) };
check(__code, "daqInputPortPrivate_disconnectWithoutSignalNotification")?;
Ok(())
}
}
impl PacketDestructCallback {
pub fn on_packet_destroyed(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqPacketDestructCallback_onPacketDestroyed)(self.as_raw() as *mut _) };
check(__code, "daqPacketDestructCallback_onPacketDestroyed")?;
Ok(())
}
}
impl Range {
pub fn new(low_value: impl Into<Value>, high_value: impl Into<Value>) -> Result<Range> {
let __low_value = crate::value::to_daq_number(&low_value.into())?;
let __high_value = crate::value::to_daq_number(&high_value.into())?;
let mut __obj: *mut sys::daqRange = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqRange_createRange)(&mut __obj, crate::value::opt_ref_ptr(&__low_value) as *mut _, crate::value::opt_ref_ptr(&__high_value) as *mut _) };
check(__code, "daqRange_createRange")?;
Ok(unsafe { crate::marshal::require_object::<Range>(__obj as *mut _, "daqRange_createRange") }?)
}
pub fn high_value(&self) -> Result<Option<f64>> {
let mut __value: *mut sys::daqNumber = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqRange_getHighValue)(self.as_raw() as *mut _, &mut __value) };
check(__code, "daqRange_getHighValue")?;
Ok(unsafe { crate::value::take_number(__value, "daqRange_getHighValue") }?)
}
pub fn low_value(&self) -> Result<Option<f64>> {
let mut __value: *mut sys::daqNumber = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqRange_getLowValue)(self.as_raw() as *mut _, &mut __value) };
check(__code, "daqRange_getLowValue")?;
Ok(unsafe { crate::value::take_number(__value, "daqRange_getLowValue") }?)
}
}
impl ReferenceDomainInfoBuilder {
pub fn build(&self) -> Result<Option<ReferenceDomainInfo>> {
let mut __reference_domain_info: *mut sys::daqReferenceDomainInfo = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_build)(self.as_raw() as *mut _, &mut __reference_domain_info) };
check(__code, "daqReferenceDomainInfoBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<ReferenceDomainInfo>(__reference_domain_info as *mut _) })
}
pub fn new() -> Result<ReferenceDomainInfoBuilder> {
let mut __obj: *mut sys::daqReferenceDomainInfoBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilder)(&mut __obj) };
check(__code, "daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilder")?;
Ok(unsafe { crate::marshal::require_object::<ReferenceDomainInfoBuilder>(__obj as *mut _, "daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilder") }?)
}
pub fn from_existing(reference_domain_info_to_copy: &ReferenceDomainInfo) -> Result<ReferenceDomainInfoBuilder> {
let mut __obj: *mut sys::daqReferenceDomainInfoBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilderFromExisting)(&mut __obj, reference_domain_info_to_copy.as_raw() as *mut _) };
check(__code, "daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<ReferenceDomainInfoBuilder>(__obj as *mut _, "daqReferenceDomainInfoBuilder_createReferenceDomainInfoBuilderFromExisting") }?)
}
pub fn reference_domain_id(&self) -> Result<String> {
let mut __reference_domain_id: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_getReferenceDomainId)(self.as_raw() as *mut _, &mut __reference_domain_id) };
check(__code, "daqReferenceDomainInfoBuilder_getReferenceDomainId")?;
Ok(unsafe { crate::marshal::take_string(__reference_domain_id) })
}
pub fn reference_domain_offset(&self) -> Result<Option<i64>> {
let mut __reference_domain_offset: *mut sys::daqInteger = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_getReferenceDomainOffset)(self.as_raw() as *mut _, &mut __reference_domain_offset) };
check(__code, "daqReferenceDomainInfoBuilder_getReferenceDomainOffset")?;
Ok(unsafe { crate::value::take_boxed_int(__reference_domain_offset, "daqReferenceDomainInfoBuilder_getReferenceDomainOffset") }?)
}
pub fn reference_time_protocol(&self) -> Result<TimeProtocol> {
let mut __reference_time_protocol: u32 = 0;
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_getReferenceTimeProtocol)(self.as_raw() as *mut _, &mut __reference_time_protocol) };
check(__code, "daqReferenceDomainInfoBuilder_getReferenceTimeProtocol")?;
Ok(crate::marshal::enum_out(TimeProtocol::from_raw(__reference_time_protocol), "daqReferenceDomainInfoBuilder_getReferenceTimeProtocol")?)
}
pub fn uses_offset(&self) -> Result<UsesOffset> {
let mut __uses_offset: u32 = 0;
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_getUsesOffset)(self.as_raw() as *mut _, &mut __uses_offset) };
check(__code, "daqReferenceDomainInfoBuilder_getUsesOffset")?;
Ok(crate::marshal::enum_out(UsesOffset::from_raw(__uses_offset), "daqReferenceDomainInfoBuilder_getUsesOffset")?)
}
pub fn set_reference_domain_id(&self, reference_domain_id: &str) -> Result<()> {
let __reference_domain_id = crate::marshal::make_string(reference_domain_id)?;
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_setReferenceDomainId)(self.as_raw() as *mut _, __reference_domain_id.as_ptr() as *mut _) };
check(__code, "daqReferenceDomainInfoBuilder_setReferenceDomainId")?;
Ok(())
}
pub fn set_reference_domain_offset(&self, reference_domain_offset: i64) -> Result<()> {
let __reference_domain_offset = crate::value::int_to_ref(reference_domain_offset)?;
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_setReferenceDomainOffset)(self.as_raw() as *mut _, __reference_domain_offset.as_ptr() as *mut _) };
check(__code, "daqReferenceDomainInfoBuilder_setReferenceDomainOffset")?;
Ok(())
}
pub fn set_reference_time_protocol(&self, reference_time_protocol: TimeProtocol) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_setReferenceTimeProtocol)(self.as_raw() as *mut _, reference_time_protocol as u32) };
check(__code, "daqReferenceDomainInfoBuilder_setReferenceTimeProtocol")?;
Ok(())
}
pub fn set_uses_offset(&self, uses_offset: UsesOffset) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqReferenceDomainInfoBuilder_setUsesOffset)(self.as_raw() as *mut _, uses_offset as u32) };
check(__code, "daqReferenceDomainInfoBuilder_setUsesOffset")?;
Ok(())
}
}
impl ReusableDataPacket {
pub fn reuse(&self, new_descriptor: &DataDescriptor, new_sample_count: usize, new_offset: impl Into<Value>, new_domain_packet: &DataPacket, can_realloc_memory: bool) -> Result<bool> {
let __new_offset = crate::value::to_daq_number(&new_offset.into())?;
let mut __success: u8 = 0;
let __code = unsafe { (crate::sys::api().daqReusableDataPacket_reuse)(self.as_raw() as *mut _, new_descriptor.as_raw() as *mut _, new_sample_count, crate::value::opt_ref_ptr(&__new_offset) as *mut _, new_domain_packet.as_raw() as *mut _, u8::from(can_realloc_memory), &mut __success) };
check(__code, "daqReusableDataPacket_reuse")?;
Ok(__success != 0)
}
}
impl RulePrivate {
pub fn verify_parameters(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqRulePrivate_verifyParameters)(self.as_raw() as *mut _) };
check(__code, "daqRulePrivate_verifyParameters")?;
Ok(())
}
}
impl ScalingBuilder {
pub fn add_parameter(&self, name: &str, parameter: impl Into<Value>) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __parameter = crate::value::to_daq(¶meter.into())?;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_addParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _, crate::value::opt_ref_ptr(&__parameter) as *mut _) };
check(__code, "daqScalingBuilder_addParameter")?;
Ok(())
}
pub fn build(&self) -> Result<Option<Scaling>> {
let mut __scaling: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScalingBuilder_build)(self.as_raw() as *mut _, &mut __scaling) };
check(__code, "daqScalingBuilder_build")?;
Ok(unsafe { crate::marshal::take_object::<Scaling>(__scaling as *mut _) })
}
pub fn new() -> Result<ScalingBuilder> {
let mut __obj: *mut sys::daqScalingBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScalingBuilder_createScalingBuilder)(&mut __obj) };
check(__code, "daqScalingBuilder_createScalingBuilder")?;
Ok(unsafe { crate::marshal::require_object::<ScalingBuilder>(__obj as *mut _, "daqScalingBuilder_createScalingBuilder") }?)
}
pub fn from_existing(scaling_to_copy: &Scaling) -> Result<ScalingBuilder> {
let mut __obj: *mut sys::daqScalingBuilder = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScalingBuilder_createScalingBuilderFromExisting)(&mut __obj, scaling_to_copy.as_raw() as *mut _) };
check(__code, "daqScalingBuilder_createScalingBuilderFromExisting")?;
Ok(unsafe { crate::marshal::require_object::<ScalingBuilder>(__obj as *mut _, "daqScalingBuilder_createScalingBuilderFromExisting") }?)
}
pub fn input_data_type(&self) -> Result<SampleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_getInputDataType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScalingBuilder_getInputDataType")?;
Ok(crate::marshal::enum_out(SampleType::from_raw(__type_), "daqScalingBuilder_getInputDataType")?)
}
pub fn output_data_type(&self) -> Result<ScaledSampleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_getOutputDataType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScalingBuilder_getOutputDataType")?;
Ok(crate::marshal::enum_out(ScaledSampleType::from_raw(__type_), "daqScalingBuilder_getOutputDataType")?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScalingBuilder_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqScalingBuilder_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqScalingBuilder_getParameters") }?)
}
pub fn scaling_type(&self) -> Result<ScalingType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_getScalingType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScalingBuilder_getScalingType")?;
Ok(crate::marshal::enum_out(ScalingType::from_raw(__type_), "daqScalingBuilder_getScalingType")?)
}
pub fn remove_parameter(&self, name: &str) -> Result<()> {
let __name = crate::marshal::make_string(name)?;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_removeParameter)(self.as_raw() as *mut _, __name.as_ptr() as *mut _) };
check(__code, "daqScalingBuilder_removeParameter")?;
Ok(())
}
pub fn set_input_data_type(&self, type_: SampleType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqScalingBuilder_setInputDataType)(self.as_raw() as *mut _, type_ as u32) };
check(__code, "daqScalingBuilder_setInputDataType")?;
Ok(())
}
pub fn set_output_data_type(&self, type_: ScaledSampleType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqScalingBuilder_setOutputDataType)(self.as_raw() as *mut _, type_ as u32) };
check(__code, "daqScalingBuilder_setOutputDataType")?;
Ok(())
}
pub fn set_parameters(&self, parameters: impl Into<Value>) -> Result<()> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let __code = unsafe { (crate::sys::api().daqScalingBuilder_setParameters)(self.as_raw() as *mut _, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqScalingBuilder_setParameters")?;
Ok(())
}
pub fn set_scaling_type(&self, type_: ScalingType) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqScalingBuilder_setScalingType)(self.as_raw() as *mut _, type_ as u32) };
check(__code, "daqScalingBuilder_setScalingType")?;
Ok(())
}
}
impl Scaling {
pub fn linear(scale: impl Into<Value>, offset: impl Into<Value>, input_data_type: SampleType, output_data_type: ScaledSampleType) -> Result<Scaling> {
let __scale = crate::value::to_daq_number(&scale.into())?;
let __offset = crate::value::to_daq_number(&offset.into())?;
let mut __obj: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScaling_createLinearScaling)(&mut __obj, crate::value::opt_ref_ptr(&__scale) as *mut _, crate::value::opt_ref_ptr(&__offset) as *mut _, input_data_type as u32, output_data_type as u32) };
check(__code, "daqScaling_createLinearScaling")?;
Ok(unsafe { crate::marshal::require_object::<Scaling>(__obj as *mut _, "daqScaling_createLinearScaling") }?)
}
pub fn new(input_data_type: SampleType, output_data_type: ScaledSampleType, scaling_type: ScalingType, parameters: impl Into<Value>) -> Result<Scaling> {
let __parameters = crate::value::to_daq(¶meters.into())?;
let mut __obj: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScaling_createScaling)(&mut __obj, input_data_type as u32, output_data_type as u32, scaling_type as u32, crate::value::opt_ref_ptr(&__parameters) as *mut _) };
check(__code, "daqScaling_createScaling")?;
Ok(unsafe { crate::marshal::require_object::<Scaling>(__obj as *mut _, "daqScaling_createScaling") }?)
}
pub fn from_builder(builder: &ScalingBuilder) -> Result<Scaling> {
let mut __obj: *mut sys::daqScaling = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScaling_createScalingFromBuilder)(&mut __obj, builder.as_raw() as *mut _) };
check(__code, "daqScaling_createScalingFromBuilder")?;
Ok(unsafe { crate::marshal::require_object::<Scaling>(__obj as *mut _, "daqScaling_createScalingFromBuilder") }?)
}
pub fn input_sample_type(&self) -> Result<SampleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScaling_getInputSampleType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScaling_getInputSampleType")?;
Ok(crate::marshal::enum_out(SampleType::from_raw(__type_), "daqScaling_getInputSampleType")?)
}
pub fn output_sample_type(&self) -> Result<ScaledSampleType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScaling_getOutputSampleType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScaling_getOutputSampleType")?;
Ok(crate::marshal::enum_out(ScaledSampleType::from_raw(__type_), "daqScaling_getOutputSampleType")?)
}
pub fn parameters(&self) -> Result<std::collections::HashMap<String, Value>> {
let mut __parameters: *mut sys::daqDict = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqScaling_getParameters)(self.as_raw() as *mut _, &mut __parameters) };
check(__code, "daqScaling_getParameters")?;
Ok(unsafe { crate::marshal::take_dict::<String, Value>(__parameters as *mut _, "daqScaling_getParameters") }?)
}
pub fn type_(&self) -> Result<ScalingType> {
let mut __type_: u32 = 0;
let __code = unsafe { (crate::sys::api().daqScaling_getType)(self.as_raw() as *mut _, &mut __type_) };
check(__code, "daqScaling_getType")?;
Ok(crate::marshal::enum_out(ScalingType::from_raw(__type_), "daqScaling_getType")?)
}
}
impl SignalConfig {
pub fn add_related_signal(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_addRelatedSignal)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqSignalConfig_addRelatedSignal")?;
Ok(())
}
pub fn clear_related_signals(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_clearRelatedSignals)(self.as_raw() as *mut _) };
check(__code, "daqSignalConfig_clearRelatedSignals")?;
Ok(())
}
pub fn signal(context: &Context, parent: Option<&Component>, local_id: &str, class_name: Option<&str>) -> Result<SignalConfig> {
let __local_id = crate::marshal::make_string(local_id)?;
let __class_name = match class_name { Some(s) => Some(crate::marshal::make_string(s)?), None => None };
let mut __obj: *mut sys::daqSignalConfig = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqSignalConfig_createSignal)(&mut __obj, context.as_raw() as *mut _, parent.map_or(std::ptr::null_mut(), |o| o.as_raw() as *mut _), __local_id.as_ptr() as *mut _, __class_name.as_ref().map_or(std::ptr::null_mut(), |r| r.as_ptr()) as *mut _) };
check(__code, "daqSignalConfig_createSignal")?;
Ok(unsafe { crate::marshal::require_object::<SignalConfig>(__obj as *mut _, "daqSignalConfig_createSignal") }?)
}
pub fn with_descriptor(context: &Context, descriptor: &DataDescriptor, parent: Option<&Component>, local_id: &str, class_name: Option<&str>) -> Result<SignalConfig> {
let __local_id = crate::marshal::make_string(local_id)?;
let __class_name = match class_name { Some(s) => Some(crate::marshal::make_string(s)?), None => None };
let mut __obj: *mut sys::daqSignalConfig = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqSignalConfig_createSignalWithDescriptor)(&mut __obj, context.as_raw() as *mut _, descriptor.as_raw() as *mut _, parent.map_or(std::ptr::null_mut(), |o| o.as_raw() as *mut _), __local_id.as_ptr() as *mut _, __class_name.as_ref().map_or(std::ptr::null_mut(), |r| r.as_ptr()) as *mut _) };
check(__code, "daqSignalConfig_createSignalWithDescriptor")?;
Ok(unsafe { crate::marshal::require_object::<SignalConfig>(__obj as *mut _, "daqSignalConfig_createSignalWithDescriptor") }?)
}
pub fn remove_related_signal(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_removeRelatedSignal)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqSignalConfig_removeRelatedSignal")?;
Ok(())
}
pub fn send_packet(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_sendPacket)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqSignalConfig_sendPacket")?;
Ok(())
}
pub fn send_packet_and_steal_ref(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_sendPacketAndStealRef)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqSignalConfig_sendPacketAndStealRef")?;
Ok(())
}
pub fn send_packets(&self, packets: &[Packet]) -> Result<()> {
let __packets = crate::marshal::list_from_interfaces(packets)?;
let __code = unsafe { (crate::sys::api().daqSignalConfig_sendPackets)(self.as_raw() as *mut _, __packets.as_ptr() as *mut _) };
check(__code, "daqSignalConfig_sendPackets")?;
Ok(())
}
pub fn send_packets_and_steal_ref(&self, packets: &[Packet]) -> Result<()> {
let __packets = crate::marshal::list_from_interfaces(packets)?;
let __code = unsafe { (crate::sys::api().daqSignalConfig_sendPacketsAndStealRef)(self.as_raw() as *mut _, __packets.as_ptr() as *mut _) };
check(__code, "daqSignalConfig_sendPacketsAndStealRef")?;
Ok(())
}
pub fn set_descriptor(&self, descriptor: &DataDescriptor) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_setDescriptor)(self.as_raw() as *mut _, descriptor.as_raw() as *mut _) };
check(__code, "daqSignalConfig_setDescriptor")?;
Ok(())
}
pub fn set_domain_signal(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalConfig_setDomainSignal)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqSignalConfig_setDomainSignal")?;
Ok(())
}
pub fn set_last_value(&self, last_value: impl Into<Value>) -> Result<()> {
let __last_value = crate::value::to_daq(&last_value.into())?;
let __code = unsafe { (crate::sys::api().daqSignalConfig_setLastValue)(self.as_raw() as *mut _, crate::value::opt_ref_ptr(&__last_value) as *mut _) };
check(__code, "daqSignalConfig_setLastValue")?;
Ok(())
}
pub fn set_related_signals(&self, signals: &[Signal]) -> Result<()> {
let __signals = crate::marshal::list_from_interfaces(signals)?;
let __code = unsafe { (crate::sys::api().daqSignalConfig_setRelatedSignals)(self.as_raw() as *mut _, __signals.as_ptr() as *mut _) };
check(__code, "daqSignalConfig_setRelatedSignals")?;
Ok(())
}
}
impl SignalEvents {
pub fn domain_signal_reference_removed(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalEvents_domainSignalReferenceRemoved)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqSignalEvents_domainSignalReferenceRemoved")?;
Ok(())
}
pub fn domain_signal_reference_set(&self, signal: &Signal) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalEvents_domainSignalReferenceSet)(self.as_raw() as *mut _, signal.as_raw() as *mut _) };
check(__code, "daqSignalEvents_domainSignalReferenceSet")?;
Ok(())
}
pub fn listener_connected(&self, connection: &Connection) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalEvents_listenerConnected)(self.as_raw() as *mut _, connection.as_raw() as *mut _) };
check(__code, "daqSignalEvents_listenerConnected")?;
Ok(())
}
pub fn listener_connected_scheduled(&self, connection: &Connection) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalEvents_listenerConnectedScheduled)(self.as_raw() as *mut _, connection.as_raw() as *mut _) };
check(__code, "daqSignalEvents_listenerConnectedScheduled")?;
Ok(())
}
pub fn listener_disconnected(&self, connection: &Connection) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalEvents_listenerDisconnected)(self.as_raw() as *mut _, connection.as_raw() as *mut _) };
check(__code, "daqSignalEvents_listenerDisconnected")?;
Ok(())
}
}
impl SignalPrivate {
pub fn clear_domain_signal_without_notification(&self) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalPrivate_clearDomainSignalWithoutNotification)(self.as_raw() as *mut _) };
check(__code, "daqSignalPrivate_clearDomainSignalWithoutNotification")?;
Ok(())
}
pub fn enable_keep_last_value(&self, enabled: bool) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalPrivate_enableKeepLastValue)(self.as_raw() as *mut _, u8::from(enabled)) };
check(__code, "daqSignalPrivate_enableKeepLastValue")?;
Ok(())
}
pub fn keep_last_value(&self) -> Result<bool> {
let mut __keep_last_value: u8 = 0;
let __code = unsafe { (crate::sys::api().daqSignalPrivate_getKeepLastValue)(self.as_raw() as *mut _, &mut __keep_last_value) };
check(__code, "daqSignalPrivate_getKeepLastValue")?;
Ok(__keep_last_value != 0)
}
pub fn signal_serialize_id(&self) -> Result<String> {
let mut __serialize_id: *mut sys::daqString = std::ptr::null_mut();
let __code = unsafe { (crate::sys::api().daqSignalPrivate_getSignalSerializeId)(self.as_raw() as *mut _, &mut __serialize_id) };
check(__code, "daqSignalPrivate_getSignalSerializeId")?;
Ok(unsafe { crate::marshal::take_string(__serialize_id) })
}
pub fn send_packet_recursive_lock(&self, packet: &Packet) -> Result<()> {
let __code = unsafe { (crate::sys::api().daqSignalPrivate_sendPacketRecursiveLock)(self.as_raw() as *mut _, packet.as_raw() as *mut _) };
check(__code, "daqSignalPrivate_sendPacketRecursiveLock")?;
Ok(())
}
}