Type Alias ecx_contextt

Source
pub type ecx_contextt = ecx_context;
Expand description

Context structure , referenced by all ecx functions

Aliased Type§

struct ecx_contextt {
Show 22 fields pub port: *mut ecx_portt, pub slavelist: *mut ec_slave, pub slavecount: *mut i32, pub maxslave: i32, pub grouplist: *mut ec_group, pub maxgroup: i32, pub esibuf: *mut u8, pub esimap: *mut u32, pub esislave: u16, pub elist: *mut [u32; 456], pub idxstack: *mut [u32; 37], pub ecaterror: *mut u8, pub DCtime: *mut i64, pub SMcommtype: *mut [u8; 10], pub PDOassign: *mut [u8; 514], pub PDOdesc: *mut [u8; 1026], pub eepSM: *mut [u16; 6], pub eepFMMU: *mut [u16; 4], pub FOEhook: Option<unsafe extern "C" fn(_: u16, _: i32, _: i32) -> i32>, pub EOEhook: Option<unsafe extern "C" fn(_: *mut ecx_context, _: u16, _: *mut c_void) -> i32>, pub manualstatechange: i32, pub userdata: *mut c_void,
}

Fields§

§port: *mut ecx_portt

port reference, may include red_port

§slavelist: *mut ec_slave

slavelist reference

§slavecount: *mut i32

number of slaves found in configuration

§maxslave: i32

maximum number of slaves allowed in slavelist

§grouplist: *mut ec_group

grouplist reference

§maxgroup: i32

maximum number of groups allowed in grouplist

§esibuf: *mut u8

internal, reference to eeprom cache buffer

§esimap: *mut u32

internal, reference to eeprom cache map

§esislave: u16

internal, current slave for eeprom cache

§elist: *mut [u32; 456]

internal, reference to error list

§idxstack: *mut [u32; 37]

internal, reference to processdata stack buffer info

§ecaterror: *mut u8

reference to ecaterror state

§DCtime: *mut i64

reference to last DC time from slaves

§SMcommtype: *mut [u8; 10]

internal, SM buffer

§PDOassign: *mut [u8; 514]

internal, PDO assign list

§PDOdesc: *mut [u8; 1026]

internal, PDO description list

§eepSM: *mut [u16; 6]

internal, SM list from eeprom

§eepFMMU: *mut [u16; 4]

internal, FMMU list from eeprom

§FOEhook: Option<unsafe extern "C" fn(_: u16, _: i32, _: i32) -> i32>

registered FoE hook

§EOEhook: Option<unsafe extern "C" fn(_: *mut ecx_context, _: u16, _: *mut c_void) -> i32>

registered EoE hook

§manualstatechange: i32

flag to control legacy automatic state change or manual state change

§userdata: *mut c_void

userdata, promotes application configuration esp. in EC_VER2 with multiple ec_context instances. Note: userdata memory is managed by application, not SOEM