ILINKDATA

Struct ILINKDATA 

Source
#[repr(C)]
pub struct ILINKDATA {
Show 53 fields pub time: UINT32, pub version: UINT32, pub samrate: UINT16, pub samdiv: UINT16, pub prescaler: UINT16, pub vprescaler: UINT16, pub pprescaler: UINT16, pub hprescaler: UINT16, pub sample_data: UINT16, pub event_data: UINT16, pub event_types: UINT16, pub in_sample_block: byte, pub in_event_block: byte, pub have_left_eye: byte, pub have_right_eye: byte, pub last_data_gap_types: UINT16, pub last_data_buffer_type: UINT16, pub last_data_buffer_size: UINT16, pub control_read: UINT16, pub first_in_block: UINT16, pub last_data_item_time: UINT32, pub last_data_item_type: UINT16, pub last_data_item_contents: UINT16, pub last_data_item: ALL_DATA, pub block_number: UINT32, pub block_sample: UINT32, pub block_event: UINT32, pub last_resx: UINT16, pub last_resy: UINT16, pub last_pupil: [UINT16; 2], pub last_status: UINT16, pub queued_samples: UINT16, pub queued_events: UINT16, pub queue_size: UINT16, pub queue_free: UINT16, pub last_rcve_time: UINT32, pub samples_on: byte, pub events_on: byte, pub packet_flags: UINT16, pub link_flags: UINT16, pub state_flags: UINT16, pub link_dstatus: byte, pub link_pendcmd: byte, pub reserved: UINT16, pub our_name: [c_char; 40], pub our_address: ELINKADDR, pub eye_name: [c_char; 40], pub eye_address: ELINKADDR, pub ebroadcast_address: ELINKADDR, pub rbroadcast_address: ELINKADDR, pub polling_remotes: UINT16, pub poll_responses: UINT16, pub nodes: [ELINKNODE; 4],
}
Expand description

\brief Class to represent tracker status.

Class to represent tracker status information such as time stamps, flags, tracker addresses and so on.

Fields§

§time: UINT32

< time of last control event

§version: UINT32

< structure version

§samrate: UINT16

< 10*sample rate (0 if no samples, 1 if nonconstant)

§samdiv: UINT16

< sample “divisor” (min msec between samples)

§prescaler: UINT16

< amount to divide gaze x,y,res by

§vprescaler: UINT16

< amount to divide velocity by

§pprescaler: UINT16

< pupil prescale (1 if area, greater if diameter)

§hprescaler: UINT16

< head-distance prescale (to mm)

§sample_data: UINT16

< 0 if off, else all flags

§event_data: UINT16

< 0 if off, else all flags

§event_types: UINT16

< 0 if off, else event-type flags

§in_sample_block: byte

< set if in block with samples

§in_event_block: byte

< set if in block with events

§have_left_eye: byte

< set if any left-eye data expected

§have_right_eye: byte

< set if any right-eye data expected

§last_data_gap_types: UINT16

< flags what we lost before last item

§last_data_buffer_type: UINT16

< buffer-type code

§last_data_buffer_size: UINT16

< buffer size of last item

§control_read: UINT16

< set if control event read with last data

§first_in_block: UINT16

< set if control event started new block

§last_data_item_time: UINT32

< time field of item

§last_data_item_type: UINT16

< type: 100=sample, 0=none, else event type

§last_data_item_contents: UINT16

< content: <read> (IEVENT), <flags> (ISAMPLE)

§last_data_item: ALL_DATA

< buffer containing last item

§block_number: UINT32

< block in file

§block_sample: UINT32

< samples read in block so far

§block_event: UINT32

< events (excl. control read in block

§last_resx: UINT16

< updated by samples only

§last_resy: UINT16

< updated by samples only

§last_pupil: [UINT16; 2]

< updated by samples only

§last_status: UINT16

< updated by samples, events

§queued_samples: UINT16

< number of items in queue

§queued_events: UINT16

< includes control events

§queue_size: UINT16

< total queue buffer size

§queue_free: UINT16

< unused bytes in queue

§last_rcve_time: UINT32

< time tracker last sent packet

§samples_on: byte

< data type rcve enable (switch)

§events_on: byte§packet_flags: UINT16

< status flags from data packet

§link_flags: UINT16

< status flags from link packet header

§state_flags: UINT16

< tracker error state flags

§link_dstatus: byte

< tracker data output state

§link_pendcmd: byte

< tracker commands pending

§reserved: UINT16

< 0 for EyeLink I or original EyeLink API DLL. EYELINK II ONLY: MSB set if read crmode<<8 + file_filter<<4 + link_filter crmode = 0 if pupil, else pupil-CR file_filter, link_filter: 0, 1, or 2 for level of heuristic filter applied

§our_name: [c_char; 40]

< a name for our machine

§our_address: ELINKADDR§eye_name: [c_char; 40]

< name of tracker connected to

§eye_address: ELINKADDR§ebroadcast_address: ELINKADDR

< Broadcast address for eye trackers

§rbroadcast_address: ELINKADDR

< Broadcast address for remotes

§polling_remotes: UINT16

< 1 if polling remotes, else polling trackers

§poll_responses: UINT16

< total nodes responding to polling

§nodes: [ELINKNODE; 4]

< data on nodes

Trait Implementations§

Source§

impl Clone for ILINKDATA

Source§

fn clone(&self) -> ILINKDATA

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for ILINKDATA

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Copy for ILINKDATA

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.