.. _program_listing_file__home_asunye_wd_dev_emod_docs_emod_controller_build_x86_install_include_DInput10Module.h: Program Listing for File DInput10Module.h ========================================= |exhale_lsh| :ref:`Return to documentation for file ` (``/home/asunye/wd/dev/emod_docs/emod_controller/build_x86/install/include/DInput10Module.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef DINPUT_MODULE_H_ #define DINPUT_MODULE_H_ #include "EmodRet.hpp" #ifdef __cplusplus extern "C" { #endif static const uint16_t DInput10Module_INPUT01 = 0x0001; static const uint16_t DInput10Module_INPUT02 = 0x0002; static const uint16_t DInput10Module_INPUT03 = 0x0004; static const uint16_t DInput10Module_INPUT04 = 0x0008; static const uint16_t DInput10Module_INPUT05 = 0x0010; static const uint16_t DInput10Module_INPUT06 = 0x0020; static const uint16_t DInput10Module_INPUT07 = 0x0040; static const uint16_t DInput10Module_INPUT08 = 0x0080; static const uint16_t DInput10Module_INPUT09 = 0x0100; static const uint16_t DInput10Module_INPUT10 = 0x0200; static const uint16_t DInput10Module_ALL_INPUT = 0x03ff; static const uint8_t DInput10Module_NUMBER_OF_DI_INPUTS = 10; static const uint32_t DInput10Module_MODE_PRETRIGGER_TIME = 0x00000000; static const uint32_t DInput10Module_MODE_PULSE_COUNTER = 0x00000001; static const uint32_t DInput10Module_MODE_WIDTH_COUNTER = 0x00000002; static const uint8_t DInput10Module_idFunctionINPUTS = 1; static const uint8_t DInput10Module_idFunctionCOUNTER01 = 3; static const uint8_t DInput10Module_idFunctionCOUNTER02 = 4; static const uint8_t DInput10Module_idFunctionCOUNTER03 = 5; static const uint8_t DInput10Module_idFunctionCOUNTER04 = 6; static const uint8_t DInput10Module_idFunctionCOUNTER05 = 7; static const uint8_t DInput10Module_idFunctionCOUNTER06 = 8; static const uint8_t DInput10Module_idFunctionCOUNTER07 = 9; static const uint8_t DInput10Module_idFunctionCOUNTER08 = 10; static const uint8_t DInput10Module_idFunctionCOUNTER09 = 11; static const uint8_t DInput10Module_idFunctionCOUNTER10 = 12; struct DInput10ModuleStruct; typedef struct DInput10ModuleStruct DInput10Module_t; typedef void (*DInput10ModuleCallback_Type) (const uint8_t* data, uint16_t datalen, uint8_t idFunction, void* ctx); DInput10Module_t * DInput10Module_create(); void DInput10Module_destroy(DInput10Module_t *i); EmodRet DInput10Module_init(DInput10Module_t *i, const DInput10ModuleCallback_Type callback, void* context); EmodRet DInput10Module_getStatus(DInput10Module_t *i, const uint16_t input_number, uint8_t* status); EmodRet DInput10Module_getAllStatus(DInput10Module_t *i, uint8_t status[DInput10Module_NUMBER_OF_DI_INPUTS]); EmodRet DInput10Module_getPulseCount(DInput10Module_t *i, const uint16_t input_number, uint32_t* count); EmodRet DInput10Module_getAllPulseCount(DInput10Module_t *i, uint32_t counts[DInput10Module_NUMBER_OF_DI_INPUTS]); EmodRet DInput10Module_resetPulseCount(DInput10Module_t *i, uint16_t input_number); EmodRet DInput10Module_resetAllPulseCount(DInput10Module_t *i); EmodRet DInput10Module_getPulseWidth(DInput10Module_t *i, const uint16_t input_number, uint32_t* width); EmodRet DInput10Module_getAllPulseWidth(DInput10Module_t *i, uint32_t widths[DInput10Module_NUMBER_OF_DI_INPUTS]); // Callback methods EmodRet DInput10Module_configEventAtTimeInterval(DInput10Module_t *i, const uint16_t time_interval); EmodRet DInput10Module_switchToMode(DInput10Module_t *i, const uint16_t input_number, const uint32_t mode); EmodRet DInput10Module_configEventOnNewData(DInput10Module_t *i); EmodRet DInput10Module_configEventOnValueChange(DInput10Module_t *i, uint32_t threshold, uint32_t event_mask); EmodRet DInput10Module_resetEventConfig(DInput10Module_t *i); #ifdef __cplusplus } #endif #endif // RELAY_MODULE_H_