diff --git a/CMakeLists.txt b/CMakeLists.txt index 5834468..4c62dae 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,6 +3,7 @@ project(libicsneo VERSION 0.2.0) option(LIBICSNEO_BUILD_TESTS "Build all tests." OFF) option(LIBICSNEO_BUILD_DOCS "Build documentation. Don't use in Visual Studio." OFF) +option(LIBICSNEO_BUILD_EXAMPLES "Build examples." ON) option(LIBICSNEO_BUILD_ICSNEOC "Build dynamic C library" ON) option(LIBICSNEO_BUILD_ICSNEOC_STATIC "Build static C library" ON) option(LIBICSNEO_BUILD_ICSNEOLEGACY "Build icsnVC40 compatibility library" ON) @@ -101,6 +102,10 @@ else() # elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") endif() endif() +if(LIBICSNEO_BUILD_EXAMPLES) + add_subdirectory(examples) +endif() + set(COMMON_SRC communication/message/flexray/control/flexraycontrolmessage.cpp communication/message/neomessage.cpp diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 0000000..81d29b3 --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,27 @@ +option(LIBICSNEO_BUILD_C_INTERACTIVE_EXAMPLE "Build the command-line interactive C example." ON) +option(LIBICSNEO_BUILD_CPP_SIMPLE_EXAMPLE "Build the simple C++ example." ON) +option(LIBICSNEO_BUILD_CPP_INTERACTIVE_EXAMPLE "Build the command-line interactive C++ example." ON) + +# Disabled until we properly build these in-tree +# option(LIBICSNEO_BUILD_CSHARP_INTERACTIVE_EXAMPLE "Build the command-line interactive C# example." OFF) +# option(LIBICSNEO_BUILD_JAVA_INTERACTIVE_EXAMPLE "Build the command-line interactive Java example." OFF) + +if(LIBICSNEO_BUILD_C_INTERACTIVE_EXAMPLE) + add_subdirectory(c/interactive) +endif() + +if(LIBICSNEO_BUILD_CPP_SIMPLE_EXAMPLE) + add_subdirectory(cpp/simple) +endif() + +if(LIBICSNEO_BUILD_CPP_INTERACTIVE_EXAMPLE) + add_subdirectory(cpp/interactive) +endif() + +# if(LIBICSNEO_BUILD_CSHARP_INTERACTIVE_EXAMPLE) +# add_subdirectory(csharp) +# endif() + +# if(LIBICSNEO_BUILD_JAVA_INTERACTIVE_EXAMPLE) +# add_subdirectory(java) +# endif() \ No newline at end of file diff --git a/examples/c/interactive/CMakeLists.txt b/examples/c/interactive/CMakeLists.txt new file mode 100644 index 0000000..c802d6c --- /dev/null +++ b/examples/c/interactive/CMakeLists.txt @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.2) +project(libicsneoc-interactive-example VERSION 0.2.0) + +include(GNUInstallDirs) + +# Include libicsneo's include directory +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../include) + +if(UNIX) + set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS) +endif() + +add_executable(libicsneoc-interactive-example src/main.c) +if(UNIX) + target_link_libraries(libicsneoc-interactive-example ${CMAKE_DL_LIBS}) +endif() \ No newline at end of file diff --git a/examples/c/interactive/README.md b/examples/c/interactive/README.md new file mode 100644 index 0000000..53b15ca --- /dev/null +++ b/examples/c/interactive/README.md @@ -0,0 +1,80 @@ +# libicsneo C Example + +This is an example console application that uses the icsneoc library to control an Intrepid Control Systems hardware device. + +## Cloning + +This will create a copy of the repository on your local machine. + +Run: + +```shell +git clone https://github.com/intrepidcs/libicsneo-examples -b v0.2.0-dev --recursive +``` + +Alternatively, if you cloned without the `--recursive` flag, you must enter the `libicsneo-examples` folder and run the following: + +```shell +git submodule update --recursive --init +``` + +If you haven't done this, `third-party/libicsneo` will be empty and you won't be able to build! + +## Windows using Visual Studio 2017+ + +### Building the DLL + +First, we are going to build the icsneoc library into a .dll file that we can later use in order to access the library functions. + +1. Launch Visual Studio and open the `libicsneo-examples` folder. +2. Choose `File->Open->Cmake...` +3. Navigate to `third-party/libicsneo` and select the `CMakeLists.txt` there. +4. Visual Studio will process the CMake project. +5. Select `Build->Rebuild All` +6. Visual Studio will generate the `icsneoc.dll` file, which can then be found by selecting `Project->Cmake Cache (x64-Debug Only)->Open in Explorer`. If the file cannot be found, search in `libicsneo-examples/third-party/libicsneo/out/build/x64-Debug` and double-check that the build succeeded in step 5. +7. Move the `icsneoc.dll` file to the `/C/Windows/System32` folder. This will allow it to be found by icsneo_init(), which loads all the library functions. + * Alternatively, the `icsneoc.dll` file can be placed in the same directory as `libicsneoc-example.exe`, which is typically `libicsneo-examples/libicsneoc-example/out/build/x64-Debug`, although this is not recommended. For more information, refer to [the Microsoft documentation](https://docs.microsoft.com/en-us/windows/desktop/dlls/dynamic-link-library-search-order). + +### Building the example program + +Although the example program will build without successfully completing the steps above, it will exit immediately upon running due to a failure to load any library functions. + +1. Choose `File->Open->Cmake...` +2. Navigate to `libicsneo-examples/libicsneoc-example` and select the `CMakeLists.txt` there. +3. Visual Studio will process the CMake project. +4. Select `Build->Rebuild All` +5. Click on the dropdown arrow attached to the green play button (labelled "Select Startup Item") and select `libicsneoc-example.exe` +6. Click on the green play button to run the example. + +## Ubuntu 18.04 LTS + +### Building the .so + +First, we are going to build the icsneoc library into a .so file that we can later use in order to access the library functions. + +1. Install dependencies with `sudo apt update` then `sudo apt install build-essential cmake libusb-1.0-0-dev libpcap0.8-dev` +2. Change directories to `libicsneo-examples/third-party/libicsneo` and create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `make` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. Run `sudo cp libicsneoc.so /usr/lib` so that it can be found via the default ubuntu .so search path. For more information, see the [ld.so.8 man page](http://man7.org/linux/man-pages/man8/ld.so.8.html). + +### Building the example program + +Although the example program will build without successfully completing the steps above, it will exit immediately upon running due to a failure to load any library functions. + +1. Change directories to `libicsneo-examples/libicsneoc-example` +2. Create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `make` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. Run `sudo ./libicsneoc-example` to run the example. + * Hint! In order to run without sudo, you will need to set up the udev rules. Copy `libicsneo-examples/third-party/libicsneo/99-intrepidcs.rules` to `/etc/udev/rules.d`, then run `udevadm control --reload-rules && udevadm trigger` afterwards. While the program will still run without setting up these rules, it will fail to open any devices. + +## macOS + +Instructions coming soon™ diff --git a/examples/c/interactive/src/main.c b/examples/c/interactive/src/main.c new file mode 100644 index 0000000..85c30ea --- /dev/null +++ b/examples/c/interactive/src/main.c @@ -0,0 +1,610 @@ +// Signal to dynamically load the library +#define ICSNEOC_DYNAMICLOAD + +#include +#include +#include +#include +#include + +// Get the PRIu64 macro for timestamps +#define __STDC_FORMAT_MACROS +#include + +// Include icsneo/icsneoc.h to access library functions +#include "icsneo/icsneoc.h" + +size_t msgLimit = 50000; +size_t numDevices = 0; +neodevice_t devices[99]; +const neodevice_t* selectedDevice = NULL; + +/** + * \brief Prints all current known devices to output in the following format: + * [num] DeviceType SerialNum Connected: Yes/No Online: Yes/No Msg Polling: On/Off + * + * If any devices could not be described due to an error, they will appear in the following format: + * Description for device num not available! + */ +void printAllDevices() { + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n"); + } + for(int i = 0; i < numDevices; i++) { + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + // Updates productDescription and descriptionLength for each device + if(icsneo_describeDevice(devices + i, productDescription, &descriptionLength)) { + printf("[%d] %s\tConnected: ", i + 1, productDescription); + if(icsneo_isOpen(devices + i)) { + printf("Yes\t"); + } else printf("No\t"); + + printf("Online: "); + if(icsneo_isOnline(devices + i)) { + printf("Yes\t"); + } else printf("No\t"); + + printf("Msg Polling: "); + if(icsneo_isMessagePollingEnabled(devices + i)) { + printf("On\n"); + } else printf("Off\n"); + + } else { + printf("Description for device %d not available!\n", i + 1); + } + } +} + +/** + * \brief Scans for any new devices, adding them to devices and updating numDevices accordingly + * A total of 99 devices may be stored at once + */ +size_t scanNewDevices() { + neodevice_t newDevices[99]; + size_t numNewDevices = 99; + icsneo_findAllDevices(newDevices, &numNewDevices); + + for(int i = 0; i < numNewDevices; ++i) { + devices[numDevices + i] = newDevices[i]; + } + numDevices += numNewDevices; + return numNewDevices; +} + +// Prints the main menu options to output +void printMainMenu() { + printf("Press the letter next to the function you want to use:\n"); + printf("A - List all devices\n"); + printf("B - Scan for new devices\n"); + printf("C - Open/close\n"); + printf("D - Go online/offline\n"); + printf("E - Enable/disable message polling\n"); + printf("F - Get messages\n"); + printf("G - Send message\n"); + printf("H - Get events\n"); + printf("I - Set HS CAN to 250K\n"); + printf("J - Set HS CAN to 500K\n"); + printf("X - Exit\n"); +} + +void printLastError() { + neoevent_t error; + if(icsneo_getLastError(&error)) + printf("Error 0x%u: %s\n", error.eventNumber, error.description); + else + printf("No errors found!\n"); +} + +/** + * \brief Gets all current API events and prints them to output + * Flushes the API event cache, meaning future calls (barring any new events) will not detect any further API events + */ +void printAPIEvents() { + neoevent_t events[99]; + size_t eventCount = 99; + if(icsneo_getEvents(events, &eventCount)) { + if(eventCount == 1) { + printf("1 API event found!\n"); + printf("Event 0x%u: %s\n", events[0].eventNumber, events[0].description); + } else { + printf("%d API events found!\n", (int) eventCount); + for(int i = 0; i < eventCount; ++i) { + printf("Event 0x%u: %s\n", events[i].eventNumber, events[i].description); + } + } + } else { + printf("Failed to get API events!\n"); + } +} + +/** + * \brief Gets all current device events and prints them to output. If no device events were found, printAPIEvents() is called + * Flushes the device event cache, meaning future calls (barring any new events) will not detect any further device events for this device + */ +void printDeviceEvents(neodevice_t* device) { + neoevent_t events[99]; + size_t eventCount = 99; + if(icsneo_getDeviceEvents(selectedDevice, events, &eventCount)) { + if(eventCount == 1) { + printf("1 device event found!\n"); + printf("Event 0x%x: %s\n", events[0].eventNumber, events[0].description); + } else { + printf("%d device events found!\n", (int) eventCount); + for(int i = 0; i < eventCount; ++i) { + printf("Event 0x%x: %s\n", events[i].eventNumber, events[i].description); + } + } + } +} + +/** + * \brief Used to check character inputs for correctness (if they are found in an expected list) + * \param[in] numArgs the number of possible options for the expected character + * \param[in] ... the possible options for the expected character + * \returns the entered character + * + * This function repeatedly prompts the user for input until a matching input is entered + * Example usage: char input = getCharInput(5, 'F', 'u', 'b', 'a', 'r'); + */ +char getCharInput(int numArgs, ...) { + // 99 chars shold be more than enough to catch any typos + char input[99]; + bool found = false; + + va_list vaList; + va_start(vaList, numArgs); + + char* list = (char*) calloc(numArgs, sizeof(char)); + for(int i = 0; i < numArgs; ++i) { + *(list + i) = va_arg(vaList, int); + } + + va_end(vaList); + + while(!found) { + fgets(input, 99, stdin); + if(strlen(input) == 2) { + for(int i = 0; i < numArgs; ++i) { + if(input[0] == *(list + i)) { + found = true; + break; + } + } + } + + if(!found) { + printf("Input did not match expected options. Please try again.\n"); + } + } + + free(list); + + return input[0]; +} + +/** + * \brief Prompts the user to select a device from the list of currently known devices + * \returns a pointer to the device in devices[] selected by the user + * Requires an input from 1-9, so a maximum of 9 devices are supported + */ +const neodevice_t* selectDevice() { + printf("Please select a device:\n"); + printAllDevices(); + printf("\n"); + + int selectedDeviceNum = 10; + + while(selectedDeviceNum > numDevices) { + char deviceSelection = getCharInput(9, '1', '2', '3', '4', '5', '6', '7', '8', '9'); + selectedDeviceNum = deviceSelection - '0'; + if(selectedDeviceNum > numDevices) { + printf("Selected device out of range!\n"); + } + } + + printf("\n"); + + return devices + selectedDeviceNum - 1; +} + +int main() { + + // Attempt to initialize the library and access its functions + // This call searches for icsneoc.dll according to the standard dynamic-link library search order + int ret = icsneo_init(); + if(ret == 1) { + printf("The library was already initialized!\n"); + return ret; + } + + if(ret == 2) { + printf("The library could not be found!\n"); + return ret; + } + + if(ret == 3) { + printf("The library is missing functions!\n"); + return ret; + } + + neoversion_t ver = icsneo_getVersion(); + printf("ICS icsneoc.dll version %u.%u.%u\n\n", ver.major, ver.minor, ver.patch); + + while(true) { + printMainMenu(); + printf("\n"); + char input = getCharInput(22, 'A', 'a', 'B', 'b', 'C', 'c', 'D', 'd', 'E', 'e', 'F', 'f', 'G', 'g', 'H', 'h', 'I', 'i', 'J', 'j', 'X', 'x'); + printf("\n"); + switch(input) { + // List current devices + case 'A': + case 'a': + printAllDevices(); + printf("\n"); + break; + // Scan for new devices + case 'B': + case 'b': + { + size_t numNewDevices = scanNewDevices(); + if(numNewDevices == 1) { + printf("1 new device found!\n"); + } else { + printf("%d new devices found!\n", (int) numNewDevices); + } + printAllDevices(); + printf("\n"); + break; + } + // Open/close a device + case 'C': + case 'c': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + printf("Would you like to open or close %s?\n", productDescription); + printf("[1] Open\n[2] Close\n[3] Cancel\n\n"); + + char input = getCharInput(3, '1', '2', '3'); + printf("\n"); + + switch(input) { + case '1': + // Attempt to open the selected device + if(icsneo_openDevice(selectedDevice)) { + printf("%s successfully opened!\n\n", productDescription); + } else { + printf("%s failed to open!\n\n", productDescription); + printLastError(); + printf("\n"); + } + break; + case '2': + // Attempt to close the device + if(icsneo_closeDevice(selectedDevice)) { + numDevices--; + printf("Successfully closed %s!\n\n", productDescription); + + // Shifts everything after the removed device 1 index to the left + bool startResizing = false; + for(int i = 0; i < numDevices; ++i) { + if(selectedDevice == devices + i) + startResizing = true; + if(startResizing) + devices[i] = devices[i + 1]; + } + + selectedDevice = NULL; + } else { + printf("Failed to close %s!\n\n", productDescription); + printLastError(); + printf("\n"); + } + + break; + default: + printf("Canceling!\n\n"); + } + } + break; + // Go online/offline + case 'D': + case 'd': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + printf("Would you like to have %s go online or offline?\n", productDescription); + printf("[1] Online\n[2] Offline\n[3] Cancel\n\n"); + + char input = getCharInput(3, '1', '2', '3'); + printf("\n"); + + switch(input) { + case '1': + // Attempt to go online + if(icsneo_goOnline(selectedDevice)) { + printf("%s successfully went online!\n\n", productDescription); + } else { + printf("%s failed to go online!\n\n", productDescription); + printLastError(); + printf("\n"); + } + break; + case '2': + // Attempt to go offline + if(icsneo_goOffline(selectedDevice)) { + printf("%s successfully went offline!\n\n", productDescription); + } else { + printf("%s failed to go offline!\n\n", productDescription); + printLastError(); + printf("\n"); + } + break; + default: + printf("Canceling!\n\n"); + } + } + break; + // Enable/disable message polling + case 'E': + case 'e': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + printf("Would you like to enable or disable message polling for %s?\n", productDescription); + printf("[1] Enable\n[2] Disable\n[3] Cancel\n\n"); + + char input = getCharInput(3, '1', '2', '3'); + printf("\n"); + + switch(input) { + case '1': + // Attempt to enable message polling + if(icsneo_enableMessagePolling(selectedDevice)) { + printf("Successfully enabled message polling for %s!\n\n", productDescription); + } else { + printf("Failed to enable message polling for %s!\n\n", productDescription); + printLastError(); + printf("\n"); + } + + // Manually setting the polling message limit as done below is optional + // It will default to 20k if not set + // Attempt to set the polling message limit + if(icsneo_setPollingMessageLimit(selectedDevice, msgLimit)) { + printf("Successfully set message polling limit for %s!\n\n", productDescription); + } else { + printf("Failed to set polling message limit for %s!\n\n", productDescription); + printLastError(); + printf("\n"); + } + break; + case '2': + // Attempt to disable message polling + if(icsneo_disableMessagePolling(selectedDevice)) { + printf("Successfully disabled message polling for %s!\n\n", productDescription); + } else { + printf("Failed to disable message polling limit for %s!\n\n", productDescription); + printLastError(); + printf("\n"); + } + break; + default: + printf("Canceling!\n\n"); + } + } + break; + // Get messages + case 'F': + case 'f': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + // Prepare the array of neomessage_t ptrs for reading in the messages + neomessage_t* msgs = (neomessage_t*) malloc(msgLimit * sizeof(neomessage_t*)); + + // Get messages + size_t msgCount = msgLimit; + + // Attempt to get messages + if(!icsneo_getMessages(selectedDevice, msgs, &msgCount, (uint64_t) 0)) { + printf("Failed to get messages for %s!\n\n", productDescription); + printLastError(); + free(msgs); + printf("\n"); + break; + } + + if(msgCount == 1) { + printf("1 message received from %s!\n", productDescription); + } else { + printf("%d messages received from %s!\n", (int) msgCount, productDescription); + } + + // Print out the received messages + for(size_t i = 0; i < msgCount; i++) { + neomessage_t* msg = &msgs[i]; + switch(msg->type) { + case ICSNEO_NETWORK_TYPE_CAN: // CAN + { + neomessage_can_t* canMsg = (neomessage_can_t*) msg; + printf("\t0x%03x [%zu] ", canMsg->arbid, canMsg->length); + for(size_t i = 0; i < canMsg->length; i++) { + printf("%02x ", canMsg->data[i]); + } + printf("(%"PRIu64")\n", canMsg->timestamp); + break; + } + default: + if(msg->netid != 0) + printf("\tMessage on netid %d with length %zu\n", msg->netid, msg->length); + break; + } + } + printf("\n"); + + free(msgs); + } + + break; + // Send message + case 'G': + case 'g': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + // Start generating sample msg + uint8_t sendMessageData[6]; + sendMessageData[0] = 0xaa; + sendMessageData[1] = 0xbb; + sendMessageData[2] = 0xcc; + sendMessageData[3] = 0xdd; + sendMessageData[4] = 0xee; + sendMessageData[5] = 0xff; + + neomessage_can_t msg = {0}; + msg.arbid = 0x120; + msg.length = 6; + msg.netid = ICSNEO_NETID_HSCAN; + msg.data = sendMessageData; + msg.status.canfdFDF = false; + msg.status.extendedFrame = false; + msg.status.canfdBRS = false; + // End generating sample msg + + // Attempt to transmit the sample msg + if(icsneo_transmit(selectedDevice, (const neomessage_t*) &msg)) { + printf("Message transmit successful!\n\n"); + } else { + printf("Failed to transmit message to %s!\n\n", productDescription); + printLastError(); + printf("\n"); + } + } + break; + // Get events + case 'H': + case 'h': + { + // All API events + printAPIEvents(); + printf("\n"); + } + break; + // Set HS CAN to 250k + case 'I': + case 'i': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + // Attempt to set baudrate and apply settings + if(icsneo_setBaudrate(selectedDevice, ICSNEO_NETID_HSCAN, 250000) && icsneo_settingsApply(selectedDevice)) { + printf("Successfully set HS CAN baudrate for %s to 250k!\n\n", productDescription); + } else { + printf("Failed to set HS CAN for %s to 250k!\n\n", productDescription); + printLastError(); + printf("\n"); + } + } + break; + // Set HS CAN to 500k + case 'J': + case 'j': + { + // Select a device and get its description + if(numDevices == 0) { + printf("No devices found! Please scan for new devices.\n\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + char productDescription[ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION]; + size_t descriptionLength = ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + icsneo_describeDevice(selectedDevice, productDescription, &descriptionLength); + + // Attempt to set baudrate and apply settings + if(icsneo_setBaudrate(selectedDevice, ICSNEO_NETID_HSCAN, 500000) && icsneo_settingsApply(selectedDevice)) { + printf("Successfully set HS CAN baudrate for %s to 500k!\n\n", productDescription); + } else { + printf("Failed to set HS CAN for %s to 500k!\n\n", productDescription); + printLastError(); + printf("\n"); + } + } + break; + // Exit + case 'X': + case 'x': + printf("Exiting program\n"); + return !icsneo_close(); + default: + printf("Unexpected input, exiting!\n"); + return 1; + } + } + + return 0; +} diff --git a/examples/cpp/interactive/CMakeLists.txt b/examples/cpp/interactive/CMakeLists.txt new file mode 100644 index 0000000..63671d9 --- /dev/null +++ b/examples/cpp/interactive/CMakeLists.txt @@ -0,0 +1,27 @@ +cmake_minimum_required(VERSION 3.2) +project(libicsneocpp-interactive-example VERSION 0.2.0) + +set(CMAKE_CXX_STANDARD 11) + +include(GNUInstallDirs) + +# Add an include directory like so if desired +#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) + +# Enable Warnings +if(MSVC) + # Force to always compile with W4 + if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") + string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4") + endif() +else() #if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-switch -Wno-unknown-pragmas") +endif() + +# Add libicsneo, usually a git submodule within your project works well +#add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../third-party/libicsneo ${CMAKE_CURRENT_BINARY_DIR}/third-party/libicsneo) + +add_executable(libicsneocpp-interactive-example src/InteractiveExample.cpp) +target_link_libraries(libicsneocpp-interactive-example icsneocpp) \ No newline at end of file diff --git a/examples/cpp/interactive/README.md b/examples/cpp/interactive/README.md new file mode 100644 index 0000000..fa25980 --- /dev/null +++ b/examples/cpp/interactive/README.md @@ -0,0 +1,48 @@ +# libicsneo C++ Example + +This is an example console application which uses libicsneo to connect to an Intrepid Control Systems hardware device. It has both interactive and simple examples for sending and receiving CAN & CAN FD traffic. + +## Building + +This example shows how to use the C++ version of libicsneo with CMake. It will build libicsneo along with your project. + +First, you need to clone the repository onto your local machine. Run: + +```shell +git clone https://github.com/intrepidcs/libicsneo-examples --recursive +``` + +Alternatively, if you cloned without the `--recursive flag`, you must enter the `libicsneo-examples` folder and run the following: + +```shell +git submodule update --recursive --init +``` + +If you haven't done this, `third-party/libicsneo` will be empty and you won't be able to build! + +### Windows using Visual Studio 2017+ + +1. Launch Visual Studio and open the `libicsneo-examples` folder. +2. Choose `File->Open->CMake...` +3. Navigate to the `libicsneocpp-example` folder and select the `CMakeLists.txt` there. +4. Visual Studio will process the CMake project. +5. Choose the dropdown attached to the green play button (labelled "select startup item...") in the toolbar. +6. Select `libicsneocpp-interactive-example.exe` or `libicsneocpp-simple-example.exe` +7. Press the green play button to compile and run the example. + +### Ubuntu 18.04 LTS + +1. Install dependencies with `sudo apt update` then `sudo apt install build-essential cmake libusb-1.0-0-dev libpcap0.8-dev` +2. Change directories to your `libicsneo-examples/libicsneocpp-example` folder and create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `make libicsneocpp-interactive-example` to build. + * Hint! Speed up your build by using multiple processors! Use `make libicsneocpp-interactive-example -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. Now run `sudo ./libicsneocpp-interactive-example` to run the example. + * Hint! In order to run without sudo, you will need to set up the udev rules. Copy `libicsneo-examples/third-party/libicsneo/99-intrepidcs.rules` to `/etc/udev/rules.d`, then run `udevadm control --reload-rules && udevadm trigger` afterwards. While the program will still run without setting up these rules, it will fail to open any devices. +7. If you wish to run the simple example instead, replace any instances of "interactive" with "simple" in steps 5 and 6. + +### macOS + +Instructions coming soon™ diff --git a/examples/cpp/interactive/src/InteractiveExample.cpp b/examples/cpp/interactive/src/InteractiveExample.cpp new file mode 100644 index 0000000..ffca1b0 --- /dev/null +++ b/examples/cpp/interactive/src/InteractiveExample.cpp @@ -0,0 +1,618 @@ +#include +#include +#include +#include +#include + +// Include icsneo/icsneocpp.h to access library functions +#include "icsneo/icsneocpp.h" + +/** + * \brief Prints all current known devices to output in the following format: + * [num] DeviceType SerialNum Connected: Yes/No Online: Yes/No Msg Polling: On/Off + * + * If any devices could not be described due to an error, they will appear in the following format: + * Description for device num not available! + */ +void printAllDevices(const std::vector>& devices) { + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl; + } + + int index = 1; + for(auto device : devices) { + std::cout << "[" << index << "] " << device->describe() << "\tConnected: " << (device->isOpen() ? "Yes\t" : "No\t"); + std::cout << "Online: " << (device->isOnline() ? "Yes\t" : "No\t"); + std::cout << "Msg Polling: " << (device->isMessagePollingEnabled() ? "On" : "Off") << std::endl; + index++; + } +} + +// Prints the main menu options to output +void printMainMenu() { + std::cout << "Press the letter next to the function you want to use:" << std::endl; + std::cout << "A - List all devices" << std::endl; + std::cout << "B - Find all devices" << std::endl; + std::cout << "C - Open/close" << std::endl; + std::cout << "D - Go online/offline" << std::endl; + std::cout << "E - Enable/disable message polling" << std::endl; + std::cout << "F - Get messages" << std::endl; + std::cout << "G - Send messages" << std::endl; + std::cout << "H - Get events" << std::endl; + std::cout << "I - Set HS CAN to 250K" << std::endl; + std::cout << "J - Set LSFT CAN to 250K" << std::endl; + std::cout << "K - Add/Remove a message callback" << std::endl; + std::cout << "X - Exit" << std::endl; +} + +/** + * \brief Gets all current API events (info and warning level) and prints them to output + * Flushes all current API events, meaning future calls (barring any new events) will not detect any further API events + */ +void printAPIEvents() { + // Match all events + auto events = icsneo::GetEvents(icsneo::EventFilter()); + + if(events.size() == 1) { + std::cout << "1 API event found!" << std::endl; + } else { + std::cout << events.size() << " API events found!" << std::endl; + } + + for(auto event : events) { + std::cout << event << std::endl; + } +} + +/** + * \brief Gets all current API warnings and prints them to output + * Flushes all current API warnings, meaning future calls (barring any new warnings) will not detect any further API warnings + */ +void printAPIWarnings() { + // Match all warning events, regardless of device + auto warnings = icsneo::GetEvents(icsneo::EventFilter(nullptr, icsneo::APIEvent::Severity::EventWarning)); + + if(warnings.size() == 1) { + std::cout << "1 API warning found!" << std::endl; + } else { + std::cout << warnings.size() << " API warnings found!" << std::endl; + } + + for(auto warning : warnings) { + std::cout << warning << std::endl; + } +} + +/** + * \brief Gets all current device events and prints them to output. + * Flushes all current device events, meaning future calls (barring any new events) will not detect any further device events for this device + */ +void printDeviceEvents(std::shared_ptr device) { + // Match all events for the specified device + auto events = icsneo::GetEvents(icsneo::EventFilter(device.get())); + + if(events.size() == 1) { + std::cout << "1 device event found!" << std::endl; + } else { + std::cout << events.size() << " device events found!" << std::endl; + } + + for(auto event : events) { + std::cout << event << std::endl; + } +} + +/** + * \brief Gets all current device warnings and prints them to output. + * Flushes all current device warnings, meaning future calls (barring any new warnings) will not detect any further device warnings for this device + */ +void printDeviceWarnings(std::shared_ptr device) { + // Match all warning events for the specified device + auto events = icsneo::GetEvents(icsneo::EventFilter(device.get(), icsneo::APIEvent::Severity::EventWarning)); + + if(events.size() == 1) { + std::cout << "1 device warning found!" << std::endl; + } else { + std::cout << events.size() << " device warnings found!" << std::endl; + } + + for(auto event : events) { + std::cout << event << std::endl; + } +} + +/** + * \brief Used to check character inputs for correctness (if they are found in an expected list) + * \param[in] numArgs the number of possible options for the expected character + * \param[in] ... the possible options for the expected character + * \returns the entered character + * + * This function repeatedly prompts the user for input until a matching input is entered + * Example usage: + * char input = getCharInput(std::vector {'F', 'u', 'b', 'a', 'r'}); + */ +char getCharInput(std::vector allowed) { + bool found = false; + std::string input; + + while(!found) { + std::cin >> input; + + if(input.length() == 1) { + for(char compare : allowed) { + if(compare == input.c_str()[0]) { + found = true; + break; + } + } + } + + if(!found) { + std::cout << "Input did not match expected options. Please try again." << std::endl; + } + } + + return input.c_str()[0]; +} + +/** + * \brief Prompts the user to select a device from the list of currently known devices + * \returns a pointer to the device in devices[] selected by the user + * Requires an input from 1-9, so a maximum of 9 devices are supported + */ +std::shared_ptr selectDevice(const std::vector>& from) { + printf("Please select a device:\n"); + printAllDevices(from); + printf("\n"); + + int selectedDeviceNum = 10; + + while((size_t) selectedDeviceNum > from.size()) { + char deviceSelection = getCharInput(std::vector {'1', '2', '3', '4', '5', '6', '7', '8', '9'}); + selectedDeviceNum = deviceSelection - '0'; + if((size_t) selectedDeviceNum > from.size()) { + std::cout << "Selected device out of range!" << std::endl; + } + } + + std::cout << std::endl; + + return from.at(selectedDeviceNum - 1); +} + +int main() { + std::cout << "Running libicsneo " << icsneo::GetVersion() << std::endl << std::endl; + + size_t msgLimit = 50000; + std::vector> devices; + std::map, std::vector> callbacks; + std::shared_ptr selectedDevice; + + while(true) { + printMainMenu(); + std::cout << std::endl; + char input = getCharInput(std::vector {'A', 'a', 'B', 'b', 'C', 'c', 'D', 'd', 'E', 'e', 'F', 'f', 'G', 'g', 'H', 'h', 'I', 'i', 'J', 'j', 'K', 'k', 'X', 'x'}); + std::cout << std::endl; + + switch(input) { + // List current devices + case 'A': + case 'a': + printAllDevices(devices); + std::cout << std::endl; + break; + // Find all devices + case 'B': + case 'b': + { + devices = icsneo::FindAllDevices(); + + for(auto device : devices) { + callbacks.insert({device, std::vector()}); + } + + if(devices.size() == 1) { + std::cout << "1 device found!" << std::endl; + } else { + std::cout << devices.size() << " devices found!" << std::endl; + } + printAllDevices(devices); + std::cout << std::endl; + break; + } + // Open/Close + case 'C': + case 'c': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::cout << "Would you like to open or close " << selectedDevice->describe() << "?" << std::endl; + std::cout << "[1] Open" << std::endl << "[2] Close" << std::endl << "[3] Cancel" << std::endl << std::endl; + char selection = getCharInput(std::vector {'1', '2', '3'}); + std::cout << std::endl; + + switch(selection) { + case '1': + if(selectedDevice->open()) { + std::cout << selectedDevice->describe() << " successfully opened!" << std::endl << std::endl; + } else { + std::cout << selectedDevice->describe() << " failed to open!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl; + std::cout << std::endl; + } + + break; + case '2': + // Attempt to close the device + if(selectedDevice->close()) { + std::cout << "Successfully closed " << selectedDevice->describe() << "!" << std::endl << std::endl; + selectedDevice = NULL; + } else { + std::cout << "Failed to close " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + + break; + default: + std::cout << "Canceling!" << std::endl << std::endl; + break; + } + } + break; + // Go online/offline + case 'D': + case 'd': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::cout << "Would you like to have " << selectedDevice->describe() << " go online or offline?" << std::endl; + std::cout << "[1] Online" << std::endl << "[2] Offline" << std::endl << "[3] Cancel" << std::endl << std::endl; + char selection = getCharInput(std::vector {'1', '2', '3'}); + std::cout << std::endl; + + switch(selection) { + case '1': + // Attempt to have the selected device go online + if(selectedDevice->goOnline()) { + std::cout << selectedDevice->describe() << " successfully went online!" << std::endl << std::endl; + } else { + std::cout << selectedDevice->describe() << " failed to go online!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + break; + case '2': + // Attempt to go offline + if(selectedDevice->goOffline()) { + std::cout << selectedDevice->describe() << " successfully went offline!" << std::endl << std::endl; + } else { + std::cout << selectedDevice->describe() << " failed to go offline!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + break; + default: + std::cout << "Canceling!" << std::endl << std::endl; + break; + } + } + break; + // Enable/disable message polling + case 'E': + case 'e': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::cout << "Would you like to enable or disable message polling for " << selectedDevice->describe() << "?" << std::endl; + std::cout << "[1] Enable" << std::endl << "[2] Disable" << std::endl << "[3] Cancel" << std::endl << std::endl; + char selection = getCharInput(std::vector {'1', '2', '3'}); + std::cout << std::endl; + + switch(selection) { + case '1': + // Attempt to enable message polling + if(selectedDevice->enableMessagePolling()) { + std::cout << "Successfully enabled message polling for " << selectedDevice->describe() << "!" << std::endl << std::endl; + } else { + std::cout << "Failed to enable message polling for " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + // Manually setting the polling message limit as done below is optional + // It will default to 20k if not set + selectedDevice->setPollingMessageLimit(50000); + if(selectedDevice->getPollingMessageLimit() == 50000) { + std::cout << "Successfully set polling message limit for " << selectedDevice->describe() << "!" << std::endl << std::endl; + } else { + std::cout << "Failed to set polling message limit for " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + break; + case '2': + // Attempt to disable message polling + if(selectedDevice->disableMessagePolling()) { + std::cout << "Successfully disabled message polling for " << selectedDevice->describe() << "!" << std::endl; + } else { + std::cout << "Failed to disable message polling for " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + } + break; + default: + std::cout << "Canceling!" << std::endl << std::endl; + break; + } + } + break; + // Get messages + case 'F': + case 'f': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::vector> msgs; + + // Attempt to get messages, limiting the number of messages at once to 50,000 + // A third parameter of type std::chrono::milliseconds is also accepted if a timeout is desired + if(!selectedDevice->getMessages(msgs, msgLimit)) { + std::cout << "Failed to get messages for " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + std::cout << std::endl; + break; + } + + if(msgs.size() == 1) { + std::cout << "1 message received from " << selectedDevice->describe() << "!" << std::endl; + } else { + std::cout << msgs.size() << " messages received from " << selectedDevice->describe() << "!" << std::endl; + } + + // Print out the received messages + for(auto msg : msgs) { + switch(msg->network.getType()) { + case icsneo::Network::Type::CAN: + { + // A message of type CAN is guaranteed to be a CANMessage, so we can static cast safely + auto canMsg = std::static_pointer_cast(msg); + std::cout << "\t0x" << std::setfill('0') << std::setw(3) << std::hex << (int) canMsg->arbid << " [" << canMsg->data.size() << "] " << std::dec; + + for(auto data : canMsg->data) { + std::cout << std::setfill('0') << std::setw(2) << std::hex << (int) data << " " << std::dec; + } + + std::cout << canMsg->timestamp << std::endl; + break; + } + default: + if(msg->network.getNetID() != icsneo::Network::NetID::Device) { + std::cout << "\tMessage on netid " << msg->network.GetNetIDString(msg->network.getNetID()) << " with length " << msg->data.size() << std::endl; + } + break; + } + } + + std::cout << std::endl; + } + + break; + // Send messages + case 'G': + case 'g': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::cout << "Transmitting a normal CAN frame..." << std::endl; + auto msg = std::make_shared(); + msg->network = icsneo::Network::NetID::HSCAN; + msg->arbid = 0x120; + msg->data.insert(msg->data.end(), {0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff}); + msg->isExtended = false; + msg->isCANFD = false; + + // Attempt to transmit the sample msg + if(selectedDevice->transmit(msg)) { + std::cout << "Message transmit successful!" << std::endl; + } else { + std::cout << "Failed to transmit message to " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + + /** Example of CAN FD + std::cout << "Transmitting an extended CAN FD frame... " << std::endl; + auto txMessage = std::make_shared(); + txMessage->network = icsneo::Network::NetID::HSCAN; + txMessage->arbid = 0x1C5001C5; + txMessage->data.insert(txMessage->data.end(), {0xaa, 0xbb, 0xcc}); + // The DLC will come from the length of the data vector + txMessage->isExtended = true; + txMessage->isCANFD = true; + + // Attempt to transmit the sample msg + if(selectedDevice->transmit(txMessage)) { + std::cout << "Extended CAN FD frame transmit successful!" << std::endl; + } else { + std::cout << "Failed to transmit extended CAN FD frame to " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + */ + + std::cout << std::endl; + } + break; + // Get events + case 'H': + case 'h': + { + // Prints all events + printAPIEvents(); + std::cout << std::endl; + } + break; + // Set HS CAN to 250k + case 'I': + case 'i': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + // Attempt to set baudrate and apply settings + if(selectedDevice->settings->setBaudrateFor(icsneo::Network::NetID::HSCAN, 250000) && selectedDevice->settings->apply()) { + std::cout << "Successfully set HS CAN baudrate for " << selectedDevice->describe() << " to 250k!" << std::endl; + } else { + std::cout << "Failed to set HS CAN baudrate for " << selectedDevice->describe() << " to 250k!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + std::cout << std::endl; + } + break; + // Set LSFT CAN to 250k + case 'J': + case 'j': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + // Attempt to set baudrate and apply settings + if(selectedDevice->settings->setBaudrateFor(icsneo::Network::NetID::LSFTCAN, 250000) && selectedDevice->settings->apply()) { + std::cout << "Successfully set LSFT CAN baudrate for " << selectedDevice->describe() << " to 250k!" << std::endl; + } else { + std::cout << "Failed to set LSFT CAN baudrate for " << selectedDevice->describe() << " to 250k!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + std::cout << std::endl; + } + break; + // Add/Remove a message callback + case 'K': + case 'k': + { + // Select a device and get its description + if(devices.size() == 0) { + std::cout << "No devices found! Please scan for new devices." << std::endl << std::endl; + break; + } + selectedDevice = selectDevice(devices); + + std::cout << "Would you like to add or remove a message callback for " << selectedDevice->describe() << "?" << std::endl; + std::cout << "[1] Add" << std::endl << "[2] Remove" << std::endl << "[3] Cancel" << std::endl << std::endl; + char selection = getCharInput(std::vector {'1', '2', '3'}); + std::cout << std::endl; + + switch(selection) { + case '1': + { + // Shameless copy-paste from get messages above, demonstrating a callback + int callbackID = selectedDevice->addMessageCallback(icsneo::MessageCallback([](std::shared_ptr msg){ + switch(msg->network.getType()) { + case icsneo::Network::Type::CAN: + { + // A message of type CAN is guaranteed to be a CANMessage, so we can static cast safely + auto canMsg = std::static_pointer_cast(msg); + std::cout << "\t0x" << std::setfill('0') << std::setw(3) << std::hex << (int) canMsg->arbid << " [" << canMsg->data.size() << "] " << std::dec; + + for(auto data : canMsg->data) { + std::cout << std::setfill('0') << std::setw(2) << std::hex << (int) data << " " << std::dec; + } + + std::cout << canMsg->timestamp << std::endl; + break; + } + default: + if(msg->network.getNetID() != icsneo::Network::NetID::Device) { + std::cout << "\tMessage on netid " << msg->network.GetNetIDString(msg->network.getNetID()) << " with length " << msg->data.size() << std::endl; + } + break; + } + })); + + if(callbackID != -1) { + std::cout << "Successfully added message callback to " << selectedDevice->describe() << "!" << std::endl; + callbacks.find(selectedDevice)->second.push_back(callbackID); + } else { + std::cout << "Failed to add message callback to " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + } + break; + case '2': + { + if(callbacks.find(selectedDevice)->second.size() == 0) { + std::cout << "No callbacks found for " << selectedDevice->describe() << "!" << std::endl; + break; + } else { + std::vector allowed; + + std::cout << "Which id would you like to remove?" << std::endl; + for(int id : callbacks.find(selectedDevice)->second) { + allowed.push_back(static_cast(id) + '0'); + std::cout << "[" << id << "]" << std::endl; + } + std::cout << std::endl; + + + int removeID = getCharInput(allowed) - '0'; + std::cout << std::endl; + + if(selectedDevice->removeMessageCallback(removeID)) { + std::cout << "Successfully removed callback id " << removeID << " from " << selectedDevice->describe() << "!" << std::endl; + } else { + std::cout << "Failed to remove message callback id " << removeID << " from " << selectedDevice->describe() << "!" << std::endl << std::endl; + std::cout << icsneo::GetLastError() << std::endl;; + } + } + } + break; + default: + std::cout << "Canceling!" << std::endl << std::endl; + break; + } + } + break; + // Exit + case 'X': + case 'x': + printf("Exiting program\n"); + return 0; + default: + printf("Unexpected input, exiting!\n"); + return 1; + } + } + + return 0; +} \ No newline at end of file diff --git a/examples/cpp/simple/CMakeLists.txt b/examples/cpp/simple/CMakeLists.txt new file mode 100644 index 0000000..e89a63f --- /dev/null +++ b/examples/cpp/simple/CMakeLists.txt @@ -0,0 +1,27 @@ +cmake_minimum_required(VERSION 3.2) +project(libicsneocpp-simple-example VERSION 0.2.0) + +set(CMAKE_CXX_STANDARD 11) + +include(GNUInstallDirs) + +# Add an include directory like so if desired +#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) + +# Enable Warnings +if(MSVC) + # Force to always compile with W4 + if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") + string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4") + endif() +else() #if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-switch -Wno-unknown-pragmas") +endif() + +# Add libicsneo, usually a git submodule within your project works well +#add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../third-party/libicsneo ${CMAKE_CURRENT_BINARY_DIR}/third-party/libicsneo) + +add_executable(libicsneocpp-simple-example src/SimpleExample.cpp) +target_link_libraries(libicsneocpp-simple-example icsneocpp) \ No newline at end of file diff --git a/examples/cpp/simple/README.md b/examples/cpp/simple/README.md new file mode 100644 index 0000000..2003d4d --- /dev/null +++ b/examples/cpp/simple/README.md @@ -0,0 +1,48 @@ +# libicsneo C++ Example + +This is an example console application which uses libicsneo to connect to an Intrepid Control Systems hardware device. It has both interactive and simple examples for sending and receiving CAN & CAN FD traffic. + +## Building + +This example shows how to use the C++ version of libicsneo with CMake. It will build libicsneo along with your project. + +First, you need to clone the repository onto your local machine. Run: + +```shell +git clone https://github.com/intrepidcs/libicsneo-examples --recursive +``` + +Alternatively, if you cloned without the `--recursive flag`, you must enter the `libicsneo-examples` folder and run the following: + +```shell +git submodule update --recursive --init +``` + +If you haven't done this, `third-party/libicsneo` will be empty and you won't be able to build! + +### Windows using Visual Studio 2017+ + +1. Launch Visual Studio and open the `libicsneo-examples` folder. +2. Choose `File->Open->CMake...` +3. Navigate to the `libicsneocpp-example` folder and select the `CMakeLists.txt` there. +4. Visual Studio will process the CMake project. +5. Choose the dropdown attached to the green play button (labelled "select startup item...") in the toolbar. +6. Select `libicsneocpp-simple-example.exe` +7. Press the green play button to compile and run the example. + +### Ubuntu 18.04 LTS + +1. Install dependencies with `sudo apt update` then `sudo apt install build-essential cmake libusb-1.0-0-dev libpcap0.8-dev` +2. Change directories to your `libicsneo-examples/libicsneocpp-example` folder and create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `make libicsneocpp-interactive-example` to build. + * Hint! Speed up your build by using multiple processors! Use `make libicsneocpp-interactive-example -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. Now run `sudo ./libicsneocpp-interactive-example` to run the example. + * Hint! In order to run without sudo, you will need to set up the udev rules. Copy `libicsneo-examples/third-party/libicsneo/99-intrepidcs.rules` to `/etc/udev/rules.d`, then run `udevadm control --reload-rules && udevadm trigger` afterwards. While the program will still run without setting up these rules, it will fail to open any devices. +7. If you wish to run the simple example instead, replace any instances of "interactive" with "simple" in steps 5 and 6. + +### macOS + +Instructions coming soon™ diff --git a/examples/cpp/simple/src/SimpleExample.cpp b/examples/cpp/simple/src/SimpleExample.cpp new file mode 100644 index 0000000..cd9a647 --- /dev/null +++ b/examples/cpp/simple/src/SimpleExample.cpp @@ -0,0 +1,248 @@ +#include +#include +#include +#include + +#include "icsneo/icsneocpp.h" + +int main() { + // Print version + std::cout << "Running libicsneo " << icsneo::GetVersion() << std::endl; + + std::cout<< "Supported devices:" << std::endl; + for(auto& dev : icsneo::GetSupportedDevices()) + std::cout << '\t' << dev << std::endl; + + std::cout << "\nFinding devices... " << std::flush; + auto devices = icsneo::FindAllDevices(); // This is type std::vector> + // You now hold the shared_ptrs for these devices, you are considered to "own" these devices from a memory perspective + std::cout << "OK, " << devices.size() << " device" << (devices.size() == 1 ? "" : "s") << " found" << std::endl; + + // List off the devices + for(auto& device : devices) + std::cout << '\t' << device->getType() << " - " << device->getSerial() << " @ Handle " << device->getNeoDevice().handle << std::endl; + std::cout << std::endl; + + for(auto& device : devices) { + std::cout << "Connecting to " << device->getType() << ' ' << device->getSerial() << "... "; + bool ret = device->open(); + if(!ret) { // Failed to open + std::cout << "FAIL" << std::endl; + std::cout << icsneo::GetLastError() << std::endl << std::endl; + continue; + } + std::cout << "OK" << std::endl; + + std::cout << "\tGetting HSCAN Baudrate... "; + int64_t baud = device->settings->getBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + std::cout << "\tSetting HSCAN to operate at 125kbit/s... "; + ret = device->settings->setBaudrateFor(icsneo::Network::NetID::HSCAN, 125000); + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + // Changes to the settings do not take affect until you call settings->apply()! + // When you get the baudrate here, you're reading what the device is currently operating on + std::cout << "\tGetting HSCAN Baudrate... (expected to be unchanged) "; + baud = device->settings->getBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + std::cout << "\tGetting HSCANFD Baudrate... "; + baud = device->settings->getFDBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + std::cout << "\tSetting HSCANFD to operate at 8Mbit/s... "; + ret = device->settings->setFDBaudrateFor(icsneo::Network::NetID::HSCAN, 8000000); + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + std::cout << "\tGetting HSCANFD Baudrate... (expected to be unchanged) "; + baud = device->settings->getFDBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + // Setting settings temporarily does not need to be done before committing to device EEPROM + // It's done here to test both functionalities + // Setting temporarily will keep these settings until another send/commit is called or a power cycle occurs + std::cout << "\tSetting settings temporarily... "; + ret = device->settings->apply(true); + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + // Now that we have applied, we expect that our operating baudrates have changed + std::cout << "\tGetting HSCAN Baudrate... "; + baud = device->settings->getBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + std::cout << "\tGetting HSCANFD Baudrate... "; + baud = device->settings->getFDBaudrateFor(icsneo::Network::NetID::HSCAN); + if(baud < 0) + std::cout << "FAIL" << std::endl; + else + std::cout << "OK, " << (baud/1000) << "kbit/s" << std::endl; + + std::cout << "\tSetting settings permanently... "; + ret = device->settings->apply(); + std::cout << (ret ? "OK\n\n" : "FAIL\n\n"); + + // The concept of going "online" tells the connected device to start listening, i.e. ACKing traffic and giving it to us + std::cout << "\tGoing online... "; + ret = device->goOnline(); + if(!ret) { + std::cout << "FAIL" << std::endl; + device->close(); + continue; + } + std::cout << "OK" << std::endl; + + // A real application would just check the result of icsneo_goOnline() rather than calling this + // This function is intended to be called later on if needed + std::cout << "\tChecking online status... "; + ret = device->isOnline(); + if(!ret) { + std::cout << "FAIL\n" << std::endl; + device->close(); + continue; + } + std::cout << "OK" << std::endl; + + // Now we can either register a handler (or multiple) for messages coming in + // or we can enable message polling, and then call device->getMessages periodically + + // We're actually going to do both here, so first enable message polling + device->enableMessagePolling(); + device->setPollingMessageLimit(100000); // Feel free to set a limit if you like, the default is a conservative 20k + // Keep in mind that 20k messages comes quickly at high bus loads! + + // We can also register a handler + std::cout << "\tStreaming messages in for 3 seconds... " << std::endl; + // MessageCallbacks are powerful, and can filter on things like ArbID for you. See the documentation + auto handler = device->addMessageCallback(icsneo::MessageCallback([](std::shared_ptr message) { + switch(message->network.getType()) { + case icsneo::Network::Type::CAN: { + // A message of type CAN is guaranteed to be a CANMessage, so we can static cast safely + auto canMessage = std::static_pointer_cast(message); + + std::cout << "\t\tCAN "; + if(canMessage->isCANFD) { + std::cout << "FD "; + if(!canMessage->baudrateSwitch) + std::cout << "(No BRS) "; + } + + // Print the Arbitration ID + std::cout << "0x" << std::hex << std::setw(canMessage->isExtended ? 8 : 3) << std::setfill('0') << canMessage->arbid; + + // Print the DLC + std::cout << std::dec << " [" << canMessage->data.size() << "] "; + + // Print the data + for(auto& databyte : canMessage->data) + std::cout << std::hex << std::setw(2) << (uint32_t)databyte << ' '; + + // Print the timestamp + std::cout << std::dec << '(' << canMessage->timestamp << " ns since 1/1/2007)\n"; + break; + } + case icsneo::Network::Type::Ethernet: { + auto ethMessage = std::static_pointer_cast(message); + + std::cout << "\t\t" << ethMessage->network << " Frame - " << std::dec << ethMessage->data.size() << " bytes on wire\n"; + std::cout << "\t\t Timestamped:\t"<< ethMessage->timestamp << " ns since 1/1/2007\n"; + + // The MACAddress may be printed directly or accessed with the `data` member + std::cout << "\t\t Source:\t" << ethMessage->getSourceMAC() << "\n"; + std::cout << "\t\t Destination:\t" << ethMessage->getDestinationMAC(); + + // Print the data + for(size_t i = 0; i < ethMessage->data.size(); i++) { + if(i % 8 == 0) + std::cout << "\n\t\t " << std::hex << std::setw(4) << std::setfill('0') << i << '\t'; + std::cout << std::hex << std::setw(2) << (uint32_t)ethMessage->data[i] << ' '; + } + + std::cout << std::dec << std::endl; + break; + } + default: + // Ignoring non-network messages + break; + } + })); + std::this_thread::sleep_for(std::chrono::seconds(3)); + device->removeMessageCallback(handler); // Removing the callback means it will not be called anymore + + // Since we're using message polling, we can also get the messages which have come in for the past 3 seconds that way + // We could simply call getMessages and it would return a vector of message pointers to us + //auto messages = device->getMessages(); + + // For speed when calling repeatedly, we can also preallocate and continually reuse a vector + std::vector> messages; + messages.reserve(100000); + device->getMessages(messages); + std::cout << "\t\tGot " << messages.size() << " messages while polling" << std::endl; + + // If we wanted to make sure it didn't grow and reallocate, we could also pass in a limit + // If there are more messages than the limit, we can call getMessages repeatedly + //device->getMessages(messages, 100); + + // You are now the owner (or one of the owners, if multiple handlers are registered) of the shared_ptrs to the messages + // This means that when you let them go out of scope or reuse the vector, the messages will be freed automatically + + // We can transmit messages + std::cout << "\tTransmitting an extended CAN FD frame... "; + auto txMessage = std::make_shared(); + txMessage->network = icsneo::Network::NetID::HSCAN; + txMessage->arbid = 0x1C5001C5; + txMessage->data.insert(txMessage->data.end(), {0xaa, 0xbb, 0xcc}); + // The DLC will come from the length of the data vector + txMessage->isExtended = true; + txMessage->isCANFD = true; + ret = device->transmit(txMessage); // This will return false if the device does not support CAN FD, or does not have HSCAN + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + std::cout << "\tTransmitting an ethernet frame on OP (BR) Ethernet 2... "; + auto ethTxMessage = std::make_shared(); + ethTxMessage->network = icsneo::Network::NetID::OP_Ethernet2; + ethTxMessage->data.insert(ethTxMessage->data.end(), { + 0x00, 0xFC, 0x70, 0x00, 0x01, 0x02, /* Destination MAC */ + 0x00, 0xFC, 0x70, 0x00, 0x01, 0x01, /* Source MAC */ + 0x00, 0x00, /* Ether Type */ + 0x01, 0xC5, 0x01, 0xC5 /* Payload (will automatically be padded on transmit unless you set `ethTxMessage->noPadding`) */ + }); + ret = device->transmit(ethTxMessage); // This will return false if the device does not support OP (BR) Ethernet 2 + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + std::this_thread::sleep_for(std::chrono::milliseconds(50)); + + // Go offline, stop sending and receiving traffic + std::cout << "\tGoing offline... "; + ret = device->goOffline(); + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + // Apply default settings + std::cout << "\tSetting default settings... "; + ret = device->settings->applyDefaults(); // This will also write to the device + std::cout << (ret ? "OK" : "FAIL") << std::endl; + + std::cout << "\tDisconnecting... "; + ret = device->close(); + std::cout << (ret ? "OK\n" : "FAIL\n") << std::endl; + } + + std::cout << "Press any key to continue..." << std::endl; + std::cin.get(); + return 0; +} \ No newline at end of file diff --git a/examples/csharp/CMakeLists.txt b/examples/csharp/CMakeLists.txt new file mode 100644 index 0000000..2cff297 --- /dev/null +++ b/examples/csharp/CMakeLists.txt @@ -0,0 +1,26 @@ +cmake_minimum_required(VERSION 3.2) +project(icsneocsharp VERSION 0.2.0) + +set(CMAKE_CXX_STANDARD 11) + +include(GNUInstallDirs) + +# Add an include directory like so if desired +#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) + +# Enable Warnings +if(MSVC) + # Force to always compile with W4 + if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") + string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4") + endif() +else() #if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-switch -Wno-unknown-pragmas") +endif() + +add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../third-party/libicsneo ${CMAKE_CURRENT_BINARY_DIR}/third-party/libicsneo) + +add_library(icsneocsharp SHARED ${CMAKE_CURRENT_SOURCE_DIR}/csharp_wrap.c) +target_link_libraries(icsneocsharp icsneoc) \ No newline at end of file diff --git a/examples/csharp/InteractiveExample.cs b/examples/csharp/InteractiveExample.cs new file mode 100644 index 0000000..2cfae16 --- /dev/null +++ b/examples/csharp/InteractiveExample.cs @@ -0,0 +1,520 @@ +using System.Collections.Generic; + +namespace libicsneocsharp_example { + class InteractiveExample { + + private uint msgLimit = 50000; + private neodevice_t selectedDevice; + private List devices = new List(); + private uint numDevices = 0; + + private void PrintAllDevices() { + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices."); + } + + for(int i = 0; i < numDevices; i++) { + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + if(icsneocsharp.icsneo_describeDevice(devices[i], description, ref maxLength)) { + System.Console.Write("[" + (i + 1) + "] " + description.ToString() + "\tConnected: "); + + if(icsneocsharp.icsneo_isOpen(devices[i])) { + System.Console.Write("Yes\t"); + } else System.Console.Write("No\t"); + + System.Console.Write("Online: "); + if(icsneocsharp.icsneo_isOnline(devices[i])) { + System.Console.Write("Yes\t"); + } else System.Console.Write("No\t"); + + System.Console.Write("Msg Polling: "); + if(icsneocsharp.icsneo_isMessagePollingEnabled(devices[i])) { + System.Console.Write("On\n"); + } else System.Console.Write("Off\n"); + } else { + System.Console.WriteLine("Description for device " + (i + 1) + " not available!"); + } + } + } + + private uint ScanNewDevices() { + neodevice_t newDevices = icsneocsharp.new_neodevice_t_array(99); + + int count = 10; + + icsneocsharp.icsneo_findAllDevices(newDevices, ref count); + + numDevices += (uint) count; + + for(int i = 0; i < numDevices; i++) { + devices.Add(icsneocsharp.neodevice_t_array_getitem(newDevices, i)); + } + icsneocsharp.delete_neodevice_t_array(newDevices); + return (uint) count; + } + + private void PrintMainMenu() { + System.Console.WriteLine("Press the letter next to the function you want to use:"); + System.Console.WriteLine("A - List all devices"); + System.Console.WriteLine("B - Scan for new devices"); + System.Console.WriteLine("C - Open/close"); + System.Console.WriteLine("D - Go online/offline"); + System.Console.WriteLine("E - Enable/disable message polling"); + System.Console.WriteLine("F - Get messages"); + System.Console.WriteLine("G - Send message"); + System.Console.WriteLine("H - Get events"); + System.Console.WriteLine("I - Set HS CAN to 250K"); + System.Console.WriteLine("J - Set HS CAN to 500K"); + System.Console.WriteLine("X - Exit"); + } + + void PrintLastError() { + neoevent_t error = new neoevent_t(); + if(icsneocsharp.icsneo_getLastError(error)) + System.Console.WriteLine("Error 0x" + error.eventNumber + ": " + error.description); + else + System.Console.WriteLine("No errors found!"); + } + + void PrintAPIEvents() { + neoevent_t events = icsneocsharp.new_neoevent_t_array(99); + int eventCount = 99; + if(icsneocsharp.icsneo_getEvents(events, ref eventCount)) { + if(eventCount == 1) { + neoevent_t evt = icsneocsharp.neoevent_t_array_getitem(events, 0); + System.Console.WriteLine("1 API event found!"); + System.Console.WriteLine("Event 0x" + evt.eventNumber + ": " + evt.description); + } else { + System.Console.WriteLine(eventCount + " API events found!"); + for(var i = 0; i < eventCount; ++i) { + neoevent_t evt = icsneocsharp.neoevent_t_array_getitem(events, i); + System.Console.WriteLine("Event 0x" + evt.eventNumber + ": " + evt.description); + } + } + } else { + System.Console.WriteLine("Failed to get API events!"); + } + icsneocsharp.delete_neoevent_t_array(events); + } + + void PrintDeviceEvents(neodevice_t device) { + neoevent_t events = icsneocsharp.new_neoevent_t_array(99); + int eventCount = 99; + if(icsneocsharp.icsneo_getDeviceEvents(device, events, ref eventCount)) { + if(eventCount == 1) { + neoevent_t evt = icsneocsharp.neoevent_t_array_getitem(events, 0); + System.Console.WriteLine("1 device event found!"); + System.Console.WriteLine("Event 0x" + evt.eventNumber + ": " + evt.description); + } else { + System.Console.WriteLine(eventCount + " device events found!"); + for(var i = 0; i < eventCount; ++i) { + neoevent_t evt = icsneocsharp.neoevent_t_array_getitem(events, i); + System.Console.WriteLine("Event 0x" + evt.eventNumber + ": " + evt.description); + } + } + } else { + System.Console.WriteLine("Failed to get API events!"); + } + icsneocsharp.delete_neoevent_t_array(events); + } + + private char GetCharInput(List allowed) { + bool found = false; + char key = '0'; + while(!found) { + key = System.Console.ReadKey().KeyChar; + System.Console.WriteLine(); + foreach(char compare in allowed) { + if(compare == key) { + found = true; + break; + } + } + + if(!found) { + System.Console.WriteLine("Input did not match expected options. Please try again."); + } + } + return key; + } + + neodevice_t SelectDevice() { + System.Console.WriteLine("Please select a device:"); + PrintAllDevices(); + System.Console.WriteLine(); + + int selectedDeviceNum = 10; + while(selectedDeviceNum > numDevices) { + char deviceSelection = GetCharInput(new List { '1', '2', '3', '4', '5', '6', '7', '8', '9' }); + selectedDeviceNum = (int)char.GetNumericValue(deviceSelection); + if(selectedDeviceNum > numDevices) { + System.Console.WriteLine("Selected device out of range!"); + } + } + + System.Console.WriteLine(); + + return devices[selectedDeviceNum - 1]; + } + + public void Run() { + neoversion_t version = icsneocsharp.icsneo_getVersion(); + System.Console.WriteLine("ICS icsneocsharp.dll version " + version.major + "." + version.minor + "." + version.patch); + System.Console.WriteLine(); + + while(true) { + PrintMainMenu(); + System.Console.WriteLine(); + char input = GetCharInput(new List { 'A', 'a', 'B', 'b', 'C', 'c', 'D', 'd', 'E', 'e', 'F', 'f', 'G', 'g', 'H', 'h', 'I', 'i', 'J', 'j', 'X', 'x' }); + System.Console.WriteLine(); + switch(input) { + // List current devices + case 'A': + goto case 'a'; + case 'a': + PrintAllDevices(); + System.Console.WriteLine(); + break; + // Scan for new devices + case 'B': + goto case 'b'; + case 'b': { + var numNewDevices = ScanNewDevices(); + if(numNewDevices == 1) { + System.Console.WriteLine("1 new device found!"); + } else { + System.Console.WriteLine(numNewDevices + " new devices found!"); + } + PrintAllDevices(); + System.Console.WriteLine(); + break; + } + // Open/close a device + case 'C': + goto case 'c'; + case 'c': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + System.Console.WriteLine("Would you like to open or close " + description + "?"); + System.Console.WriteLine("[1] Open\n[2] Close\n[3] Cancel\n"); + + char option = GetCharInput(new List { '1', '2', '3' }); + System.Console.WriteLine(); + + switch(option) { + case '1': + // Attempt to open the selected device + if(icsneocsharp.icsneo_openDevice(selectedDevice)) { + System.Console.WriteLine(description + " successfully opened!\n"); + } else { + System.Console.WriteLine(description + " failed to open!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + case '2': + // Attempt to close the device + if(icsneocsharp.icsneo_closeDevice(selectedDevice)) { + numDevices--; + System.Console.WriteLine("Successfully closed " + description + "!\n"); + devices.Remove(selectedDevice); + selectedDevice = null; + } else { + System.Console.WriteLine("Failed to close " + description.ToString() + "!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + default: + System.Console.WriteLine("Canceling!\n"); + break; + } + break; + } + // Go online/offline + case 'D': + goto case 'd'; + case 'd': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + System.Console.WriteLine("Would you like to have " + description.ToString() + " go online or offline?"); + System.Console.WriteLine("[1] Online\n[2] Offline\n[3] Cancel\n"); + + char option = GetCharInput(new List { '1', '2', '3' }); + System.Console.WriteLine(); + + switch(option) { + case '1': + // Attempt to go online + if(icsneocsharp.icsneo_goOnline(selectedDevice)) { + System.Console.WriteLine(description + " successfully went online!\n"); + } else { + System.Console.WriteLine(description + " failed to go online!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + case '2': + // Attempt to go offline + if(icsneocsharp.icsneo_goOffline(selectedDevice)) { + System.Console.WriteLine(description + " successfully went offline!\n"); + } else { + System.Console.WriteLine(description + " failed to go offline!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + default: + System.Console.WriteLine("Canceling!\n"); + break; + } + break; + } + // Enable/disable message polling + case 'E': + goto case 'e'; + case 'e': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + System.Console.WriteLine("Would you like to enable or disable message polling for " + description.ToString() + "?"); + System.Console.WriteLine("[1] Enable\n[2] Disable\n[3] Cancel\n"); + + char option = GetCharInput(new List { '1', '2', '3' }); + System.Console.WriteLine(); + + switch(option) { + case '1': + // Attempt to enable message polling + if(icsneocsharp.icsneo_enableMessagePolling(selectedDevice)) { + System.Console.WriteLine("Successfully enabled message polling for " + description.ToString() + "!\n"); + } else { + System.Console.WriteLine("Failed to enable message polling for " + description.ToString() + "!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + + // Manually setting the polling message limit as done below is optional + // It will default to 20k if not set + // Attempt to set the polling message limit + if(icsneocsharp.icsneo_setPollingMessageLimit(selectedDevice, msgLimit)) { + System.Console.WriteLine("Successfully set message polling limit for " + description.ToString() + "!\n"); + } else { + System.Console.WriteLine("Failed to set polling message limit for " + description.ToString() + "!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + case '2': + // Attempt to disable message polling + if(icsneocsharp.icsneo_disableMessagePolling(selectedDevice)) { + System.Console.WriteLine("Successfully disabled message polling for " + description.ToString() + "!\n"); + } else { + System.Console.WriteLine("Failed to disable message polling for " + description.ToString() + "!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + default: + System.Console.WriteLine("Canceling!\n"); + break; + } + } + break; + case 'F': + goto case 'f'; + case 'f': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + // Prepare the neomessage_t array and size for reading in the messages + neomessage_t msgs = icsneocsharp.new_neomessage_t_array((int)msgLimit); + int msgCount = (int)msgLimit; + + if(!icsneocsharp.icsneo_getMessages(selectedDevice, msgs, ref msgCount, 0)) { + System.Console.WriteLine("Failed to get messages for " + description.ToString() + "!\n"); + PrintLastError(); + icsneocsharp.delete_neomessage_t_array(msgs); + System.Console.WriteLine(); + break; + } + + if(msgCount == 1) { + System.Console.WriteLine("1 message received from " + description.ToString() + "!"); + } else { + System.Console.WriteLine(msgCount + " messages received from " + description.ToString() + "!"); + } + + // Print out the received messages + for(int i = 0; i < msgCount; i++) { + neomessage_t msg = icsneocsharp.neomessage_t_array_getitem(msgs, i); + if(msg.type == icsneocsharp.ICSNEO_NETWORK_TYPE_CAN) { + System.Console.Write("\t0x" + "{0:x}" + " [" + msg.length + "] ", icsneocsharp.neomessage_can_t_cast(msg).arbid); + for(int j = 0; j < msg.length; j++) { + System.Console.Write("{0:x} ", icsneocsharp.neomessage_can_t_cast(msg).data[j]); + } + System.Console.WriteLine("(" + msg.timestamp + ")"); + } else { + if(msg.netid != 0) + System.Console.WriteLine("\tMessage on netid " + msg.netid + " with length " + msg.length); + } + } + icsneocsharp.delete_neomessage_t_array(msgs); + break; + } + // Send message + case 'G': + goto case 'g'; + case 'g': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + // Start generating sample msg + neomessage_can_t msg = new neomessage_can_t(); + msg.arbid = 0x120; + msg.length = 6; + msg.netid = (ushort)icsneocsharp.ICSNEO_NETID_HSCAN; + msg.data = new byte[6] { 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff }; + msg.status.canfdFDF = 0; + msg.status.extendedFrame = 0; + msg.status.canfdBRS = 0; + // End generating sample msg + + // Attempt to transmit the sample msg + if(icsneocsharp.icsneo_transmit(selectedDevice, icsneocsharp.from_can_neomessage_t_cast(msg))) { + System.Console.WriteLine("Message transmit successful!"); + } else { + System.Console.WriteLine("Failed to transmit message to " + description.ToString() + "!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + } + // Get events + case 'H': + goto case 'h'; + case 'h': + PrintAPIEvents(); + System.Console.WriteLine(); + break; + // Set HS CAN to 250k + case 'I': + goto case 'i'; + case 'i': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + // Attempt to set baudrate and apply settings + if(icsneocsharp.icsneo_setBaudrate(selectedDevice, (ushort)icsneocsharp.ICSNEO_NETID_HSCAN, 250000) && icsneocsharp.icsneo_settingsApply(selectedDevice)) { + System.Console.WriteLine("Successfully set HS CAN baudrate for " + description.ToString() + "to 250k!\n"); + } else { + System.Console.WriteLine("Failed to set HS CAN for " + description.ToString() + " to 250k!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + } + // Set HS CAN to 500k + case 'J': + goto case 'j'; + case 'j': { + // Select a device and get its description + if(numDevices == 0) { + System.Console.WriteLine("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = SelectDevice(); + + // Get the product description for the device + System.Text.StringBuilder description = new System.Text.StringBuilder(icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int maxLength = icsneocsharp.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION; + + icsneocsharp.icsneo_describeDevice(selectedDevice, description, ref maxLength); + + // Attempt to set baudrate and apply settings + if(icsneocsharp.icsneo_setBaudrate(selectedDevice, (ushort)icsneocsharp.ICSNEO_NETID_HSCAN, 500000) && icsneocsharp.icsneo_settingsApply(selectedDevice)) { + System.Console.WriteLine("Successfully set HS CAN baudrate for " + description.ToString() + "to 500k!\n"); + } else { + System.Console.WriteLine("Failed to set HS CAN for " + description.ToString() + " to 500k!\n"); + PrintLastError(); + System.Console.WriteLine(); + } + break; + } + case 'X': + goto case 'x'; + case 'x': + System.Console.WriteLine("Exiting program"); + return; + default: + System.Console.WriteLine("Unexpected input, exiting!"); + return; + } + } + } + } +} \ No newline at end of file diff --git a/examples/csharp/Program.cs b/examples/csharp/Program.cs new file mode 100644 index 0000000..ad16197 --- /dev/null +++ b/examples/csharp/Program.cs @@ -0,0 +1,8 @@ +namespace libicsneocsharp_example { + class Program { + static void Main(string[] args) { + InteractiveExample example = new InteractiveExample(); + example.Run(); + } + } +} \ No newline at end of file diff --git a/examples/csharp/README.md b/examples/csharp/README.md new file mode 100644 index 0000000..ae3a52d --- /dev/null +++ b/examples/csharp/README.md @@ -0,0 +1,57 @@ +# libicsneo C# Example + +This is an example console application that uses the icsneocsharp library to control an Intrepid Control Systems hardware device. + +## Cloning + +This will create a copy of the repository on your local machine. + +Run: + +```shell +git clone https://github.com/intrepidcs/libicsneo-examples --recursive +``` + +Alternatively, if you cloned without the `--recursive` flag, you must enter the `libicsneo-examples` folder and run the following: + +```shell +git submodule update --recursive --init +``` + +If you haven't done this, `third-party/libicsneo` will be empty and you won't be able to build! + +## Windows using Visual Studio 2017+ + +### Building the DLLs + +#### icsneoc + +First, we are going to build the icsneoc library into a .dll file that is used by the C# wrapper to access the library functions. + +1. Launch Visual Studio and open the `libicsneo-examples` folder. +2. Choose `File->Open->Cmake...` +3. Navigate to `third-party/libicsneo` and select the `CMakeLists.txt` there. +4. Visual Studio will process the CMake project. +5. Select `Build->Rebuild All` +6. Visual Studio will generate the `icsneoc.dll` file, which can then be found by selecting `Project->Cmake Cache (x64-Debug Only)->Open in Explorer`. If the file cannot be found, search in `libicsneo-examples/third-party/libicsneo/out/build/x64-Debug` and double-check that the build succeeded in step 5. +7. Move the `icsneoc.dll` file to the `/C/Windows/System32` folder. + +#### icsneocsharp + +Next, we are going to build the wrapper functions into a .dll file that is used to access the library functions in C#. + +1. Launch a terminal window and change directories into `libicsneo-examples/libicsneocsharp-example`, then create a build directory by running `mkdir -p build` +2. Enter the build directory with `cd build` +3. Run `cmake ..` +4. Run `cmake --build .` +5. The `icsneocsharp.dll` file will be generated in `libicsneo-examples/libicsneocsharp-example/build/Debug` +6. Move the `icsneocsharp.dll` file to the `/C/Windows/System32` folder. + +### Building the example program + +1. Choose `File->Open->Project/Solution...` +2. Navigate to `libicsneo-examples/libicsneocsharp-example` and select the `libicsneocsharp-example.sln` there. +3. Visual Studio will process the project. +4. Select `Build->Rebuild Solution` +5. Click on the dropdown arrow attached to the green play button (labelled "Select Startup Item") and select `libicsneocsharp-example` +6. Click on the green play button to run the example. diff --git a/examples/csharp/SWIGTYPE_p_time_t.cs b/examples/csharp/SWIGTYPE_p_time_t.cs new file mode 100644 index 0000000..45be837 --- /dev/null +++ b/examples/csharp/SWIGTYPE_p_time_t.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class SWIGTYPE_p_time_t { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + + internal SWIGTYPE_p_time_t(global::System.IntPtr cPtr, bool futureUse) { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + protected SWIGTYPE_p_time_t() { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SWIGTYPE_p_time_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } +} diff --git a/examples/csharp/SWIGTYPE_p_unsigned_char.cs b/examples/csharp/SWIGTYPE_p_unsigned_char.cs new file mode 100644 index 0000000..0acba32 --- /dev/null +++ b/examples/csharp/SWIGTYPE_p_unsigned_char.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class SWIGTYPE_p_unsigned_char { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + + internal SWIGTYPE_p_unsigned_char(global::System.IntPtr cPtr, bool futureUse) { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + protected SWIGTYPE_p_unsigned_char() { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SWIGTYPE_p_unsigned_char obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } +} diff --git a/examples/csharp/SWIGTYPE_p_unsigned_int.cs b/examples/csharp/SWIGTYPE_p_unsigned_int.cs new file mode 100644 index 0000000..ede39c0 --- /dev/null +++ b/examples/csharp/SWIGTYPE_p_unsigned_int.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class SWIGTYPE_p_unsigned_int { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + + internal SWIGTYPE_p_unsigned_int(global::System.IntPtr cPtr, bool futureUse) { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + protected SWIGTYPE_p_unsigned_int() { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SWIGTYPE_p_unsigned_int obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } +} diff --git a/examples/csharp/SWIGTYPE_p_unsigned_short.cs b/examples/csharp/SWIGTYPE_p_unsigned_short.cs new file mode 100644 index 0000000..bbc322e --- /dev/null +++ b/examples/csharp/SWIGTYPE_p_unsigned_short.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class SWIGTYPE_p_unsigned_short { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + + internal SWIGTYPE_p_unsigned_short(global::System.IntPtr cPtr, bool futureUse) { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + protected SWIGTYPE_p_unsigned_short() { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SWIGTYPE_p_unsigned_short obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } +} diff --git a/examples/csharp/SWIGTYPE_p_void.cs b/examples/csharp/SWIGTYPE_p_void.cs new file mode 100644 index 0000000..3f66afa --- /dev/null +++ b/examples/csharp/SWIGTYPE_p_void.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class SWIGTYPE_p_void { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + + internal SWIGTYPE_p_void(global::System.IntPtr cPtr, bool futureUse) { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + protected SWIGTYPE_p_void() { + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SWIGTYPE_p_void obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } +} diff --git a/examples/csharp/csharp.i b/examples/csharp/csharp.i new file mode 100644 index 0000000..0578425 --- /dev/null +++ b/examples/csharp/csharp.i @@ -0,0 +1,76 @@ +%module icsneocsharp +%include +%include +%include +%include +%include + +#define DLLExport + +%typemap(ctype) uint8_t const *data "unsigned char *" +%typemap(imtype, out="System.IntPtr") uint8_t const *data "byte[]" +%typemap(cstype) uint8_t const *data "byte[]" + +%typemap(in) uint8_t const *data %{ + $1 = $input; +%} + +%typemap(csvarin) uint8_t const *data %{ + set { + icsneocsharpPINVOKE.$csclazznamedata_set(swigCPtr, value); + } +%} + +%typemap(csvarout, excode=SWIGEXCODE2) uint8_t const *data %{ + get { + byte[] ret = new byte[this.length]; + System.IntPtr data = $imcall; + System.Runtime.InteropServices.Marshal.Copy(data, ret, 0, (int)this.length)$excode; + return ret; + } +%} + +%typemap(ctype) char *str "char *" +%typemap(imtype) char *str "System.Text.StringBuilder" +%typemap(cstype) char *str "System.Text.StringBuilder" + +%{ +#include "icsneo/icsneoc.h" +%} + +%apply int *INOUT {size_t *}; + +%ignore icsneo_addMessageCallback; +%ignore icsneo_removeMessageCallback; +%ignore icsneo_addEventCallback; +%ignore icsneo_removeEventCallback; + +%include "icsneo/icsneoc.h" +%include "icsneo/device/neodevice.h" +%include "icsneo/communication/message/neomessage.h" +%include "icsneo/device/devicetype.h" +%include "icsneo/api/version.h" +%include "icsneo/api/event.h" +%include "icsneo/communication/network.h" + +%inline %{ +static neomessage_can_t* neomessage_can_t_cast(neomessage_t* msg) { + return (neomessage_can_t*) msg; +} + +static neomessage_eth_t* neomessage_eth_t_cast(neomessage_t* msg) { + return (neomessage_eth_t*) msg; +} + +static neomessage_t* from_can_neomessage_t_cast(neomessage_can_t* msg) { + return (neomessage_t*) msg; +} + +static neomessage_t* from_eth_neomessage_t_cast(neomessage_eth_t* msg) { + return (neomessage_t*) msg; +} +%} + +%array_functions(neodevice_t, neodevice_t_array); +%array_functions(neoevent_t, neoevent_t_array); +%array_functions(neomessage_t, neomessage_t_array); \ No newline at end of file diff --git a/examples/csharp/csharp_wrap.c b/examples/csharp/csharp_wrap.c new file mode 100644 index 0000000..6c4d4bf --- /dev/null +++ b/examples/csharp/csharp_wrap.c @@ -0,0 +1,4713 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + + +#ifndef SWIGCSHARP +#define SWIGCSHARP +#endif + + +/* ----------------------------------------------------------------------------- + * This section contains generic SWIG labels for method/variable + * declarations/attributes, and other compiler dependent labels. + * ----------------------------------------------------------------------------- */ + +/* template workaround for compilers that cannot correctly implement the C++ standard */ +#ifndef SWIGTEMPLATEDISAMBIGUATOR +# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) +# define SWIGTEMPLATEDISAMBIGUATOR template +# elif defined(__HP_aCC) +/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */ +/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */ +# define SWIGTEMPLATEDISAMBIGUATOR template +# else +# define SWIGTEMPLATEDISAMBIGUATOR +# endif +#endif + +/* inline attribute */ +#ifndef SWIGINLINE +# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) +# define SWIGINLINE inline +# else +# define SWIGINLINE +# endif +#endif + +/* attribute recognised by some compilers to avoid 'unused' warnings */ +#ifndef SWIGUNUSED +# if defined(__GNUC__) +# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +# define SWIGUNUSED __attribute__ ((__unused__)) +# else +# define SWIGUNUSED +# endif +# elif defined(__ICC) +# define SWIGUNUSED __attribute__ ((__unused__)) +# else +# define SWIGUNUSED +# endif +#endif + +#ifndef SWIG_MSC_UNSUPPRESS_4505 +# if defined(_MSC_VER) +# pragma warning(disable : 4505) /* unreferenced local function has been removed */ +# endif +#endif + +#ifndef SWIGUNUSEDPARM +# ifdef __cplusplus +# define SWIGUNUSEDPARM(p) +# else +# define SWIGUNUSEDPARM(p) p SWIGUNUSED +# endif +#endif + +/* internal SWIG method */ +#ifndef SWIGINTERN +# define SWIGINTERN static SWIGUNUSED +#endif + +/* internal inline SWIG method */ +#ifndef SWIGINTERNINLINE +# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE +#endif + +/* exporting methods */ +#if defined(__GNUC__) +# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) +# ifndef GCC_HASCLASSVISIBILITY +# define GCC_HASCLASSVISIBILITY +# endif +# endif +#endif + +#ifndef SWIGEXPORT +# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +# if defined(STATIC_LINKED) +# define SWIGEXPORT +# else +# define SWIGEXPORT __declspec(dllexport) +# endif +# else +# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) +# define SWIGEXPORT __attribute__ ((visibility("default"))) +# else +# define SWIGEXPORT +# endif +# endif +#endif + +/* calling conventions for Windows */ +#ifndef SWIGSTDCALL +# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +# define SWIGSTDCALL __stdcall +# else +# define SWIGSTDCALL +# endif +#endif + +/* Deal with Microsoft's attempt at deprecating C standard runtime functions */ +#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) +# define _CRT_SECURE_NO_DEPRECATE +#endif + +/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */ +#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE) +# define _SCL_SECURE_NO_DEPRECATE +#endif + +/* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */ +#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES) +# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 +#endif + +/* Intel's compiler complains if a variable which was never initialised is + * cast to void, which is a common idiom which we use to indicate that we + * are aware a variable isn't used. So we just silence that warning. + * See: https://github.com/swig/swig/issues/192 for more discussion. + */ +#ifdef __INTEL_COMPILER +# pragma warning disable 592 +#endif + + +#include +#include +#include + + +/* Support for throwing C# exceptions from C/C++. There are two types: + * Exceptions that take a message and ArgumentExceptions that take a message and a parameter name. */ +typedef enum { + SWIG_CSharpApplicationException, + SWIG_CSharpArithmeticException, + SWIG_CSharpDivideByZeroException, + SWIG_CSharpIndexOutOfRangeException, + SWIG_CSharpInvalidCastException, + SWIG_CSharpInvalidOperationException, + SWIG_CSharpIOException, + SWIG_CSharpNullReferenceException, + SWIG_CSharpOutOfMemoryException, + SWIG_CSharpOverflowException, + SWIG_CSharpSystemException +} SWIG_CSharpExceptionCodes; + +typedef enum { + SWIG_CSharpArgumentException, + SWIG_CSharpArgumentNullException, + SWIG_CSharpArgumentOutOfRangeException +} SWIG_CSharpExceptionArgumentCodes; + +typedef void (SWIGSTDCALL* SWIG_CSharpExceptionCallback_t)(const char *); +typedef void (SWIGSTDCALL* SWIG_CSharpExceptionArgumentCallback_t)(const char *, const char *); + +typedef struct { + SWIG_CSharpExceptionCodes code; + SWIG_CSharpExceptionCallback_t callback; +} SWIG_CSharpException_t; + +typedef struct { + SWIG_CSharpExceptionArgumentCodes code; + SWIG_CSharpExceptionArgumentCallback_t callback; +} SWIG_CSharpExceptionArgument_t; + +static SWIG_CSharpException_t SWIG_csharp_exceptions[] = { + { SWIG_CSharpApplicationException, NULL }, + { SWIG_CSharpArithmeticException, NULL }, + { SWIG_CSharpDivideByZeroException, NULL }, + { SWIG_CSharpIndexOutOfRangeException, NULL }, + { SWIG_CSharpInvalidCastException, NULL }, + { SWIG_CSharpInvalidOperationException, NULL }, + { SWIG_CSharpIOException, NULL }, + { SWIG_CSharpNullReferenceException, NULL }, + { SWIG_CSharpOutOfMemoryException, NULL }, + { SWIG_CSharpOverflowException, NULL }, + { SWIG_CSharpSystemException, NULL } +}; + +static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = { + { SWIG_CSharpArgumentException, NULL }, + { SWIG_CSharpArgumentNullException, NULL }, + { SWIG_CSharpArgumentOutOfRangeException, NULL } +}; + +static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) { + SWIG_CSharpExceptionCallback_t callback = SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback; + if ((size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) { + callback = SWIG_csharp_exceptions[code].callback; + } + callback(msg); +} + +static void SWIGUNUSED SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpExceptionArgumentCodes code, const char *msg, const char *param_name) { + SWIG_CSharpExceptionArgumentCallback_t callback = SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback; + if ((size_t)code < sizeof(SWIG_csharp_exceptions_argument)/sizeof(SWIG_CSharpExceptionArgument_t)) { + callback = SWIG_csharp_exceptions_argument[code].callback; + } + callback(msg, param_name); +} + + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionCallbacks_icsneocsharp( + SWIG_CSharpExceptionCallback_t applicationCallback, + SWIG_CSharpExceptionCallback_t arithmeticCallback, + SWIG_CSharpExceptionCallback_t divideByZeroCallback, + SWIG_CSharpExceptionCallback_t indexOutOfRangeCallback, + SWIG_CSharpExceptionCallback_t invalidCastCallback, + SWIG_CSharpExceptionCallback_t invalidOperationCallback, + SWIG_CSharpExceptionCallback_t ioCallback, + SWIG_CSharpExceptionCallback_t nullReferenceCallback, + SWIG_CSharpExceptionCallback_t outOfMemoryCallback, + SWIG_CSharpExceptionCallback_t overflowCallback, + SWIG_CSharpExceptionCallback_t systemCallback) { + SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback = applicationCallback; + SWIG_csharp_exceptions[SWIG_CSharpArithmeticException].callback = arithmeticCallback; + SWIG_csharp_exceptions[SWIG_CSharpDivideByZeroException].callback = divideByZeroCallback; + SWIG_csharp_exceptions[SWIG_CSharpIndexOutOfRangeException].callback = indexOutOfRangeCallback; + SWIG_csharp_exceptions[SWIG_CSharpInvalidCastException].callback = invalidCastCallback; + SWIG_csharp_exceptions[SWIG_CSharpInvalidOperationException].callback = invalidOperationCallback; + SWIG_csharp_exceptions[SWIG_CSharpIOException].callback = ioCallback; + SWIG_csharp_exceptions[SWIG_CSharpNullReferenceException].callback = nullReferenceCallback; + SWIG_csharp_exceptions[SWIG_CSharpOutOfMemoryException].callback = outOfMemoryCallback; + SWIG_csharp_exceptions[SWIG_CSharpOverflowException].callback = overflowCallback; + SWIG_csharp_exceptions[SWIG_CSharpSystemException].callback = systemCallback; +} + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionArgumentCallbacks_icsneocsharp( + SWIG_CSharpExceptionArgumentCallback_t argumentCallback, + SWIG_CSharpExceptionArgumentCallback_t argumentNullCallback, + SWIG_CSharpExceptionArgumentCallback_t argumentOutOfRangeCallback) { + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback = argumentCallback; + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentNullException].callback = argumentNullCallback; + SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentOutOfRangeException].callback = argumentOutOfRangeCallback; +} + + +/* Callback for returning strings to C# without leaking memory */ +typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *); +static SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback = NULL; + + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT void SWIGSTDCALL SWIGRegisterStringCallback_icsneocsharp(SWIG_CSharpStringHelperCallback callback) { + SWIG_csharp_string_callback = callback; +} + + +/* Contract support */ + +#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentOutOfRangeException, msg, ""); return nullreturn; } else + + +#include // Use the C99 official header + + +#include "icsneo/icsneoc.h" + + +static neomessage_can_t* neomessage_can_t_cast(neomessage_t* msg) { + return (neomessage_can_t*) msg; +} + +static neomessage_eth_t* neomessage_eth_t_cast(neomessage_t* msg) { + return (neomessage_eth_t*) msg; +} + +static neomessage_t* from_can_neomessage_t_cast(neomessage_can_t* msg) { + return (neomessage_t*) msg; +} + +static neomessage_t* from_eth_neomessage_t_cast(neomessage_eth_t* msg) { + return (neomessage_t*) msg; +} + + +static neodevice_t *new_neodevice_t_array(int nelements) { + return (neodevice_t *) calloc(nelements,sizeof(neodevice_t)); +} + +static void delete_neodevice_t_array(neodevice_t *ary) { + free(ary); +} + +static neodevice_t neodevice_t_array_getitem(neodevice_t *ary, int index) { + return ary[index]; +} +static void neodevice_t_array_setitem(neodevice_t *ary, int index, neodevice_t value) { + ary[index] = value; +} + + +static neoevent_t *new_neoevent_t_array(int nelements) { + return (neoevent_t *) calloc(nelements,sizeof(neoevent_t)); +} + +static void delete_neoevent_t_array(neoevent_t *ary) { + free(ary); +} + +static neoevent_t neoevent_t_array_getitem(neoevent_t *ary, int index) { + return ary[index]; +} +static void neoevent_t_array_setitem(neoevent_t *ary, int index, neoevent_t value) { + ary[index] = value; +} + + +static neomessage_t *new_neomessage_t_array(int nelements) { + return (neomessage_t *) calloc(nelements,sizeof(neomessage_t)); +} + +static void delete_neomessage_t_array(neomessage_t *ary) { + free(ary); +} + +static neomessage_t neomessage_t_array_getitem(neomessage_t *ary, int index) { + return ary[index]; +} +static void neomessage_t_array_setitem(neomessage_t *ary, int index, neomessage_t value) { + ary[index] = value; +} + + +#ifdef __cplusplus +extern "C" { +#endif + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_findAllDevices(void * jarg1, int * jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (size_t *)jarg2; + icsneo_findAllDevices(arg1,arg2); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_freeUnconnectedDevices() { + icsneo_freeUnconnectedDevices(); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_serialNumToString(unsigned int jarg1, char * jarg2, int * jarg3) { + unsigned int jresult ; + uint32_t arg1 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + arg1 = (uint32_t)jarg1; + arg2 = (char *)jarg2; + arg3 = (size_t *)jarg3; + result = (bool)icsneo_serialNumToString(arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_serialStringToNum(char * jarg1) { + unsigned int jresult ; + char *arg1 = (char *) 0 ; + uint32_t result; + + arg1 = (char *)jarg1; + result = (uint32_t)icsneo_serialStringToNum((char const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_isValidNeoDevice(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_isValidNeoDevice((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_openDevice(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_openDevice((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_closeDevice(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_closeDevice((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_isOpen(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_isOpen((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_goOnline(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_goOnline((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_goOffline(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_goOffline((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_isOnline(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_isOnline((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_enableMessagePolling(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_enableMessagePolling((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_disableMessagePolling(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_disableMessagePolling((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_isMessagePollingEnabled(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_isMessagePollingEnabled((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getMessages(void * jarg1, void * jarg2, int * jarg3, unsigned long long jarg4) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + size_t *arg3 = (size_t *) 0 ; + uint64_t arg4 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (neomessage_t *)jarg2; + arg3 = (size_t *)jarg3; + arg4 = (uint64_t)jarg4; + result = (bool)icsneo_getMessages((neodevice_t const *)arg1,arg2,arg3,arg4); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned long SWIGSTDCALL CSharp_icsneo_getPollingMessageLimit(void * jarg1) { + unsigned long jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t result; + + arg1 = (neodevice_t *)jarg1; + result = icsneo_getPollingMessageLimit((neodevice_t const *)arg1); + jresult = (unsigned long)result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_setPollingMessageLimit(void * jarg1, unsigned long jarg2) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t arg2 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (size_t)jarg2; + result = (bool)icsneo_setPollingMessageLimit((neodevice_t const *)arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getProductName(void * jarg1, char * jarg2, int * jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (char *)jarg2; + arg3 = (size_t *)jarg3; + result = (bool)icsneo_getProductName((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getProductNameForType(unsigned int jarg1, char * jarg2, int * jarg3) { + unsigned int jresult ; + devicetype_t arg1 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + arg1 = (devicetype_t)jarg1; + arg2 = (char *)jarg2; + arg3 = (size_t *)jarg3; + result = (bool)icsneo_getProductNameForType(arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsRefresh(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_settingsRefresh((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApply(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_settingsApply((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApplyTemporary(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_settingsApplyTemporary((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApplyDefaults(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_settingsApplyDefaults((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApplyDefaultsTemporary(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + result = (bool)icsneo_settingsApplyDefaultsTemporary((neodevice_t const *)arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_icsneo_settingsReadStructure(void * jarg1, void * jarg2, unsigned long jarg3) { + int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + int result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (void *)jarg2; + arg3 = (size_t)jarg3; + result = (int)icsneo_settingsReadStructure((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApplyStructure(void * jarg1, void * jarg2, unsigned long jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (void *)jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_settingsApplyStructure((neodevice_t const *)arg1,(void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_settingsApplyStructureTemporary(void * jarg1, void * jarg2, unsigned long jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (void *)jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_settingsApplyStructureTemporary((neodevice_t const *)arg1,(void const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT long long SWIGSTDCALL CSharp_icsneo_getBaudrate(void * jarg1, unsigned short jarg2) { + long long jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (uint16_t)jarg2; + result = (int64_t)icsneo_getBaudrate((neodevice_t const *)arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_setBaudrate(void * jarg1, unsigned short jarg2, long long jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t arg3 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (uint16_t)jarg2; + arg3 = (int64_t)jarg3; + result = (bool)icsneo_setBaudrate((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT long long SWIGSTDCALL CSharp_icsneo_getFDBaudrate(void * jarg1, unsigned short jarg2) { + long long jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (uint16_t)jarg2; + result = (int64_t)icsneo_getFDBaudrate((neodevice_t const *)arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_setFDBaudrate(void * jarg1, unsigned short jarg2, long long jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t arg3 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (uint16_t)jarg2; + arg3 = (int64_t)jarg3; + result = (bool)icsneo_setFDBaudrate((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_transmit(void * jarg1, void * jarg2) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (neomessage_t *)jarg2; + result = (bool)icsneo_transmit((neodevice_t const *)arg1,(neomessage_t const *)arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_transmitMessages(void * jarg1, void * jarg2, unsigned long jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + size_t arg3 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (neomessage_t *)jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_transmitMessages((neodevice_t const *)arg1,(neomessage_t const *)arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_setWriteBlocks(void * jarg1, unsigned int jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool arg2 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = jarg2 ? true : false; + icsneo_setWriteBlocks((neodevice_t const *)arg1,arg2); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_describeDevice(void * jarg1, char * jarg2, int * jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (char *)jarg2; + arg3 = (size_t *)jarg3; + result = (bool)icsneo_describeDevice((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_icsneo_getVersion() { + void * jresult ; + neoversion_t result; + + result = icsneo_getVersion(); + { + neoversion_t * resultptr = (neoversion_t *) malloc(sizeof(neoversion_t)); + memmove(resultptr, &result, sizeof(neoversion_t)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getEvents(void * jarg1, int * jarg2) { + unsigned int jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + bool result; + + arg1 = (neoevent_t *)jarg1; + arg2 = (size_t *)jarg2; + result = (bool)icsneo_getEvents(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getDeviceEvents(void * jarg1, void * jarg2, int * jarg3) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neoevent_t *arg2 = (neoevent_t *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (neoevent_t *)jarg2; + arg3 = (size_t *)jarg3; + result = (bool)icsneo_getDeviceEvents((neodevice_t const *)arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getLastError(void * jarg1) { + unsigned int jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + bool result; + + arg1 = (neoevent_t *)jarg1; + result = (bool)icsneo_getLastError(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_discardAllEvents() { + icsneo_discardAllEvents(); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_discardDeviceEvents(void * jarg1) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + arg1 = (neodevice_t *)jarg1; + icsneo_discardDeviceEvents((neodevice_t const *)arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_icsneo_setEventLimit(unsigned long jarg1) { + size_t arg1 ; + + arg1 = (size_t)jarg1; + icsneo_setEventLimit(arg1); +} + + +SWIGEXPORT unsigned long SWIGSTDCALL CSharp_icsneo_getEventLimit() { + unsigned long jresult ; + size_t result; + + result = icsneo_getEventLimit(); + jresult = (unsigned long)result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getSupportedDevices(void * jarg1, int * jarg2) { + unsigned int jresult ; + devicetype_t *arg1 = (devicetype_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + bool result; + + arg1 = (devicetype_t *)jarg1; + arg2 = (size_t *)jarg2; + result = (bool)icsneo_getSupportedDevices(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_icsneo_getTimestampResolution(void * jarg1, void * jarg2) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t *arg2 = (uint16_t *) 0 ; + bool result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (uint16_t *)jarg2; + result = (bool)icsneo_getTimestampResolution((neodevice_t const *)arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neodevice_t_device_set(void * jarg1, void * jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicehandle_t arg2 = (devicehandle_t) 0 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (devicehandle_t)jarg2; + if (arg1) (arg1)->device = arg2; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neodevice_t_device_get(void * jarg1) { + void * jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicehandle_t result; + + arg1 = (neodevice_t *)jarg1; + result = (devicehandle_t) ((arg1)->device); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neodevice_t_handle_set(void * jarg1, int jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + neodevice_handle_t arg2 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (neodevice_handle_t)jarg2; + if (arg1) (arg1)->handle = arg2; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_neodevice_t_handle_get(void * jarg1) { + int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neodevice_handle_t result; + + arg1 = (neodevice_t *)jarg1; + result = (neodevice_handle_t) ((arg1)->handle); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neodevice_t_type_set(void * jarg1, unsigned int jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicetype_t arg2 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (devicetype_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neodevice_t_type_get(void * jarg1) { + unsigned int jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicetype_t result; + + arg1 = (neodevice_t *)jarg1; + result = (devicetype_t) ((arg1)->type); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neodevice_t_serial_set(void * jarg1, char * jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (char *)jarg2; + { + if(arg2) { + strncpy((char*)arg1->serial, (const char *)arg2, 7-1); + arg1->serial[7-1] = 0; + } else { + arg1->serial[0] = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neodevice_t_serial_get(void * jarg1) { + char * jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *result = 0 ; + + arg1 = (neodevice_t *)jarg1; + result = (char *)(char *) ((arg1)->serial); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neodevice_t() { + void * jresult ; + neodevice_t *result = 0 ; + + result = (neodevice_t *)calloc(1, sizeof(neodevice_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neodevice_t(void * jarg1) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + arg1 = (neodevice_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_globalError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->globalError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_globalError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->globalError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_transmitMessage_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->transmitMessage = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_transmitMessage_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->transmitMessage); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_extendedFrame_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->extendedFrame = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_extendedFrame_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->extendedFrame); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_remoteFrame_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->remoteFrame = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_remoteFrame_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->remoteFrame); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_crcError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->crcError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_crcError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->crcError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canErrorPassive_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canErrorPassive = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canErrorPassive_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canErrorPassive); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_incompleteFrame_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->incompleteFrame = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_incompleteFrame_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->incompleteFrame); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_lostArbitration_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->lostArbitration = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_lostArbitration_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->lostArbitration); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_undefinedError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->undefinedError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_undefinedError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->undefinedError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusOff_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusOff = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusOff_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canBusOff); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canErrorWarning_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canErrorWarning = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canErrorWarning_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canErrorWarning); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusShortedPlus_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusShortedPlus = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusShortedPlus_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canBusShortedPlus); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusShortedGround_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusShortedGround = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canBusShortedGround_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canBusShortedGround); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_checksumError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->checksumError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_checksumError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->checksumError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_badMessageBitTimeError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->badMessageBitTimeError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_badMessageBitTimeError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->badMessageBitTimeError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_ifrData_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->ifrData = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_ifrData_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->ifrData); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_hardwareCommError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->hardwareCommError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_hardwareCommError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->hardwareCommError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_expectedLengthError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->expectedLengthError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_expectedLengthError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->expectedLengthError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_incomingNoMatch_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->incomingNoMatch = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_incomingNoMatch_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->incomingNoMatch); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_statusBreak_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->statusBreak = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_statusBreak_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->statusBreak); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_avsiRecOverflow_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->avsiRecOverflow = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_avsiRecOverflow_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->avsiRecOverflow); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_testTrigger_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->testTrigger = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_testTrigger_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->testTrigger); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_audioComment_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->audioComment = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_audioComment_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->audioComment); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_gpsData_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->gpsData = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_gpsData_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->gpsData); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_analogDigitalInput_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->analogDigitalInput = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_analogDigitalInput_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->analogDigitalInput); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_textComment_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->textComment = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_textComment_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->textComment); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_networkMessageType_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->networkMessageType = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_networkMessageType_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->networkMessageType); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_vsiTXUnderrun_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->vsiTXUnderrun = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_vsiTXUnderrun_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->vsiTXUnderrun); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_vsiIFRCRCBit_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->vsiIFRCRCBit = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_vsiIFRCRCBit_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->vsiIFRCRCBit); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_initMessage_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->initMessage = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_initMessage_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->initMessage); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_flexraySecondStartupFrame_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->flexraySecondStartupFrame = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_flexraySecondStartupFrame_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->flexraySecondStartupFrame); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_extended_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->extended = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_extended_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->extended); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_hasValue_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->hasValue = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_hasValue_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->hasValue); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_valueIsBoolean_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->valueIsBoolean = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_valueIsBoolean_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->valueIsBoolean); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_highVoltage_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->highVoltage = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_highVoltage_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->highVoltage); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_longMessage_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->longMessage = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_longMessage_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->longMessage); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_globalChange_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->globalChange = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_globalChange_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->globalChange); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_errorFrame_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->errorFrame = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_errorFrame_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->errorFrame); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_endOfLongMessage_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->endOfLongMessage = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_endOfLongMessage_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->endOfLongMessage); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXBreakNotZero_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXBreakNotZero = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXBreakNotZero_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorRXBreakNotZero); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXBreakTooShort_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXBreakTooShort = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXBreakTooShort_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorRXBreakTooShort); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXSyncNot55_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXSyncNot55 = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXSyncNot55_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorRXSyncNot55); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXDataGreaterEight = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorRXDataGreaterEight); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorTXRXMismatch_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorTXRXMismatch = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorTXRXMismatch_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorTXRXMismatch); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorMessageIDParity_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorMessageIDParity = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linErrorMessageIDParity_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linErrorMessageIDParity); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linSyncFrameError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linSyncFrameError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linSyncFrameError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linSyncFrameError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linIDFrameError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linIDFrameError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linIDFrameError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linIDFrameError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linSlaveByteError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linSlaveByteError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linSlaveByteError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linSlaveByteError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_rxTimeoutError_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->rxTimeoutError = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_rxTimeoutError_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->rxTimeoutError); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linNoSlaveData_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linNoSlaveData = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_linNoSlaveData_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->linNoSlaveData); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdESI_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdESI = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdESI_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canfdESI); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdIDE_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdIDE = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdIDE_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canfdIDE); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdRTR_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdRTR = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdRTR_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canfdRTR); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdFDF_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdFDF = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdFDF_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canfdFDF); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdBRS_set(void * jarg1, unsigned int jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdBRS = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_statusbitfield_t_canfdBRS_get(void * jarg1) { + unsigned int jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t) ((arg1)->canfdBRS); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_statusbitfield_t_statusBitfield_set(void * jarg1, void * jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t *arg2 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + arg2 = (uint32_t *)jarg2; + { + size_t ii; + uint32_t *b = (uint32_t *) arg1->statusBitfield; + for (ii = 0; ii < (size_t)4; ii++) b[ii] = *((uint32_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_statusbitfield_t_statusBitfield_get(void * jarg1) { + void * jresult ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t *result = 0 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + result = (uint32_t *)(uint32_t *) ((arg1)->statusBitfield); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neomessage_statusbitfield_t() { + void * jresult ; + neomessage_statusbitfield_t *result = 0 ; + + result = (neomessage_statusbitfield_t *)calloc(1, sizeof(neomessage_statusbitfield_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neomessage_statusbitfield_t(void * jarg1) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + + arg1 = (neomessage_statusbitfield_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_status_set(void * jarg1, void * jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (neomessage_statusbitfield_t *)jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_t_status_get(void * jarg1) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_timestamp_set(void * jarg1, unsigned long long jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_t_timestamp_get(void * jarg1) { + unsigned long long jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_t *)jarg1; + result = (uint64_t) ((arg1)->timestamp); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_timestampReserved_set(void * jarg1, unsigned long long jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_t_timestampReserved_get(void * jarg1) { + unsigned long long jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_t *)jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_data_set(void * jarg1, unsigned char * jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + arg1 = (neomessage_t *)jarg1; + + arg2 = jarg2; + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT unsigned char * SWIGSTDCALL CSharp_neomessage_t_data_get(void * jarg1) { + unsigned char * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (uint8_t *) ((arg1)->data); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_length_set(void * jarg1, unsigned long jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + size_t arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT unsigned long SWIGSTDCALL CSharp_neomessage_t_length_get(void * jarg1) { + unsigned long jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + size_t result; + + arg1 = (neomessage_t *)jarg1; + result = ((arg1)->length); + jresult = (unsigned long)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_header_set(void * jarg1, void * jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->header; + for (ii = 0; ii < (size_t)4; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_t_header_get(void * jarg1) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->header); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_netid_set(void * jarg1, unsigned short jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neomessage_t_netid_get(void * jarg1) { + unsigned short jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint16_t result; + + arg1 = (neomessage_t *)jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_type_set(void * jarg1, unsigned char jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neomessage_t_type_get(void * jarg1) { + unsigned char jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t result; + + arg1 = (neomessage_t *)jarg1; + result = (uint8_t) ((arg1)->type); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_reserved_set(void * jarg1, void * jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)17; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_t_reserved_get(void * jarg1) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neomessage_t() { + void * jresult ; + neomessage_t *result = 0 ; + + result = (neomessage_t *)calloc(1, sizeof(neomessage_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neomessage_t(void * jarg1) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + + arg1 = (neomessage_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_status_set(void * jarg1, void * jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (neomessage_statusbitfield_t *)jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_can_t_status_get(void * jarg1) { + void * jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + arg1 = (neomessage_can_t *)jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_timestamp_set(void * jarg1, unsigned long long jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_can_t_timestamp_get(void * jarg1) { + unsigned long long jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint64_t) ((arg1)->timestamp); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_timestampReserved_set(void * jarg1, unsigned long long jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_can_t_timestampReserved_get(void * jarg1) { + unsigned long long jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_data_set(void * jarg1, unsigned char * jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + arg1 = (neomessage_can_t *)jarg1; + + arg2 = jarg2; + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT unsigned char * SWIGSTDCALL CSharp_neomessage_can_t_data_get(void * jarg1) { + unsigned char * jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint8_t *) ((arg1)->data); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_length_set(void * jarg1, unsigned long jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + size_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT unsigned long SWIGSTDCALL CSharp_neomessage_can_t_length_get(void * jarg1) { + unsigned long jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + size_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = ((arg1)->length); + jresult = (unsigned long)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_arbid_set(void * jarg1, unsigned int jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->arbid = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neomessage_can_t_arbid_get(void * jarg1) { + unsigned int jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint32_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint32_t) ((arg1)->arbid); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_netid_set(void * jarg1, unsigned short jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neomessage_can_t_netid_get(void * jarg1) { + unsigned short jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint16_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_type_set(void * jarg1, unsigned char jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neomessage_can_t_type_get(void * jarg1) { + unsigned char jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint8_t) ((arg1)->type); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_dlcOnWire_set(void * jarg1, unsigned char jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->dlcOnWire = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neomessage_can_t_dlcOnWire_get(void * jarg1) { + unsigned char jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t result; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint8_t) ((arg1)->dlcOnWire); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_can_t_reserved_set(void * jarg1, void * jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neomessage_can_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)16; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_can_t_reserved_get(void * jarg1) { + void * jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_can_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neomessage_can_t() { + void * jresult ; + neomessage_can_t *result = 0 ; + + result = (neomessage_can_t *)calloc(1, sizeof(neomessage_can_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neomessage_can_t(void * jarg1) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + + arg1 = (neomessage_can_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_status_set(void * jarg1, void * jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (neomessage_statusbitfield_t *)jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_eth_t_status_get(void * jarg1) { + void * jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_timestamp_set(void * jarg1, unsigned long long jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_eth_t_timestamp_get(void * jarg1) { + unsigned long long jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint64_t) ((arg1)->timestamp); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_timestampReserved_set(void * jarg1, unsigned long long jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint64_t)jarg2; + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_neomessage_eth_t_timestampReserved_get(void * jarg1) { + unsigned long long jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_data_set(void * jarg1, unsigned char * jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + + arg2 = jarg2; + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT unsigned char * SWIGSTDCALL CSharp_neomessage_eth_t_data_get(void * jarg1) { + unsigned char * jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint8_t *) ((arg1)->data); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_length_set(void * jarg1, unsigned long jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + size_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT unsigned long SWIGSTDCALL CSharp_neomessage_eth_t_length_get(void * jarg1) { + unsigned long jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + size_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = ((arg1)->length); + jresult = (unsigned long)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_preemptionFlags_set(void * jarg1, unsigned char jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->preemptionFlags = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neomessage_eth_t_preemptionFlags_get(void * jarg1) { + unsigned char jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint8_t) ((arg1)->preemptionFlags); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_reservedHeader_set(void * jarg1, void * jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reservedHeader; + for (ii = 0; ii < (size_t)3; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_eth_t_reservedHeader_get(void * jarg1) { + void * jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reservedHeader); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_netid_set(void * jarg1, unsigned short jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neomessage_eth_t_netid_get(void * jarg1) { + unsigned short jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint16_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_type_set(void * jarg1, unsigned char jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neomessage_eth_t_type_get(void * jarg1) { + unsigned char jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t result; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint8_t) ((arg1)->type); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_eth_t_reserved_set(void * jarg1, void * jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neomessage_eth_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)17; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_eth_t_reserved_get(void * jarg1) { + void * jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neomessage_eth_t() { + void * jresult ; + neomessage_eth_t *result = 0 ; + + result = (neomessage_eth_t *)calloc(1, sizeof(neomessage_eth_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neomessage_eth_t(void * jarg1) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_DEVICETYPE_LONGEST_NAME_get() { + int jresult ; + int result; + + result = (int)((35+1)); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get() { + int jresult ; + int result; + + result = (int)(((35+1) +7)); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_major_set(void * jarg1, unsigned short jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->major = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neoversion_t_major_get(void * jarg1) { + unsigned short jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + arg1 = (neoversion_t *)jarg1; + result = (uint16_t) ((arg1)->major); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_minor_set(void * jarg1, unsigned short jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->minor = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neoversion_t_minor_get(void * jarg1) { + unsigned short jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + arg1 = (neoversion_t *)jarg1; + result = (uint16_t) ((arg1)->minor); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_patch_set(void * jarg1, unsigned short jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->patch = arg2; +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_neoversion_t_patch_get(void * jarg1) { + unsigned short jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + arg1 = (neoversion_t *)jarg1; + result = (uint16_t) ((arg1)->patch); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_metadata_set(void * jarg1, char * jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (char *)jarg2; + { + if (arg2) { + arg1->metadata = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->metadata, (const char *)arg2); + } else { + arg1->metadata = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoversion_t_metadata_get(void * jarg1) { + char * jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + arg1 = (neoversion_t *)jarg1; + result = (char *) ((arg1)->metadata); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_buildBranch_set(void * jarg1, char * jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (char *)jarg2; + { + if (arg2) { + arg1->buildBranch = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->buildBranch, (const char *)arg2); + } else { + arg1->buildBranch = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoversion_t_buildBranch_get(void * jarg1) { + char * jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + arg1 = (neoversion_t *)jarg1; + result = (char *) ((arg1)->buildBranch); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_buildTag_set(void * jarg1, char * jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (char *)jarg2; + { + if (arg2) { + arg1->buildTag = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->buildTag, (const char *)arg2); + } else { + arg1->buildTag = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoversion_t_buildTag_get(void * jarg1) { + char * jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + arg1 = (neoversion_t *)jarg1; + result = (char *) ((arg1)->buildTag); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoversion_t_reserved_set(void * jarg1, char * jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 ; + + arg1 = (neoversion_t *)jarg1; + arg2 = (char *)jarg2; + { + if(arg2) { + strncpy((char*)arg1->reserved, (const char *)arg2, 32-1); + arg1->reserved[32-1] = 0; + } else { + arg1->reserved[0] = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoversion_t_reserved_get(void * jarg1) { + char * jresult ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + arg1 = (neoversion_t *)jarg1; + result = (char *)(char *) ((arg1)->reserved); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neoversion_t() { + void * jresult ; + neoversion_t *result = 0 ; + + result = (neoversion_t *)calloc(1, sizeof(neoversion_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neoversion_t(void * jarg1) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + + arg1 = (neoversion_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_description_set(void * jarg1, char * jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *arg2 = (char *) 0 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (char *)jarg2; + { + if (arg2) { + arg1->description = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->description, (const char *)arg2); + } else { + arg1->description = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoevent_t_description_get(void * jarg1) { + char * jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *result = 0 ; + + arg1 = (neoevent_t *)jarg1; + result = (char *) ((arg1)->description); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_timestamp_set(void * jarg1, void * jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + time_t arg2 ; + time_t *argp2 ; + + arg1 = (neoevent_t *)jarg1; + argp2 = (time_t *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null time_t", 0); + return ; + } + arg2 = *argp2; + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neoevent_t_timestamp_get(void * jarg1) { + void * jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + time_t result; + + arg1 = (neoevent_t *)jarg1; + result = ((arg1)->timestamp); + { + time_t * resultptr = (time_t *) malloc(sizeof(time_t)); + memmove(resultptr, &result, sizeof(time_t)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_eventNumber_set(void * jarg1, unsigned int jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint32_t arg2 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->eventNumber = arg2; +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_neoevent_t_eventNumber_get(void * jarg1) { + unsigned int jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint32_t result; + + arg1 = (neoevent_t *)jarg1; + result = (uint32_t) ((arg1)->eventNumber); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_severity_set(void * jarg1, unsigned char jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t arg2 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->severity = arg2; +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_neoevent_t_severity_get(void * jarg1) { + unsigned char jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t result; + + arg1 = (neoevent_t *)jarg1; + result = (uint8_t) ((arg1)->severity); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_serial_set(void * jarg1, char * jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *arg2 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (char *)jarg2; + { + if(arg2) { + strncpy((char*)arg1->serial, (const char *)arg2, 7-1); + arg1->serial[7-1] = 0; + } else { + arg1->serial[0] = 0; + } + } +} + + +SWIGEXPORT char * SWIGSTDCALL CSharp_neoevent_t_serial_get(void * jarg1) { + char * jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *result = 0 ; + + arg1 = (neoevent_t *)jarg1; + result = (char *)(char *) ((arg1)->serial); + jresult = SWIG_csharp_string_callback((const char *)result); + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_reserved_set(void * jarg1, void * jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t *arg2 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (uint8_t *)jarg2; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)16; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neoevent_t_reserved_get(void * jarg1) { + void * jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t *result = 0 ; + + arg1 = (neoevent_t *)jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neoevent_t() { + void * jresult ; + neoevent_t *result = 0 ; + + result = (neoevent_t *)calloc(1, sizeof(neoevent_t)); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neoevent_t(void * jarg1) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + + arg1 = (neoevent_t *)jarg1; + free((char *) arg1); +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_DEVICE_get() { + int jresult ; + int result; + + result = (int)(0); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN_get() { + int jresult ; + int result; + + result = (int)(1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_MSCAN_get() { + int jresult ; + int result; + + result = (int)(2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_SWCAN_get() { + int jresult ; + int result; + + result = (int)(3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LSFTCAN_get() { + int jresult ; + int result; + + result = (int)(4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FORDSCP_get() { + int jresult ; + int result; + + result = (int)(5); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_J1708_get() { + int jresult ; + int result; + + result = (int)(6); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_AUX_get() { + int jresult ; + int result; + + result = (int)(7); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_J1850VPW_get() { + int jresult ; + int result; + + result = (int)(8); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISO_get() { + int jresult ; + int result; + + result = (int)(9); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISOPIC_get() { + int jresult ; + int result; + + result = (int)(10); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_MAIN51_get() { + int jresult ; + int result; + + result = (int)(11); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_get() { + int jresult ; + int result; + + result = (int)(12); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_SCI_get() { + int jresult ; + int result; + + result = (int)(13); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISO2_get() { + int jresult ; + int result; + + result = (int)(14); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISO14230_get() { + int jresult ; + int result; + + result = (int)(15); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN_get() { + int jresult ; + int result; + + result = (int)(16); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET1_get() { + int jresult ; + int result; + + result = (int)(17); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET2_get() { + int jresult ; + int result; + + result = (int)(18); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET3_get() { + int jresult ; + int result; + + result = (int)(19); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_EXT_MEMORYREAD_get() { + int jresult ; + int result; + + result = (int)(20); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_INT_MEMORYREAD_get() { + int jresult ; + int result; + + result = (int)(21); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_DFLASH_READ_get() { + int jresult ; + int result; + + result = (int)(22); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_SDCARD_READ_get() { + int jresult ; + int result; + + result = (int)(23); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_CAN_ERRBITS_get() { + int jresult ; + int result; + + result = (int)(24); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get() { + int jresult ; + int result; + + result = (int)(25); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get() { + int jresult ; + int result; + + result = (int)(26); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get() { + int jresult ; + int result; + + result = (int)(27); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get() { + int jresult ; + int result; + + result = (int)(28); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get() { + int jresult ; + int result; + + result = (int)(29); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get() { + int jresult ; + int result; + + result = (int)(30); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get() { + int jresult ; + int result; + + result = (int)(31); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get() { + int jresult ; + int result; + + result = (int)(32); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get() { + int jresult ; + int result; + + result = (int)(33); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get() { + int jresult ; + int result; + + result = (int)(34); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_NEOVI_NETWORK_get() { + int jresult ; + int result; + + result = (int)(35); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get() { + int jresult ; + int result; + + result = (int)(36); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_OLDFORMAT_get() { + int jresult ; + int result; + + result = (int)(37); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_SCOPE_CAPTURE_get() { + int jresult ; + int result; + + result = (int)(38); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_HARDWARE_EXCEP_get() { + int jresult ; + int result; + + result = (int)(39); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_GET_RTC_get() { + int jresult ; + int result; + + result = (int)(40); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISO3_get() { + int jresult ; + int result; + + result = (int)(41); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN2_get() { + int jresult ; + int result; + + result = (int)(42); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN3_get() { + int jresult ; + int result; + + result = (int)(44); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET4_get() { + int jresult ; + int result; + + result = (int)(45); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET5_get() { + int jresult ; + int result; + + result = (int)(46); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ISO4_get() { + int jresult ; + int result; + + result = (int)(47); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN2_get() { + int jresult ; + int result; + + result = (int)(48); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN3_get() { + int jresult ; + int result; + + result = (int)(49); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN4_get() { + int jresult ; + int result; + + result = (int)(50); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_APP_ERROR_get() { + int jresult ; + int result; + + result = (int)(52); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_CGI_get() { + int jresult ; + int result; + + result = (int)(53); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RESET_STATUS_get() { + int jresult ; + int result; + + result = (int)(54); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FB_STATUS_get() { + int jresult ; + int result; + + result = (int)(55); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_APP_SIGNAL_STATUS_get() { + int jresult ; + int result; + + result = (int)(56); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get() { + int jresult ; + int result; + + result = (int)(57); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get() { + int jresult ; + int result; + + result = (int)(58); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LOGGING_OVERFLOW_get() { + int jresult ; + int result; + + result = (int)(59); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_READ_SETTINGS_get() { + int jresult ; + int result; + + result = (int)(60); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN4_get() { + int jresult ; + int result; + + result = (int)(61); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN5_get() { + int jresult ; + int result; + + result = (int)(62); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RS232_get() { + int jresult ; + int result; + + result = (int)(63); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_UART_get() { + int jresult ; + int result; + + result = (int)(64); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_UART2_get() { + int jresult ; + int result; + + result = (int)(65); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_UART3_get() { + int jresult ; + int result; + + result = (int)(66); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_UART4_get() { + int jresult ; + int result; + + result = (int)(67); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_SWCAN2_get() { + int jresult ; + int result; + + result = (int)(68); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ETHERNET_DAQ_get() { + int jresult ; + int result; + + result = (int)(69); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_DATA_TO_HOST_get() { + int jresult ; + int result; + + result = (int)(70); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_TEXTAPI_TO_HOST_get() { + int jresult ; + int result; + + result = (int)(71); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET6_get() { + int jresult ; + int result; + + result = (int)(73); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_RED_VBAT_get() { + int jresult ; + int result; + + result = (int)(74); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET7_get() { + int jresult ; + int result; + + result = (int)(75); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET8_get() { + int jresult ; + int result; + + result = (int)(76); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET9_get() { + int jresult ; + int result; + + result = (int)(77); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET10_get() { + int jresult ; + int result; + + result = (int)(78); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET11_get() { + int jresult ; + int result; + + result = (int)(79); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY1A_get() { + int jresult ; + int result; + + result = (int)(80); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY1B_get() { + int jresult ; + int result; + + result = (int)(81); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY2A_get() { + int jresult ; + int result; + + result = (int)(82); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY2B_get() { + int jresult ; + int result; + + result = (int)(83); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN5_get() { + int jresult ; + int result; + + result = (int)(84); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY_get() { + int jresult ; + int result; + + result = (int)(85); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_FLEXRAY2_get() { + int jresult ; + int result; + + result = (int)(86); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_OP_ETHERNET12_get() { + int jresult ; + int result; + + result = (int)(87); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_MOST25_get() { + int jresult ; + int result; + + result = (int)(90); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_MOST50_get() { + int jresult ; + int result; + + result = (int)(91); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_MOST150_get() { + int jresult ; + int result; + + result = (int)(92); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ETHERNET_get() { + int jresult ; + int result; + + result = (int)(93); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_GMFSA_get() { + int jresult ; + int result; + + result = (int)(94); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_TCP_get() { + int jresult ; + int result; + + result = (int)(95); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN6_get() { + int jresult ; + int result; + + result = (int)(96); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HSCAN7_get() { + int jresult ; + int result; + + result = (int)(97); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LIN6_get() { + int jresult ; + int result; + + result = (int)(98); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_LSFTCAN2_get() { + int jresult ; + int result; + + result = (int)(99); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_HW_COM_LATENCY_TEST_get() { + int jresult ; + int result; + + result = (int)(512); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_DEVICE_STATUS_get() { + int jresult ; + int result; + + result = (int)(513); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_ANY_get() { + int jresult ; + int result; + + result = (int)(0xfffe); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETID_INVALID_get() { + int jresult ; + int result; + + result = (int)(0xffff); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_INVALID_get() { + int jresult ; + int result; + + result = (int)(0); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_INTERNAL_get() { + int jresult ; + int result; + + result = (int)(1); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_CAN_get() { + int jresult ; + int result; + + result = (int)(2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_LIN_get() { + int jresult ; + int result; + + result = (int)(3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_FLEXRAY_get() { + int jresult ; + int result; + + result = (int)(4); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_MOST_get() { + int jresult ; + int result; + + result = (int)(5); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_ETHERNET_get() { + int jresult ; + int result; + + result = (int)(6); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_ANY_get() { + int jresult ; + int result; + + result = (int)(0xFE); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_ICSNEO_NETWORK_TYPE_OTHER_get() { + int jresult ; + int result; + + result = (int)(0xFF); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_can_t_cast(void * jarg1) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_can_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (neomessage_can_t *)neomessage_can_t_cast(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_eth_t_cast(void * jarg1) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_eth_t *result = 0 ; + + arg1 = (neomessage_t *)jarg1; + result = (neomessage_eth_t *)neomessage_eth_t_cast(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_from_can_neomessage_t_cast(void * jarg1) { + void * jresult ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_t *result = 0 ; + + arg1 = (neomessage_can_t *)jarg1; + result = (neomessage_t *)from_can_neomessage_t_cast(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_from_eth_neomessage_t_cast(void * jarg1) { + void * jresult ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_t *result = 0 ; + + arg1 = (neomessage_eth_t *)jarg1; + result = (neomessage_t *)from_eth_neomessage_t_cast(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neodevice_t_array(int jarg1) { + void * jresult ; + int arg1 ; + neodevice_t *result = 0 ; + + arg1 = (int)jarg1; + result = (neodevice_t *)new_neodevice_t_array(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neodevice_t_array(void * jarg1) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + arg1 = (neodevice_t *)jarg1; + delete_neodevice_t_array(arg1); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neodevice_t_array_getitem(void * jarg1, int jarg2) { + void * jresult ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + int arg2 ; + neodevice_t result; + + arg1 = (neodevice_t *)jarg1; + arg2 = (int)jarg2; + result = neodevice_t_array_getitem(arg1,arg2); + { + neodevice_t * resultptr = (neodevice_t *) malloc(sizeof(neodevice_t)); + memmove(resultptr, &result, sizeof(neodevice_t)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neodevice_t_array_setitem(void * jarg1, int jarg2, void * jarg3) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + int arg2 ; + neodevice_t arg3 ; + neodevice_t *argp3 ; + + arg1 = (neodevice_t *)jarg1; + arg2 = (int)jarg2; + argp3 = (neodevice_t *)jarg3; + if (!argp3) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null neodevice_t", 0); + return ; + } + arg3 = *argp3; + neodevice_t_array_setitem(arg1,arg2,arg3); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neoevent_t_array(int jarg1) { + void * jresult ; + int arg1 ; + neoevent_t *result = 0 ; + + arg1 = (int)jarg1; + result = (neoevent_t *)new_neoevent_t_array(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neoevent_t_array(void * jarg1) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + + arg1 = (neoevent_t *)jarg1; + delete_neoevent_t_array(arg1); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neoevent_t_array_getitem(void * jarg1, int jarg2) { + void * jresult ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + int arg2 ; + neoevent_t result; + + arg1 = (neoevent_t *)jarg1; + arg2 = (int)jarg2; + result = neoevent_t_array_getitem(arg1,arg2); + { + neoevent_t * resultptr = (neoevent_t *) malloc(sizeof(neoevent_t)); + memmove(resultptr, &result, sizeof(neoevent_t)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neoevent_t_array_setitem(void * jarg1, int jarg2, void * jarg3) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + int arg2 ; + neoevent_t arg3 ; + neoevent_t *argp3 ; + + arg1 = (neoevent_t *)jarg1; + arg2 = (int)jarg2; + argp3 = (neoevent_t *)jarg3; + if (!argp3) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null neoevent_t", 0); + return ; + } + arg3 = *argp3; + neoevent_t_array_setitem(arg1,arg2,arg3); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_new_neomessage_t_array(int jarg1) { + void * jresult ; + int arg1 ; + neomessage_t *result = 0 ; + + arg1 = (int)jarg1; + result = (neomessage_t *)new_neomessage_t_array(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_delete_neomessage_t_array(void * jarg1) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + + arg1 = (neomessage_t *)jarg1; + delete_neomessage_t_array(arg1); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_neomessage_t_array_getitem(void * jarg1, int jarg2) { + void * jresult ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + int arg2 ; + neomessage_t result; + + arg1 = (neomessage_t *)jarg1; + arg2 = (int)jarg2; + result = neomessage_t_array_getitem(arg1,arg2); + { + neomessage_t * resultptr = (neomessage_t *) malloc(sizeof(neomessage_t)); + memmove(resultptr, &result, sizeof(neomessage_t)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_neomessage_t_array_setitem(void * jarg1, int jarg2, void * jarg3) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + int arg2 ; + neomessage_t arg3 ; + neomessage_t *argp3 ; + + arg1 = (neomessage_t *)jarg1; + arg2 = (int)jarg2; + argp3 = (neomessage_t *)jarg3; + if (!argp3) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null neomessage_t", 0); + return ; + } + arg3 = *argp3; + neomessage_t_array_setitem(arg1,arg2,arg3); +} + + +#ifdef __cplusplus +} +#endif + diff --git a/examples/csharp/icsneocsharp.cs b/examples/csharp/icsneocsharp.cs new file mode 100644 index 0000000..9458588 --- /dev/null +++ b/examples/csharp/icsneocsharp.cs @@ -0,0 +1,426 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class icsneocsharp { + public static void icsneo_findAllDevices(neodevice_t devices, ref int count) { + icsneocsharpPINVOKE.icsneo_findAllDevices(neodevice_t.getCPtr(devices), ref count); + } + + public static void icsneo_freeUnconnectedDevices() { + icsneocsharpPINVOKE.icsneo_freeUnconnectedDevices(); + } + + public static bool icsneo_serialNumToString(uint num, System.Text.StringBuilder str, ref int count) { + bool ret = icsneocsharpPINVOKE.icsneo_serialNumToString(num, str, ref count); + return ret; + } + + public static uint icsneo_serialStringToNum(System.Text.StringBuilder str) { + uint ret = icsneocsharpPINVOKE.icsneo_serialStringToNum(str); + return ret; + } + + public static bool icsneo_isValidNeoDevice(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_isValidNeoDevice(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_openDevice(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_openDevice(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_closeDevice(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_closeDevice(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_isOpen(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_isOpen(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_goOnline(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_goOnline(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_goOffline(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_goOffline(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_isOnline(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_isOnline(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_enableMessagePolling(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_enableMessagePolling(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_disableMessagePolling(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_disableMessagePolling(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_isMessagePollingEnabled(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_isMessagePollingEnabled(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_getMessages(neodevice_t device, neomessage_t messages, ref int items, ulong timeout) { + bool ret = icsneocsharpPINVOKE.icsneo_getMessages(neodevice_t.getCPtr(device), neomessage_t.getCPtr(messages), ref items, timeout); + return ret; + } + + public static uint icsneo_getPollingMessageLimit(neodevice_t device) { + uint ret = icsneocsharpPINVOKE.icsneo_getPollingMessageLimit(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_setPollingMessageLimit(neodevice_t device, uint newLimit) { + bool ret = icsneocsharpPINVOKE.icsneo_setPollingMessageLimit(neodevice_t.getCPtr(device), newLimit); + return ret; + } + + public static bool icsneo_getProductName(neodevice_t device, System.Text.StringBuilder str, ref int maxLength) { + bool ret = icsneocsharpPINVOKE.icsneo_getProductName(neodevice_t.getCPtr(device), str, ref maxLength); + return ret; + } + + public static bool icsneo_getProductNameForType(uint type, System.Text.StringBuilder str, ref int maxLength) { + bool ret = icsneocsharpPINVOKE.icsneo_getProductNameForType(type, str, ref maxLength); + return ret; + } + + public static bool icsneo_settingsRefresh(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsRefresh(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_settingsApply(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApply(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_settingsApplyTemporary(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApplyTemporary(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_settingsApplyDefaults(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApplyDefaults(neodevice_t.getCPtr(device)); + return ret; + } + + public static bool icsneo_settingsApplyDefaultsTemporary(neodevice_t device) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApplyDefaultsTemporary(neodevice_t.getCPtr(device)); + return ret; + } + + public static int icsneo_settingsReadStructure(neodevice_t device, SWIGTYPE_p_void structure, uint structureSize) { + int ret = icsneocsharpPINVOKE.icsneo_settingsReadStructure(neodevice_t.getCPtr(device), SWIGTYPE_p_void.getCPtr(structure), structureSize); + return ret; + } + + public static bool icsneo_settingsApplyStructure(neodevice_t device, SWIGTYPE_p_void structure, uint structureSize) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApplyStructure(neodevice_t.getCPtr(device), SWIGTYPE_p_void.getCPtr(structure), structureSize); + return ret; + } + + public static bool icsneo_settingsApplyStructureTemporary(neodevice_t device, SWIGTYPE_p_void structure, uint structureSize) { + bool ret = icsneocsharpPINVOKE.icsneo_settingsApplyStructureTemporary(neodevice_t.getCPtr(device), SWIGTYPE_p_void.getCPtr(structure), structureSize); + return ret; + } + + public static long icsneo_getBaudrate(neodevice_t device, ushort netid) { + long ret = icsneocsharpPINVOKE.icsneo_getBaudrate(neodevice_t.getCPtr(device), netid); + return ret; + } + + public static bool icsneo_setBaudrate(neodevice_t device, ushort netid, long newBaudrate) { + bool ret = icsneocsharpPINVOKE.icsneo_setBaudrate(neodevice_t.getCPtr(device), netid, newBaudrate); + return ret; + } + + public static long icsneo_getFDBaudrate(neodevice_t device, ushort netid) { + long ret = icsneocsharpPINVOKE.icsneo_getFDBaudrate(neodevice_t.getCPtr(device), netid); + return ret; + } + + public static bool icsneo_setFDBaudrate(neodevice_t device, ushort netid, long newBaudrate) { + bool ret = icsneocsharpPINVOKE.icsneo_setFDBaudrate(neodevice_t.getCPtr(device), netid, newBaudrate); + return ret; + } + + public static bool icsneo_transmit(neodevice_t device, neomessage_t message) { + bool ret = icsneocsharpPINVOKE.icsneo_transmit(neodevice_t.getCPtr(device), neomessage_t.getCPtr(message)); + return ret; + } + + public static bool icsneo_transmitMessages(neodevice_t device, neomessage_t messages, uint count) { + bool ret = icsneocsharpPINVOKE.icsneo_transmitMessages(neodevice_t.getCPtr(device), neomessage_t.getCPtr(messages), count); + return ret; + } + + public static void icsneo_setWriteBlocks(neodevice_t device, bool blocks) { + icsneocsharpPINVOKE.icsneo_setWriteBlocks(neodevice_t.getCPtr(device), blocks); + } + + public static bool icsneo_describeDevice(neodevice_t device, System.Text.StringBuilder str, ref int maxLength) { + bool ret = icsneocsharpPINVOKE.icsneo_describeDevice(neodevice_t.getCPtr(device), str, ref maxLength); + return ret; + } + + public static neoversion_t icsneo_getVersion() { + neoversion_t ret = new neoversion_t(icsneocsharpPINVOKE.icsneo_getVersion(), true); + return ret; + } + + public static bool icsneo_getEvents(neoevent_t events, ref int size) { + bool ret = icsneocsharpPINVOKE.icsneo_getEvents(neoevent_t.getCPtr(events), ref size); + return ret; + } + + public static bool icsneo_getDeviceEvents(neodevice_t device, neoevent_t events, ref int size) { + bool ret = icsneocsharpPINVOKE.icsneo_getDeviceEvents(neodevice_t.getCPtr(device), neoevent_t.getCPtr(events), ref size); + return ret; + } + + public static bool icsneo_getLastError(neoevent_t error) { + bool ret = icsneocsharpPINVOKE.icsneo_getLastError(neoevent_t.getCPtr(error)); + return ret; + } + + public static void icsneo_discardAllEvents() { + icsneocsharpPINVOKE.icsneo_discardAllEvents(); + } + + public static void icsneo_discardDeviceEvents(neodevice_t device) { + icsneocsharpPINVOKE.icsneo_discardDeviceEvents(neodevice_t.getCPtr(device)); + } + + public static void icsneo_setEventLimit(uint newLimit) { + icsneocsharpPINVOKE.icsneo_setEventLimit(newLimit); + } + + public static uint icsneo_getEventLimit() { + uint ret = icsneocsharpPINVOKE.icsneo_getEventLimit(); + return ret; + } + + public static bool icsneo_getSupportedDevices(SWIGTYPE_p_unsigned_int devices, ref int count) { + bool ret = icsneocsharpPINVOKE.icsneo_getSupportedDevices(SWIGTYPE_p_unsigned_int.getCPtr(devices), ref count); + return ret; + } + + public static bool icsneo_getTimestampResolution(neodevice_t device, SWIGTYPE_p_unsigned_short resolution) { + bool ret = icsneocsharpPINVOKE.icsneo_getTimestampResolution(neodevice_t.getCPtr(device), SWIGTYPE_p_unsigned_short.getCPtr(resolution)); + return ret; + } + + public static neomessage_can_t neomessage_can_t_cast(neomessage_t msg) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_can_t_cast(neomessage_t.getCPtr(msg)); + neomessage_can_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_can_t(cPtr, false); + return ret; + } + + public static neomessage_eth_t neomessage_eth_t_cast(neomessage_t msg) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_eth_t_cast(neomessage_t.getCPtr(msg)); + neomessage_eth_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_eth_t(cPtr, false); + return ret; + } + + public static neomessage_t from_can_neomessage_t_cast(neomessage_can_t msg) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.from_can_neomessage_t_cast(neomessage_can_t.getCPtr(msg)); + neomessage_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_t(cPtr, false); + return ret; + } + + public static neomessage_t from_eth_neomessage_t_cast(neomessage_eth_t msg) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.from_eth_neomessage_t_cast(neomessage_eth_t.getCPtr(msg)); + neomessage_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_t(cPtr, false); + return ret; + } + + public static neodevice_t new_neodevice_t_array(int nelements) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.new_neodevice_t_array(nelements); + neodevice_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neodevice_t(cPtr, false); + return ret; + } + + public static void delete_neodevice_t_array(neodevice_t ary) { + icsneocsharpPINVOKE.delete_neodevice_t_array(neodevice_t.getCPtr(ary)); + } + + public static neodevice_t neodevice_t_array_getitem(neodevice_t ary, int index) { + neodevice_t ret = new neodevice_t(icsneocsharpPINVOKE.neodevice_t_array_getitem(neodevice_t.getCPtr(ary), index), true); + return ret; + } + + public static void neodevice_t_array_setitem(neodevice_t ary, int index, neodevice_t value) { + icsneocsharpPINVOKE.neodevice_t_array_setitem(neodevice_t.getCPtr(ary), index, neodevice_t.getCPtr(value)); + if (icsneocsharpPINVOKE.SWIGPendingException.Pending) throw icsneocsharpPINVOKE.SWIGPendingException.Retrieve(); + } + + public static neoevent_t new_neoevent_t_array(int nelements) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.new_neoevent_t_array(nelements); + neoevent_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neoevent_t(cPtr, false); + return ret; + } + + public static void delete_neoevent_t_array(neoevent_t ary) { + icsneocsharpPINVOKE.delete_neoevent_t_array(neoevent_t.getCPtr(ary)); + } + + public static neoevent_t neoevent_t_array_getitem(neoevent_t ary, int index) { + neoevent_t ret = new neoevent_t(icsneocsharpPINVOKE.neoevent_t_array_getitem(neoevent_t.getCPtr(ary), index), true); + return ret; + } + + public static void neoevent_t_array_setitem(neoevent_t ary, int index, neoevent_t value) { + icsneocsharpPINVOKE.neoevent_t_array_setitem(neoevent_t.getCPtr(ary), index, neoevent_t.getCPtr(value)); + if (icsneocsharpPINVOKE.SWIGPendingException.Pending) throw icsneocsharpPINVOKE.SWIGPendingException.Retrieve(); + } + + public static neomessage_t new_neomessage_t_array(int nelements) { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.new_neomessage_t_array(nelements); + neomessage_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_t(cPtr, false); + return ret; + } + + public static void delete_neomessage_t_array(neomessage_t ary) { + icsneocsharpPINVOKE.delete_neomessage_t_array(neomessage_t.getCPtr(ary)); + } + + public static neomessage_t neomessage_t_array_getitem(neomessage_t ary, int index) { + neomessage_t ret = new neomessage_t(icsneocsharpPINVOKE.neomessage_t_array_getitem(neomessage_t.getCPtr(ary), index), true); + return ret; + } + + public static void neomessage_t_array_setitem(neomessage_t ary, int index, neomessage_t value) { + icsneocsharpPINVOKE.neomessage_t_array_setitem(neomessage_t.getCPtr(ary), index, neomessage_t.getCPtr(value)); + if (icsneocsharpPINVOKE.SWIGPendingException.Pending) throw icsneocsharpPINVOKE.SWIGPendingException.Retrieve(); + } + + public static readonly int ICSNEO_DEVICETYPE_LONGEST_NAME = icsneocsharpPINVOKE.ICSNEO_DEVICETYPE_LONGEST_NAME_get(); + public static readonly int ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION = icsneocsharpPINVOKE.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get(); + public static readonly int ICSNEO_NETID_DEVICE = icsneocsharpPINVOKE.ICSNEO_NETID_DEVICE_get(); + public static readonly int ICSNEO_NETID_HSCAN = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN_get(); + public static readonly int ICSNEO_NETID_MSCAN = icsneocsharpPINVOKE.ICSNEO_NETID_MSCAN_get(); + public static readonly int ICSNEO_NETID_SWCAN = icsneocsharpPINVOKE.ICSNEO_NETID_SWCAN_get(); + public static readonly int ICSNEO_NETID_LSFTCAN = icsneocsharpPINVOKE.ICSNEO_NETID_LSFTCAN_get(); + public static readonly int ICSNEO_NETID_FORDSCP = icsneocsharpPINVOKE.ICSNEO_NETID_FORDSCP_get(); + public static readonly int ICSNEO_NETID_J1708 = icsneocsharpPINVOKE.ICSNEO_NETID_J1708_get(); + public static readonly int ICSNEO_NETID_AUX = icsneocsharpPINVOKE.ICSNEO_NETID_AUX_get(); + public static readonly int ICSNEO_NETID_J1850VPW = icsneocsharpPINVOKE.ICSNEO_NETID_J1850VPW_get(); + public static readonly int ICSNEO_NETID_ISO = icsneocsharpPINVOKE.ICSNEO_NETID_ISO_get(); + public static readonly int ICSNEO_NETID_ISOPIC = icsneocsharpPINVOKE.ICSNEO_NETID_ISOPIC_get(); + public static readonly int ICSNEO_NETID_MAIN51 = icsneocsharpPINVOKE.ICSNEO_NETID_MAIN51_get(); + public static readonly int ICSNEO_NETID_RED = icsneocsharpPINVOKE.ICSNEO_NETID_RED_get(); + public static readonly int ICSNEO_NETID_SCI = icsneocsharpPINVOKE.ICSNEO_NETID_SCI_get(); + public static readonly int ICSNEO_NETID_ISO2 = icsneocsharpPINVOKE.ICSNEO_NETID_ISO2_get(); + public static readonly int ICSNEO_NETID_ISO14230 = icsneocsharpPINVOKE.ICSNEO_NETID_ISO14230_get(); + public static readonly int ICSNEO_NETID_LIN = icsneocsharpPINVOKE.ICSNEO_NETID_LIN_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET1 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET1_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET2 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET2_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET3 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET3_get(); + public static readonly int ICSNEO_NETID_RED_EXT_MEMORYREAD = icsneocsharpPINVOKE.ICSNEO_NETID_RED_EXT_MEMORYREAD_get(); + public static readonly int ICSNEO_NETID_RED_INT_MEMORYREAD = icsneocsharpPINVOKE.ICSNEO_NETID_RED_INT_MEMORYREAD_get(); + public static readonly int ICSNEO_NETID_RED_DFLASH_READ = icsneocsharpPINVOKE.ICSNEO_NETID_RED_DFLASH_READ_get(); + public static readonly int ICSNEO_NETID_RED_SDCARD_READ = icsneocsharpPINVOKE.ICSNEO_NETID_RED_SDCARD_READ_get(); + public static readonly int ICSNEO_NETID_CAN_ERRBITS = icsneocsharpPINVOKE.ICSNEO_NETID_CAN_ERRBITS_get(); + public static readonly int ICSNEO_NETID_RED_DFLASH_WRITE_DONE = icsneocsharpPINVOKE.ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_LIN1_ANALOG = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_LIN2_ANALOG = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_MISC_ANALOG = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get(); + public static readonly int ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL = icsneocsharpPINVOKE.ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get(); + public static readonly int ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX = icsneocsharpPINVOKE.ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get(); + public static readonly int ICSNEO_NETID_RED_NEOVI_NETWORK = icsneocsharpPINVOKE.ICSNEO_NETID_RED_NEOVI_NETWORK_get(); + public static readonly int ICSNEO_NETID_RED_READ_BAUD_SETTINGS = icsneocsharpPINVOKE.ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get(); + public static readonly int ICSNEO_NETID_RED_OLDFORMAT = icsneocsharpPINVOKE.ICSNEO_NETID_RED_OLDFORMAT_get(); + public static readonly int ICSNEO_NETID_RED_SCOPE_CAPTURE = icsneocsharpPINVOKE.ICSNEO_NETID_RED_SCOPE_CAPTURE_get(); + public static readonly int ICSNEO_NETID_RED_HARDWARE_EXCEP = icsneocsharpPINVOKE.ICSNEO_NETID_RED_HARDWARE_EXCEP_get(); + public static readonly int ICSNEO_NETID_RED_GET_RTC = icsneocsharpPINVOKE.ICSNEO_NETID_RED_GET_RTC_get(); + public static readonly int ICSNEO_NETID_ISO3 = icsneocsharpPINVOKE.ICSNEO_NETID_ISO3_get(); + public static readonly int ICSNEO_NETID_HSCAN2 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN2_get(); + public static readonly int ICSNEO_NETID_HSCAN3 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN3_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET4 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET4_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET5 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET5_get(); + public static readonly int ICSNEO_NETID_ISO4 = icsneocsharpPINVOKE.ICSNEO_NETID_ISO4_get(); + public static readonly int ICSNEO_NETID_LIN2 = icsneocsharpPINVOKE.ICSNEO_NETID_LIN2_get(); + public static readonly int ICSNEO_NETID_LIN3 = icsneocsharpPINVOKE.ICSNEO_NETID_LIN3_get(); + public static readonly int ICSNEO_NETID_LIN4 = icsneocsharpPINVOKE.ICSNEO_NETID_LIN4_get(); + public static readonly int ICSNEO_NETID_RED_APP_ERROR = icsneocsharpPINVOKE.ICSNEO_NETID_RED_APP_ERROR_get(); + public static readonly int ICSNEO_NETID_CGI = icsneocsharpPINVOKE.ICSNEO_NETID_CGI_get(); + public static readonly int ICSNEO_NETID_RESET_STATUS = icsneocsharpPINVOKE.ICSNEO_NETID_RESET_STATUS_get(); + public static readonly int ICSNEO_NETID_FB_STATUS = icsneocsharpPINVOKE.ICSNEO_NETID_FB_STATUS_get(); + public static readonly int ICSNEO_NETID_APP_SIGNAL_STATUS = icsneocsharpPINVOKE.ICSNEO_NETID_APP_SIGNAL_STATUS_get(); + public static readonly int ICSNEO_NETID_READ_DATALINK_CM_TX_MSG = icsneocsharpPINVOKE.ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get(); + public static readonly int ICSNEO_NETID_READ_DATALINK_CM_RX_MSG = icsneocsharpPINVOKE.ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get(); + public static readonly int ICSNEO_NETID_LOGGING_OVERFLOW = icsneocsharpPINVOKE.ICSNEO_NETID_LOGGING_OVERFLOW_get(); + public static readonly int ICSNEO_NETID_READ_SETTINGS = icsneocsharpPINVOKE.ICSNEO_NETID_READ_SETTINGS_get(); + public static readonly int ICSNEO_NETID_HSCAN4 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN4_get(); + public static readonly int ICSNEO_NETID_HSCAN5 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN5_get(); + public static readonly int ICSNEO_NETID_RS232 = icsneocsharpPINVOKE.ICSNEO_NETID_RS232_get(); + public static readonly int ICSNEO_NETID_UART = icsneocsharpPINVOKE.ICSNEO_NETID_UART_get(); + public static readonly int ICSNEO_NETID_UART2 = icsneocsharpPINVOKE.ICSNEO_NETID_UART2_get(); + public static readonly int ICSNEO_NETID_UART3 = icsneocsharpPINVOKE.ICSNEO_NETID_UART3_get(); + public static readonly int ICSNEO_NETID_UART4 = icsneocsharpPINVOKE.ICSNEO_NETID_UART4_get(); + public static readonly int ICSNEO_NETID_SWCAN2 = icsneocsharpPINVOKE.ICSNEO_NETID_SWCAN2_get(); + public static readonly int ICSNEO_NETID_ETHERNET_DAQ = icsneocsharpPINVOKE.ICSNEO_NETID_ETHERNET_DAQ_get(); + public static readonly int ICSNEO_NETID_DATA_TO_HOST = icsneocsharpPINVOKE.ICSNEO_NETID_DATA_TO_HOST_get(); + public static readonly int ICSNEO_NETID_TEXTAPI_TO_HOST = icsneocsharpPINVOKE.ICSNEO_NETID_TEXTAPI_TO_HOST_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET6 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET6_get(); + public static readonly int ICSNEO_NETID_RED_VBAT = icsneocsharpPINVOKE.ICSNEO_NETID_RED_VBAT_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET7 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET7_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET8 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET8_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET9 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET9_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET10 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET10_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET11 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET11_get(); + public static readonly int ICSNEO_NETID_FLEXRAY1A = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY1A_get(); + public static readonly int ICSNEO_NETID_FLEXRAY1B = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY1B_get(); + public static readonly int ICSNEO_NETID_FLEXRAY2A = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY2A_get(); + public static readonly int ICSNEO_NETID_FLEXRAY2B = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY2B_get(); + public static readonly int ICSNEO_NETID_LIN5 = icsneocsharpPINVOKE.ICSNEO_NETID_LIN5_get(); + public static readonly int ICSNEO_NETID_FLEXRAY = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY_get(); + public static readonly int ICSNEO_NETID_FLEXRAY2 = icsneocsharpPINVOKE.ICSNEO_NETID_FLEXRAY2_get(); + public static readonly int ICSNEO_NETID_OP_ETHERNET12 = icsneocsharpPINVOKE.ICSNEO_NETID_OP_ETHERNET12_get(); + public static readonly int ICSNEO_NETID_MOST25 = icsneocsharpPINVOKE.ICSNEO_NETID_MOST25_get(); + public static readonly int ICSNEO_NETID_MOST50 = icsneocsharpPINVOKE.ICSNEO_NETID_MOST50_get(); + public static readonly int ICSNEO_NETID_MOST150 = icsneocsharpPINVOKE.ICSNEO_NETID_MOST150_get(); + public static readonly int ICSNEO_NETID_ETHERNET = icsneocsharpPINVOKE.ICSNEO_NETID_ETHERNET_get(); + public static readonly int ICSNEO_NETID_GMFSA = icsneocsharpPINVOKE.ICSNEO_NETID_GMFSA_get(); + public static readonly int ICSNEO_NETID_TCP = icsneocsharpPINVOKE.ICSNEO_NETID_TCP_get(); + public static readonly int ICSNEO_NETID_HSCAN6 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN6_get(); + public static readonly int ICSNEO_NETID_HSCAN7 = icsneocsharpPINVOKE.ICSNEO_NETID_HSCAN7_get(); + public static readonly int ICSNEO_NETID_LIN6 = icsneocsharpPINVOKE.ICSNEO_NETID_LIN6_get(); + public static readonly int ICSNEO_NETID_LSFTCAN2 = icsneocsharpPINVOKE.ICSNEO_NETID_LSFTCAN2_get(); + public static readonly int ICSNEO_NETID_HW_COM_LATENCY_TEST = icsneocsharpPINVOKE.ICSNEO_NETID_HW_COM_LATENCY_TEST_get(); + public static readonly int ICSNEO_NETID_DEVICE_STATUS = icsneocsharpPINVOKE.ICSNEO_NETID_DEVICE_STATUS_get(); + public static readonly int ICSNEO_NETID_ANY = icsneocsharpPINVOKE.ICSNEO_NETID_ANY_get(); + public static readonly int ICSNEO_NETID_INVALID = icsneocsharpPINVOKE.ICSNEO_NETID_INVALID_get(); + public static readonly int ICSNEO_NETWORK_TYPE_INVALID = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_INVALID_get(); + public static readonly int ICSNEO_NETWORK_TYPE_INTERNAL = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_INTERNAL_get(); + public static readonly int ICSNEO_NETWORK_TYPE_CAN = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_CAN_get(); + public static readonly int ICSNEO_NETWORK_TYPE_LIN = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_LIN_get(); + public static readonly int ICSNEO_NETWORK_TYPE_FLEXRAY = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_FLEXRAY_get(); + public static readonly int ICSNEO_NETWORK_TYPE_MOST = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_MOST_get(); + public static readonly int ICSNEO_NETWORK_TYPE_ETHERNET = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_ETHERNET_get(); + public static readonly int ICSNEO_NETWORK_TYPE_ANY = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_ANY_get(); + public static readonly int ICSNEO_NETWORK_TYPE_OTHER = icsneocsharpPINVOKE.ICSNEO_NETWORK_TYPE_OTHER_get(); +} diff --git a/examples/csharp/icsneocsharpPINVOKE.cs b/examples/csharp/icsneocsharpPINVOKE.cs new file mode 100644 index 0000000..f5d95a5 --- /dev/null +++ b/examples/csharp/icsneocsharpPINVOKE.cs @@ -0,0 +1,1361 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +class icsneocsharpPINVOKE { + + protected class SWIGExceptionHelper { + + public delegate void ExceptionDelegate(string message); + public delegate void ExceptionArgumentDelegate(string message, string paramName); + + static ExceptionDelegate applicationDelegate = new ExceptionDelegate(SetPendingApplicationException); + static ExceptionDelegate arithmeticDelegate = new ExceptionDelegate(SetPendingArithmeticException); + static ExceptionDelegate divideByZeroDelegate = new ExceptionDelegate(SetPendingDivideByZeroException); + static ExceptionDelegate indexOutOfRangeDelegate = new ExceptionDelegate(SetPendingIndexOutOfRangeException); + static ExceptionDelegate invalidCastDelegate = new ExceptionDelegate(SetPendingInvalidCastException); + static ExceptionDelegate invalidOperationDelegate = new ExceptionDelegate(SetPendingInvalidOperationException); + static ExceptionDelegate ioDelegate = new ExceptionDelegate(SetPendingIOException); + static ExceptionDelegate nullReferenceDelegate = new ExceptionDelegate(SetPendingNullReferenceException); + static ExceptionDelegate outOfMemoryDelegate = new ExceptionDelegate(SetPendingOutOfMemoryException); + static ExceptionDelegate overflowDelegate = new ExceptionDelegate(SetPendingOverflowException); + static ExceptionDelegate systemDelegate = new ExceptionDelegate(SetPendingSystemException); + + static ExceptionArgumentDelegate argumentDelegate = new ExceptionArgumentDelegate(SetPendingArgumentException); + static ExceptionArgumentDelegate argumentNullDelegate = new ExceptionArgumentDelegate(SetPendingArgumentNullException); + static ExceptionArgumentDelegate argumentOutOfRangeDelegate = new ExceptionArgumentDelegate(SetPendingArgumentOutOfRangeException); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="SWIGRegisterExceptionCallbacks_icsneocsharp")] + public static extern void SWIGRegisterExceptionCallbacks_icsneocsharp( + ExceptionDelegate applicationDelegate, + ExceptionDelegate arithmeticDelegate, + ExceptionDelegate divideByZeroDelegate, + ExceptionDelegate indexOutOfRangeDelegate, + ExceptionDelegate invalidCastDelegate, + ExceptionDelegate invalidOperationDelegate, + ExceptionDelegate ioDelegate, + ExceptionDelegate nullReferenceDelegate, + ExceptionDelegate outOfMemoryDelegate, + ExceptionDelegate overflowDelegate, + ExceptionDelegate systemExceptionDelegate); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="SWIGRegisterExceptionArgumentCallbacks_icsneocsharp")] + public static extern void SWIGRegisterExceptionCallbacksArgument_icsneocsharp( + ExceptionArgumentDelegate argumentDelegate, + ExceptionArgumentDelegate argumentNullDelegate, + ExceptionArgumentDelegate argumentOutOfRangeDelegate); + + static void SetPendingApplicationException(string message) { + SWIGPendingException.Set(new global::System.ApplicationException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingArithmeticException(string message) { + SWIGPendingException.Set(new global::System.ArithmeticException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingDivideByZeroException(string message) { + SWIGPendingException.Set(new global::System.DivideByZeroException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingIndexOutOfRangeException(string message) { + SWIGPendingException.Set(new global::System.IndexOutOfRangeException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingInvalidCastException(string message) { + SWIGPendingException.Set(new global::System.InvalidCastException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingInvalidOperationException(string message) { + SWIGPendingException.Set(new global::System.InvalidOperationException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingIOException(string message) { + SWIGPendingException.Set(new global::System.IO.IOException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingNullReferenceException(string message) { + SWIGPendingException.Set(new global::System.NullReferenceException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingOutOfMemoryException(string message) { + SWIGPendingException.Set(new global::System.OutOfMemoryException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingOverflowException(string message) { + SWIGPendingException.Set(new global::System.OverflowException(message, SWIGPendingException.Retrieve())); + } + static void SetPendingSystemException(string message) { + SWIGPendingException.Set(new global::System.SystemException(message, SWIGPendingException.Retrieve())); + } + + static void SetPendingArgumentException(string message, string paramName) { + SWIGPendingException.Set(new global::System.ArgumentException(message, paramName, SWIGPendingException.Retrieve())); + } + static void SetPendingArgumentNullException(string message, string paramName) { + global::System.Exception e = SWIGPendingException.Retrieve(); + if (e != null) message = message + " Inner Exception: " + e.Message; + SWIGPendingException.Set(new global::System.ArgumentNullException(paramName, message)); + } + static void SetPendingArgumentOutOfRangeException(string message, string paramName) { + global::System.Exception e = SWIGPendingException.Retrieve(); + if (e != null) message = message + " Inner Exception: " + e.Message; + SWIGPendingException.Set(new global::System.ArgumentOutOfRangeException(paramName, message)); + } + + static SWIGExceptionHelper() { + SWIGRegisterExceptionCallbacks_icsneocsharp( + applicationDelegate, + arithmeticDelegate, + divideByZeroDelegate, + indexOutOfRangeDelegate, + invalidCastDelegate, + invalidOperationDelegate, + ioDelegate, + nullReferenceDelegate, + outOfMemoryDelegate, + overflowDelegate, + systemDelegate); + + SWIGRegisterExceptionCallbacksArgument_icsneocsharp( + argumentDelegate, + argumentNullDelegate, + argumentOutOfRangeDelegate); + } + } + + protected static SWIGExceptionHelper swigExceptionHelper = new SWIGExceptionHelper(); + + public class SWIGPendingException { + [global::System.ThreadStatic] + private static global::System.Exception pendingException = null; + private static int numExceptionsPending = 0; + private static global::System.Object exceptionsLock = null; + + public static bool Pending { + get { + bool pending = false; + if (numExceptionsPending > 0) + if (pendingException != null) + pending = true; + return pending; + } + } + + public static void Set(global::System.Exception e) { + if (pendingException != null) + throw new global::System.ApplicationException("FATAL: An earlier pending exception from unmanaged code was missed and thus not thrown (" + pendingException.ToString() + ")", e); + pendingException = e; + lock(exceptionsLock) { + numExceptionsPending++; + } + } + + public static global::System.Exception Retrieve() { + global::System.Exception e = null; + if (numExceptionsPending > 0) { + if (pendingException != null) { + e = pendingException; + pendingException = null; + lock(exceptionsLock) { + numExceptionsPending--; + } + } + } + return e; + } + + static SWIGPendingException() { + exceptionsLock = new global::System.Object(); + } + } + + + protected class SWIGStringHelper { + + public delegate string SWIGStringDelegate(string message); + static SWIGStringDelegate stringDelegate = new SWIGStringDelegate(CreateString); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="SWIGRegisterStringCallback_icsneocsharp")] + public static extern void SWIGRegisterStringCallback_icsneocsharp(SWIGStringDelegate stringDelegate); + + static string CreateString(string cString) { + return cString; + } + + static SWIGStringHelper() { + SWIGRegisterStringCallback_icsneocsharp(stringDelegate); + } + } + + static protected SWIGStringHelper swigStringHelper = new SWIGStringHelper(); + + + static icsneocsharpPINVOKE() { + } + + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_findAllDevices")] + public static extern void icsneo_findAllDevices(global::System.Runtime.InteropServices.HandleRef jarg1, ref int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_freeUnconnectedDevices")] + public static extern void icsneo_freeUnconnectedDevices(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_serialNumToString")] + public static extern bool icsneo_serialNumToString(uint jarg1, System.Text.StringBuilder jarg2, ref int jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_serialStringToNum")] + public static extern uint icsneo_serialStringToNum(System.Text.StringBuilder jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_isValidNeoDevice")] + public static extern bool icsneo_isValidNeoDevice(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_openDevice")] + public static extern bool icsneo_openDevice(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_closeDevice")] + public static extern bool icsneo_closeDevice(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_isOpen")] + public static extern bool icsneo_isOpen(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_goOnline")] + public static extern bool icsneo_goOnline(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_goOffline")] + public static extern bool icsneo_goOffline(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_isOnline")] + public static extern bool icsneo_isOnline(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_enableMessagePolling")] + public static extern bool icsneo_enableMessagePolling(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_disableMessagePolling")] + public static extern bool icsneo_disableMessagePolling(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_isMessagePollingEnabled")] + public static extern bool icsneo_isMessagePollingEnabled(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getMessages")] + public static extern bool icsneo_getMessages(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, ref int jarg3, ulong jarg4); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getPollingMessageLimit")] + public static extern uint icsneo_getPollingMessageLimit(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_setPollingMessageLimit")] + public static extern bool icsneo_setPollingMessageLimit(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getProductName")] + public static extern bool icsneo_getProductName(global::System.Runtime.InteropServices.HandleRef jarg1, System.Text.StringBuilder jarg2, ref int jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getProductNameForType")] + public static extern bool icsneo_getProductNameForType(uint jarg1, System.Text.StringBuilder jarg2, ref int jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsRefresh")] + public static extern bool icsneo_settingsRefresh(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApply")] + public static extern bool icsneo_settingsApply(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApplyTemporary")] + public static extern bool icsneo_settingsApplyTemporary(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApplyDefaults")] + public static extern bool icsneo_settingsApplyDefaults(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApplyDefaultsTemporary")] + public static extern bool icsneo_settingsApplyDefaultsTemporary(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsReadStructure")] + public static extern int icsneo_settingsReadStructure(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, uint jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApplyStructure")] + public static extern bool icsneo_settingsApplyStructure(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, uint jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_settingsApplyStructureTemporary")] + public static extern bool icsneo_settingsApplyStructureTemporary(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, uint jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getBaudrate")] + public static extern long icsneo_getBaudrate(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_setBaudrate")] + public static extern bool icsneo_setBaudrate(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2, long jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getFDBaudrate")] + public static extern long icsneo_getFDBaudrate(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_setFDBaudrate")] + public static extern bool icsneo_setFDBaudrate(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2, long jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_transmit")] + public static extern bool icsneo_transmit(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_transmitMessages")] + public static extern bool icsneo_transmitMessages(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, uint jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_setWriteBlocks")] + public static extern void icsneo_setWriteBlocks(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_describeDevice")] + public static extern bool icsneo_describeDevice(global::System.Runtime.InteropServices.HandleRef jarg1, System.Text.StringBuilder jarg2, ref int jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getVersion")] + public static extern global::System.IntPtr icsneo_getVersion(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getEvents")] + public static extern bool icsneo_getEvents(global::System.Runtime.InteropServices.HandleRef jarg1, ref int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getDeviceEvents")] + public static extern bool icsneo_getDeviceEvents(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, ref int jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getLastError")] + public static extern bool icsneo_getLastError(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_discardAllEvents")] + public static extern void icsneo_discardAllEvents(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_discardDeviceEvents")] + public static extern void icsneo_discardDeviceEvents(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_setEventLimit")] + public static extern void icsneo_setEventLimit(uint jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getEventLimit")] + public static extern uint icsneo_getEventLimit(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getSupportedDevices")] + public static extern bool icsneo_getSupportedDevices(global::System.Runtime.InteropServices.HandleRef jarg1, ref int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_icsneo_getTimestampResolution")] + public static extern bool icsneo_getTimestampResolution(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_device_set")] + public static extern void neodevice_t_device_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_device_get")] + public static extern global::System.IntPtr neodevice_t_device_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_handle_set")] + public static extern void neodevice_t_handle_set(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_handle_get")] + public static extern int neodevice_t_handle_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_type_set")] + public static extern void neodevice_t_type_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_type_get")] + public static extern uint neodevice_t_type_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_serial_set")] + public static extern void neodevice_t_serial_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_serial_get")] + public static extern string neodevice_t_serial_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neodevice_t")] + public static extern global::System.IntPtr new_neodevice_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neodevice_t")] + public static extern void delete_neodevice_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_globalError_set")] + public static extern void neomessage_statusbitfield_t_globalError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_globalError_get")] + public static extern uint neomessage_statusbitfield_t_globalError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_transmitMessage_set")] + public static extern void neomessage_statusbitfield_t_transmitMessage_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_transmitMessage_get")] + public static extern uint neomessage_statusbitfield_t_transmitMessage_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_extendedFrame_set")] + public static extern void neomessage_statusbitfield_t_extendedFrame_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_extendedFrame_get")] + public static extern uint neomessage_statusbitfield_t_extendedFrame_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_remoteFrame_set")] + public static extern void neomessage_statusbitfield_t_remoteFrame_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_remoteFrame_get")] + public static extern uint neomessage_statusbitfield_t_remoteFrame_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_crcError_set")] + public static extern void neomessage_statusbitfield_t_crcError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_crcError_get")] + public static extern uint neomessage_statusbitfield_t_crcError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canErrorPassive_set")] + public static extern void neomessage_statusbitfield_t_canErrorPassive_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canErrorPassive_get")] + public static extern uint neomessage_statusbitfield_t_canErrorPassive_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_incompleteFrame_set")] + public static extern void neomessage_statusbitfield_t_incompleteFrame_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_incompleteFrame_get")] + public static extern uint neomessage_statusbitfield_t_incompleteFrame_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_lostArbitration_set")] + public static extern void neomessage_statusbitfield_t_lostArbitration_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_lostArbitration_get")] + public static extern uint neomessage_statusbitfield_t_lostArbitration_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_undefinedError_set")] + public static extern void neomessage_statusbitfield_t_undefinedError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_undefinedError_get")] + public static extern uint neomessage_statusbitfield_t_undefinedError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusOff_set")] + public static extern void neomessage_statusbitfield_t_canBusOff_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusOff_get")] + public static extern uint neomessage_statusbitfield_t_canBusOff_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canErrorWarning_set")] + public static extern void neomessage_statusbitfield_t_canErrorWarning_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canErrorWarning_get")] + public static extern uint neomessage_statusbitfield_t_canErrorWarning_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusShortedPlus_set")] + public static extern void neomessage_statusbitfield_t_canBusShortedPlus_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusShortedPlus_get")] + public static extern uint neomessage_statusbitfield_t_canBusShortedPlus_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusShortedGround_set")] + public static extern void neomessage_statusbitfield_t_canBusShortedGround_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canBusShortedGround_get")] + public static extern uint neomessage_statusbitfield_t_canBusShortedGround_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_checksumError_set")] + public static extern void neomessage_statusbitfield_t_checksumError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_checksumError_get")] + public static extern uint neomessage_statusbitfield_t_checksumError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_badMessageBitTimeError_set")] + public static extern void neomessage_statusbitfield_t_badMessageBitTimeError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_badMessageBitTimeError_get")] + public static extern uint neomessage_statusbitfield_t_badMessageBitTimeError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_ifrData_set")] + public static extern void neomessage_statusbitfield_t_ifrData_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_ifrData_get")] + public static extern uint neomessage_statusbitfield_t_ifrData_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_hardwareCommError_set")] + public static extern void neomessage_statusbitfield_t_hardwareCommError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_hardwareCommError_get")] + public static extern uint neomessage_statusbitfield_t_hardwareCommError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_expectedLengthError_set")] + public static extern void neomessage_statusbitfield_t_expectedLengthError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_expectedLengthError_get")] + public static extern uint neomessage_statusbitfield_t_expectedLengthError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_incomingNoMatch_set")] + public static extern void neomessage_statusbitfield_t_incomingNoMatch_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_incomingNoMatch_get")] + public static extern uint neomessage_statusbitfield_t_incomingNoMatch_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_statusBreak_set")] + public static extern void neomessage_statusbitfield_t_statusBreak_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_statusBreak_get")] + public static extern uint neomessage_statusbitfield_t_statusBreak_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_avsiRecOverflow_set")] + public static extern void neomessage_statusbitfield_t_avsiRecOverflow_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_avsiRecOverflow_get")] + public static extern uint neomessage_statusbitfield_t_avsiRecOverflow_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_testTrigger_set")] + public static extern void neomessage_statusbitfield_t_testTrigger_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_testTrigger_get")] + public static extern uint neomessage_statusbitfield_t_testTrigger_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_audioComment_set")] + public static extern void neomessage_statusbitfield_t_audioComment_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_audioComment_get")] + public static extern uint neomessage_statusbitfield_t_audioComment_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_gpsData_set")] + public static extern void neomessage_statusbitfield_t_gpsData_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_gpsData_get")] + public static extern uint neomessage_statusbitfield_t_gpsData_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_analogDigitalInput_set")] + public static extern void neomessage_statusbitfield_t_analogDigitalInput_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_analogDigitalInput_get")] + public static extern uint neomessage_statusbitfield_t_analogDigitalInput_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_textComment_set")] + public static extern void neomessage_statusbitfield_t_textComment_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_textComment_get")] + public static extern uint neomessage_statusbitfield_t_textComment_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_networkMessageType_set")] + public static extern void neomessage_statusbitfield_t_networkMessageType_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_networkMessageType_get")] + public static extern uint neomessage_statusbitfield_t_networkMessageType_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_vsiTXUnderrun_set")] + public static extern void neomessage_statusbitfield_t_vsiTXUnderrun_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_vsiTXUnderrun_get")] + public static extern uint neomessage_statusbitfield_t_vsiTXUnderrun_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_vsiIFRCRCBit_set")] + public static extern void neomessage_statusbitfield_t_vsiIFRCRCBit_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_vsiIFRCRCBit_get")] + public static extern uint neomessage_statusbitfield_t_vsiIFRCRCBit_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_initMessage_set")] + public static extern void neomessage_statusbitfield_t_initMessage_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_initMessage_get")] + public static extern uint neomessage_statusbitfield_t_initMessage_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_flexraySecondStartupFrame_set")] + public static extern void neomessage_statusbitfield_t_flexraySecondStartupFrame_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_flexraySecondStartupFrame_get")] + public static extern uint neomessage_statusbitfield_t_flexraySecondStartupFrame_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_extended_set")] + public static extern void neomessage_statusbitfield_t_extended_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_extended_get")] + public static extern uint neomessage_statusbitfield_t_extended_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_hasValue_set")] + public static extern void neomessage_statusbitfield_t_hasValue_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_hasValue_get")] + public static extern uint neomessage_statusbitfield_t_hasValue_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_valueIsBoolean_set")] + public static extern void neomessage_statusbitfield_t_valueIsBoolean_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_valueIsBoolean_get")] + public static extern uint neomessage_statusbitfield_t_valueIsBoolean_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_highVoltage_set")] + public static extern void neomessage_statusbitfield_t_highVoltage_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_highVoltage_get")] + public static extern uint neomessage_statusbitfield_t_highVoltage_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_longMessage_set")] + public static extern void neomessage_statusbitfield_t_longMessage_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_longMessage_get")] + public static extern uint neomessage_statusbitfield_t_longMessage_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_globalChange_set")] + public static extern void neomessage_statusbitfield_t_globalChange_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_globalChange_get")] + public static extern uint neomessage_statusbitfield_t_globalChange_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_errorFrame_set")] + public static extern void neomessage_statusbitfield_t_errorFrame_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_errorFrame_get")] + public static extern uint neomessage_statusbitfield_t_errorFrame_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_endOfLongMessage_set")] + public static extern void neomessage_statusbitfield_t_endOfLongMessage_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_endOfLongMessage_get")] + public static extern uint neomessage_statusbitfield_t_endOfLongMessage_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXBreakNotZero_set")] + public static extern void neomessage_statusbitfield_t_linErrorRXBreakNotZero_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXBreakNotZero_get")] + public static extern uint neomessage_statusbitfield_t_linErrorRXBreakNotZero_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXBreakTooShort_set")] + public static extern void neomessage_statusbitfield_t_linErrorRXBreakTooShort_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXBreakTooShort_get")] + public static extern uint neomessage_statusbitfield_t_linErrorRXBreakTooShort_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXSyncNot55_set")] + public static extern void neomessage_statusbitfield_t_linErrorRXSyncNot55_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXSyncNot55_get")] + public static extern uint neomessage_statusbitfield_t_linErrorRXSyncNot55_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set")] + public static extern void neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get")] + public static extern uint neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorTXRXMismatch_set")] + public static extern void neomessage_statusbitfield_t_linErrorTXRXMismatch_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorTXRXMismatch_get")] + public static extern uint neomessage_statusbitfield_t_linErrorTXRXMismatch_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorMessageIDParity_set")] + public static extern void neomessage_statusbitfield_t_linErrorMessageIDParity_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linErrorMessageIDParity_get")] + public static extern uint neomessage_statusbitfield_t_linErrorMessageIDParity_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linSyncFrameError_set")] + public static extern void neomessage_statusbitfield_t_linSyncFrameError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linSyncFrameError_get")] + public static extern uint neomessage_statusbitfield_t_linSyncFrameError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linIDFrameError_set")] + public static extern void neomessage_statusbitfield_t_linIDFrameError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linIDFrameError_get")] + public static extern uint neomessage_statusbitfield_t_linIDFrameError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linSlaveByteError_set")] + public static extern void neomessage_statusbitfield_t_linSlaveByteError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linSlaveByteError_get")] + public static extern uint neomessage_statusbitfield_t_linSlaveByteError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_rxTimeoutError_set")] + public static extern void neomessage_statusbitfield_t_rxTimeoutError_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_rxTimeoutError_get")] + public static extern uint neomessage_statusbitfield_t_rxTimeoutError_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linNoSlaveData_set")] + public static extern void neomessage_statusbitfield_t_linNoSlaveData_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_linNoSlaveData_get")] + public static extern uint neomessage_statusbitfield_t_linNoSlaveData_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdESI_set")] + public static extern void neomessage_statusbitfield_t_canfdESI_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdESI_get")] + public static extern uint neomessage_statusbitfield_t_canfdESI_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdIDE_set")] + public static extern void neomessage_statusbitfield_t_canfdIDE_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdIDE_get")] + public static extern uint neomessage_statusbitfield_t_canfdIDE_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdRTR_set")] + public static extern void neomessage_statusbitfield_t_canfdRTR_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdRTR_get")] + public static extern uint neomessage_statusbitfield_t_canfdRTR_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdFDF_set")] + public static extern void neomessage_statusbitfield_t_canfdFDF_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdFDF_get")] + public static extern uint neomessage_statusbitfield_t_canfdFDF_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdBRS_set")] + public static extern void neomessage_statusbitfield_t_canfdBRS_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_canfdBRS_get")] + public static extern uint neomessage_statusbitfield_t_canfdBRS_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_statusBitfield_set")] + public static extern void neomessage_statusbitfield_t_statusBitfield_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_statusbitfield_t_statusBitfield_get")] + public static extern global::System.IntPtr neomessage_statusbitfield_t_statusBitfield_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neomessage_statusbitfield_t")] + public static extern global::System.IntPtr new_neomessage_statusbitfield_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neomessage_statusbitfield_t")] + public static extern void delete_neomessage_statusbitfield_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_status_set")] + public static extern void neomessage_t_status_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_status_get")] + public static extern global::System.IntPtr neomessage_t_status_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_timestamp_set")] + public static extern void neomessage_t_timestamp_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_timestamp_get")] + public static extern ulong neomessage_t_timestamp_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_timestampReserved_set")] + public static extern void neomessage_t_timestampReserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_timestampReserved_get")] + public static extern ulong neomessage_t_timestampReserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_data_set")] + public static extern void neomessage_t_data_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte[] jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_data_get")] + public static extern System.IntPtr neomessage_t_data_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_length_set")] + public static extern void neomessage_t_length_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_length_get")] + public static extern uint neomessage_t_length_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_header_set")] + public static extern void neomessage_t_header_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_header_get")] + public static extern global::System.IntPtr neomessage_t_header_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_netid_set")] + public static extern void neomessage_t_netid_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_netid_get")] + public static extern ushort neomessage_t_netid_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_type_set")] + public static extern void neomessage_t_type_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_type_get")] + public static extern byte neomessage_t_type_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_reserved_set")] + public static extern void neomessage_t_reserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_reserved_get")] + public static extern global::System.IntPtr neomessage_t_reserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neomessage_t")] + public static extern global::System.IntPtr new_neomessage_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neomessage_t")] + public static extern void delete_neomessage_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_status_set")] + public static extern void neomessage_can_t_status_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_status_get")] + public static extern global::System.IntPtr neomessage_can_t_status_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_timestamp_set")] + public static extern void neomessage_can_t_timestamp_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_timestamp_get")] + public static extern ulong neomessage_can_t_timestamp_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_timestampReserved_set")] + public static extern void neomessage_can_t_timestampReserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_timestampReserved_get")] + public static extern ulong neomessage_can_t_timestampReserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_data_set")] + public static extern void neomessage_can_t_data_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte[] jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_data_get")] + public static extern System.IntPtr neomessage_can_t_data_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_length_set")] + public static extern void neomessage_can_t_length_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_length_get")] + public static extern uint neomessage_can_t_length_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_arbid_set")] + public static extern void neomessage_can_t_arbid_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_arbid_get")] + public static extern uint neomessage_can_t_arbid_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_netid_set")] + public static extern void neomessage_can_t_netid_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_netid_get")] + public static extern ushort neomessage_can_t_netid_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_type_set")] + public static extern void neomessage_can_t_type_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_type_get")] + public static extern byte neomessage_can_t_type_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_dlcOnWire_set")] + public static extern void neomessage_can_t_dlcOnWire_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_dlcOnWire_get")] + public static extern byte neomessage_can_t_dlcOnWire_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_reserved_set")] + public static extern void neomessage_can_t_reserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_reserved_get")] + public static extern global::System.IntPtr neomessage_can_t_reserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neomessage_can_t")] + public static extern global::System.IntPtr new_neomessage_can_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neomessage_can_t")] + public static extern void delete_neomessage_can_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_status_set")] + public static extern void neomessage_eth_t_status_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_status_get")] + public static extern global::System.IntPtr neomessage_eth_t_status_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_timestamp_set")] + public static extern void neomessage_eth_t_timestamp_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_timestamp_get")] + public static extern ulong neomessage_eth_t_timestamp_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_timestampReserved_set")] + public static extern void neomessage_eth_t_timestampReserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_timestampReserved_get")] + public static extern ulong neomessage_eth_t_timestampReserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_data_set")] + public static extern void neomessage_eth_t_data_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte[] jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_data_get")] + public static extern System.IntPtr neomessage_eth_t_data_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_length_set")] + public static extern void neomessage_eth_t_length_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_length_get")] + public static extern uint neomessage_eth_t_length_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_preemptionFlags_set")] + public static extern void neomessage_eth_t_preemptionFlags_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_preemptionFlags_get")] + public static extern byte neomessage_eth_t_preemptionFlags_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_reservedHeader_set")] + public static extern void neomessage_eth_t_reservedHeader_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_reservedHeader_get")] + public static extern global::System.IntPtr neomessage_eth_t_reservedHeader_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_netid_set")] + public static extern void neomessage_eth_t_netid_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_netid_get")] + public static extern ushort neomessage_eth_t_netid_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_type_set")] + public static extern void neomessage_eth_t_type_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_type_get")] + public static extern byte neomessage_eth_t_type_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_reserved_set")] + public static extern void neomessage_eth_t_reserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_reserved_get")] + public static extern global::System.IntPtr neomessage_eth_t_reserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neomessage_eth_t")] + public static extern global::System.IntPtr new_neomessage_eth_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neomessage_eth_t")] + public static extern void delete_neomessage_eth_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_DEVICETYPE_LONGEST_NAME_get")] + public static extern int ICSNEO_DEVICETYPE_LONGEST_NAME_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get")] + public static extern int ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_major_set")] + public static extern void neoversion_t_major_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_major_get")] + public static extern ushort neoversion_t_major_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_minor_set")] + public static extern void neoversion_t_minor_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_minor_get")] + public static extern ushort neoversion_t_minor_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_patch_set")] + public static extern void neoversion_t_patch_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_patch_get")] + public static extern ushort neoversion_t_patch_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_metadata_set")] + public static extern void neoversion_t_metadata_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_metadata_get")] + public static extern string neoversion_t_metadata_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_buildBranch_set")] + public static extern void neoversion_t_buildBranch_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_buildBranch_get")] + public static extern string neoversion_t_buildBranch_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_buildTag_set")] + public static extern void neoversion_t_buildTag_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_buildTag_get")] + public static extern string neoversion_t_buildTag_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_reserved_set")] + public static extern void neoversion_t_reserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoversion_t_reserved_get")] + public static extern string neoversion_t_reserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neoversion_t")] + public static extern global::System.IntPtr new_neoversion_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neoversion_t")] + public static extern void delete_neoversion_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_description_set")] + public static extern void neoevent_t_description_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_description_get")] + public static extern string neoevent_t_description_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_timestamp_set")] + public static extern void neoevent_t_timestamp_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_timestamp_get")] + public static extern global::System.IntPtr neoevent_t_timestamp_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_eventNumber_set")] + public static extern void neoevent_t_eventNumber_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_eventNumber_get")] + public static extern uint neoevent_t_eventNumber_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_severity_set")] + public static extern void neoevent_t_severity_set(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_severity_get")] + public static extern byte neoevent_t_severity_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_serial_set")] + public static extern void neoevent_t_serial_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_serial_get")] + public static extern string neoevent_t_serial_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_reserved_set")] + public static extern void neoevent_t_reserved_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_reserved_get")] + public static extern global::System.IntPtr neoevent_t_reserved_get(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neoevent_t")] + public static extern global::System.IntPtr new_neoevent_t(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neoevent_t")] + public static extern void delete_neoevent_t(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_DEVICE_get")] + public static extern int ICSNEO_NETID_DEVICE_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN_get")] + public static extern int ICSNEO_NETID_HSCAN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_MSCAN_get")] + public static extern int ICSNEO_NETID_MSCAN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_SWCAN_get")] + public static extern int ICSNEO_NETID_SWCAN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LSFTCAN_get")] + public static extern int ICSNEO_NETID_LSFTCAN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FORDSCP_get")] + public static extern int ICSNEO_NETID_FORDSCP_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_J1708_get")] + public static extern int ICSNEO_NETID_J1708_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_AUX_get")] + public static extern int ICSNEO_NETID_AUX_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_J1850VPW_get")] + public static extern int ICSNEO_NETID_J1850VPW_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISO_get")] + public static extern int ICSNEO_NETID_ISO_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISOPIC_get")] + public static extern int ICSNEO_NETID_ISOPIC_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_MAIN51_get")] + public static extern int ICSNEO_NETID_MAIN51_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_get")] + public static extern int ICSNEO_NETID_RED_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_SCI_get")] + public static extern int ICSNEO_NETID_SCI_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISO2_get")] + public static extern int ICSNEO_NETID_ISO2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISO14230_get")] + public static extern int ICSNEO_NETID_ISO14230_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN_get")] + public static extern int ICSNEO_NETID_LIN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET1_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET1_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET2_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET3_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET3_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_EXT_MEMORYREAD_get")] + public static extern int ICSNEO_NETID_RED_EXT_MEMORYREAD_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_INT_MEMORYREAD_get")] + public static extern int ICSNEO_NETID_RED_INT_MEMORYREAD_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_DFLASH_READ_get")] + public static extern int ICSNEO_NETID_RED_DFLASH_READ_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_SDCARD_READ_get")] + public static extern int ICSNEO_NETID_RED_SDCARD_READ_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_CAN_ERRBITS_get")] + public static extern int ICSNEO_NETID_CAN_ERRBITS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get")] + public static extern int ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get")] + public static extern int ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get")] + public static extern int ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get")] + public static extern int ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get")] + public static extern int ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get")] + public static extern int ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get")] + public static extern int ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get")] + public static extern int ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get")] + public static extern int ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get")] + public static extern int ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_NEOVI_NETWORK_get")] + public static extern int ICSNEO_NETID_RED_NEOVI_NETWORK_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get")] + public static extern int ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_OLDFORMAT_get")] + public static extern int ICSNEO_NETID_RED_OLDFORMAT_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_SCOPE_CAPTURE_get")] + public static extern int ICSNEO_NETID_RED_SCOPE_CAPTURE_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_HARDWARE_EXCEP_get")] + public static extern int ICSNEO_NETID_RED_HARDWARE_EXCEP_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_GET_RTC_get")] + public static extern int ICSNEO_NETID_RED_GET_RTC_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISO3_get")] + public static extern int ICSNEO_NETID_ISO3_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN2_get")] + public static extern int ICSNEO_NETID_HSCAN2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN3_get")] + public static extern int ICSNEO_NETID_HSCAN3_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET4_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET4_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET5_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET5_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ISO4_get")] + public static extern int ICSNEO_NETID_ISO4_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN2_get")] + public static extern int ICSNEO_NETID_LIN2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN3_get")] + public static extern int ICSNEO_NETID_LIN3_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN4_get")] + public static extern int ICSNEO_NETID_LIN4_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_APP_ERROR_get")] + public static extern int ICSNEO_NETID_RED_APP_ERROR_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_CGI_get")] + public static extern int ICSNEO_NETID_CGI_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RESET_STATUS_get")] + public static extern int ICSNEO_NETID_RESET_STATUS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FB_STATUS_get")] + public static extern int ICSNEO_NETID_FB_STATUS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_APP_SIGNAL_STATUS_get")] + public static extern int ICSNEO_NETID_APP_SIGNAL_STATUS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get")] + public static extern int ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get")] + public static extern int ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LOGGING_OVERFLOW_get")] + public static extern int ICSNEO_NETID_LOGGING_OVERFLOW_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_READ_SETTINGS_get")] + public static extern int ICSNEO_NETID_READ_SETTINGS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN4_get")] + public static extern int ICSNEO_NETID_HSCAN4_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN5_get")] + public static extern int ICSNEO_NETID_HSCAN5_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RS232_get")] + public static extern int ICSNEO_NETID_RS232_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_UART_get")] + public static extern int ICSNEO_NETID_UART_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_UART2_get")] + public static extern int ICSNEO_NETID_UART2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_UART3_get")] + public static extern int ICSNEO_NETID_UART3_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_UART4_get")] + public static extern int ICSNEO_NETID_UART4_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_SWCAN2_get")] + public static extern int ICSNEO_NETID_SWCAN2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ETHERNET_DAQ_get")] + public static extern int ICSNEO_NETID_ETHERNET_DAQ_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_DATA_TO_HOST_get")] + public static extern int ICSNEO_NETID_DATA_TO_HOST_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_TEXTAPI_TO_HOST_get")] + public static extern int ICSNEO_NETID_TEXTAPI_TO_HOST_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET6_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET6_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_RED_VBAT_get")] + public static extern int ICSNEO_NETID_RED_VBAT_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET7_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET7_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET8_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET8_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET9_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET9_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET10_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET10_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET11_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET11_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY1A_get")] + public static extern int ICSNEO_NETID_FLEXRAY1A_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY1B_get")] + public static extern int ICSNEO_NETID_FLEXRAY1B_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY2A_get")] + public static extern int ICSNEO_NETID_FLEXRAY2A_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY2B_get")] + public static extern int ICSNEO_NETID_FLEXRAY2B_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN5_get")] + public static extern int ICSNEO_NETID_LIN5_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY_get")] + public static extern int ICSNEO_NETID_FLEXRAY_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_FLEXRAY2_get")] + public static extern int ICSNEO_NETID_FLEXRAY2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_OP_ETHERNET12_get")] + public static extern int ICSNEO_NETID_OP_ETHERNET12_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_MOST25_get")] + public static extern int ICSNEO_NETID_MOST25_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_MOST50_get")] + public static extern int ICSNEO_NETID_MOST50_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_MOST150_get")] + public static extern int ICSNEO_NETID_MOST150_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ETHERNET_get")] + public static extern int ICSNEO_NETID_ETHERNET_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_GMFSA_get")] + public static extern int ICSNEO_NETID_GMFSA_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_TCP_get")] + public static extern int ICSNEO_NETID_TCP_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN6_get")] + public static extern int ICSNEO_NETID_HSCAN6_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HSCAN7_get")] + public static extern int ICSNEO_NETID_HSCAN7_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LIN6_get")] + public static extern int ICSNEO_NETID_LIN6_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_LSFTCAN2_get")] + public static extern int ICSNEO_NETID_LSFTCAN2_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_HW_COM_LATENCY_TEST_get")] + public static extern int ICSNEO_NETID_HW_COM_LATENCY_TEST_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_DEVICE_STATUS_get")] + public static extern int ICSNEO_NETID_DEVICE_STATUS_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_ANY_get")] + public static extern int ICSNEO_NETID_ANY_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETID_INVALID_get")] + public static extern int ICSNEO_NETID_INVALID_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_INVALID_get")] + public static extern int ICSNEO_NETWORK_TYPE_INVALID_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_INTERNAL_get")] + public static extern int ICSNEO_NETWORK_TYPE_INTERNAL_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_CAN_get")] + public static extern int ICSNEO_NETWORK_TYPE_CAN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_LIN_get")] + public static extern int ICSNEO_NETWORK_TYPE_LIN_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_FLEXRAY_get")] + public static extern int ICSNEO_NETWORK_TYPE_FLEXRAY_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_MOST_get")] + public static extern int ICSNEO_NETWORK_TYPE_MOST_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_ETHERNET_get")] + public static extern int ICSNEO_NETWORK_TYPE_ETHERNET_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_ANY_get")] + public static extern int ICSNEO_NETWORK_TYPE_ANY_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_ICSNEO_NETWORK_TYPE_OTHER_get")] + public static extern int ICSNEO_NETWORK_TYPE_OTHER_get(); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_can_t_cast")] + public static extern global::System.IntPtr neomessage_can_t_cast(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_eth_t_cast")] + public static extern global::System.IntPtr neomessage_eth_t_cast(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_from_can_neomessage_t_cast")] + public static extern global::System.IntPtr from_can_neomessage_t_cast(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_from_eth_neomessage_t_cast")] + public static extern global::System.IntPtr from_eth_neomessage_t_cast(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neodevice_t_array")] + public static extern global::System.IntPtr new_neodevice_t_array(int jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neodevice_t_array")] + public static extern void delete_neodevice_t_array(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_array_getitem")] + public static extern global::System.IntPtr neodevice_t_array_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neodevice_t_array_setitem")] + public static extern void neodevice_t_array_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neoevent_t_array")] + public static extern global::System.IntPtr new_neoevent_t_array(int jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neoevent_t_array")] + public static extern void delete_neoevent_t_array(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_array_getitem")] + public static extern global::System.IntPtr neoevent_t_array_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neoevent_t_array_setitem")] + public static extern void neoevent_t_array_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_new_neomessage_t_array")] + public static extern global::System.IntPtr new_neomessage_t_array(int jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_delete_neomessage_t_array")] + public static extern void delete_neomessage_t_array(global::System.Runtime.InteropServices.HandleRef jarg1); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_array_getitem")] + public static extern global::System.IntPtr neomessage_t_array_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2); + + [global::System.Runtime.InteropServices.DllImport("icsneocsharp.dll", EntryPoint="CSharp_neomessage_t_array_setitem")] + public static extern void neomessage_t_array_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3); +} diff --git a/examples/csharp/libicsneocsharp-example.csproj b/examples/csharp/libicsneocsharp-example.csproj new file mode 100644 index 0000000..efb4388 --- /dev/null +++ b/examples/csharp/libicsneocsharp-example.csproj @@ -0,0 +1,9 @@ + + + + Exe + netcoreapp2.2 + libicsneocsharp_example + + + diff --git a/examples/csharp/libicsneocsharp-example.sln b/examples/csharp/libicsneocsharp-example.sln new file mode 100644 index 0000000..97f02f8 --- /dev/null +++ b/examples/csharp/libicsneocsharp-example.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.28922.388 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "libicsneocsharp-example", "libicsneocsharp-example.csproj", "{391FCF02-39BB-4C81-AE99-6785A7EA13A1}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {391FCF02-39BB-4C81-AE99-6785A7EA13A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {391FCF02-39BB-4C81-AE99-6785A7EA13A1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {391FCF02-39BB-4C81-AE99-6785A7EA13A1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {391FCF02-39BB-4C81-AE99-6785A7EA13A1}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {9610ED61-57FA-46BD-A071-DC7DB7BAC3A9} + EndGlobalSection +EndGlobal diff --git a/examples/csharp/neodevice_t.cs b/examples/csharp/neodevice_t.cs new file mode 100644 index 0000000..30e60a5 --- /dev/null +++ b/examples/csharp/neodevice_t.cs @@ -0,0 +1,90 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neodevice_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neodevice_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neodevice_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neodevice_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neodevice_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public SWIGTYPE_p_void device { + set { + icsneocsharpPINVOKE.neodevice_t_device_set(swigCPtr, SWIGTYPE_p_void.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neodevice_t_device_get(swigCPtr); + SWIGTYPE_p_void ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_void(cPtr, false); + return ret; + } + } + + public int handle { + set { + icsneocsharpPINVOKE.neodevice_t_handle_set(swigCPtr, value); + } + get { + int ret = icsneocsharpPINVOKE.neodevice_t_handle_get(swigCPtr); + return ret; + } + } + + public uint type { + set { + icsneocsharpPINVOKE.neodevice_t_type_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neodevice_t_type_get(swigCPtr); + return ret; + } + } + + public string serial { + set { + icsneocsharpPINVOKE.neodevice_t_serial_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neodevice_t_serial_get(swigCPtr); + return ret; + } + } + + public neodevice_t() : this(icsneocsharpPINVOKE.new_neodevice_t(), true) { + } + +} diff --git a/examples/csharp/neoevent_t.cs b/examples/csharp/neoevent_t.cs new file mode 100644 index 0000000..917c335 --- /dev/null +++ b/examples/csharp/neoevent_t.cs @@ -0,0 +1,112 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neoevent_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neoevent_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neoevent_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neoevent_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neoevent_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public string description { + set { + icsneocsharpPINVOKE.neoevent_t_description_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoevent_t_description_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_time_t timestamp { + set { + icsneocsharpPINVOKE.neoevent_t_timestamp_set(swigCPtr, SWIGTYPE_p_time_t.getCPtr(value)); + if (icsneocsharpPINVOKE.SWIGPendingException.Pending) throw icsneocsharpPINVOKE.SWIGPendingException.Retrieve(); + } + get { + SWIGTYPE_p_time_t ret = new SWIGTYPE_p_time_t(icsneocsharpPINVOKE.neoevent_t_timestamp_get(swigCPtr), true); + if (icsneocsharpPINVOKE.SWIGPendingException.Pending) throw icsneocsharpPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } + } + + public uint eventNumber { + set { + icsneocsharpPINVOKE.neoevent_t_eventNumber_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neoevent_t_eventNumber_get(swigCPtr); + return ret; + } + } + + public byte severity { + set { + icsneocsharpPINVOKE.neoevent_t_severity_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neoevent_t_severity_get(swigCPtr); + return ret; + } + } + + public string serial { + set { + icsneocsharpPINVOKE.neoevent_t_serial_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoevent_t_serial_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char reserved { + set { + icsneocsharpPINVOKE.neoevent_t_reserved_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neoevent_t_reserved_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public neoevent_t() : this(icsneocsharpPINVOKE.new_neoevent_t(), true) { + } + +} diff --git a/examples/csharp/neomessage_can_t.cs b/examples/csharp/neomessage_can_t.cs new file mode 100644 index 0000000..cc21921 --- /dev/null +++ b/examples/csharp/neomessage_can_t.cs @@ -0,0 +1,155 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neomessage_can_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neomessage_can_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neomessage_can_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neomessage_can_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neomessage_can_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public neomessage_statusbitfield_t status { + set { + icsneocsharpPINVOKE.neomessage_can_t_status_set(swigCPtr, neomessage_statusbitfield_t.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_can_t_status_get(swigCPtr); + neomessage_statusbitfield_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_statusbitfield_t(cPtr, false); + return ret; + } + } + + public ulong timestamp { + set { + icsneocsharpPINVOKE.neomessage_can_t_timestamp_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_can_t_timestamp_get(swigCPtr); + return ret; + } + } + + public ulong timestampReserved { + set { + icsneocsharpPINVOKE.neomessage_can_t_timestampReserved_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_can_t_timestampReserved_get(swigCPtr); + return ret; + } + } + + public byte[] data { + set { + icsneocsharpPINVOKE.neomessage_can_t_data_set(swigCPtr, value); + } + + get { + byte[] ret = new byte[this.length]; + System.IntPtr data = icsneocsharpPINVOKE.neomessage_can_t_data_get(swigCPtr); + System.Runtime.InteropServices.Marshal.Copy(data, ret, 0, (int)this.length); + return ret; + } + + } + + public uint length { + set { + icsneocsharpPINVOKE.neomessage_can_t_length_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_can_t_length_get(swigCPtr); + return ret; + } + } + + public uint arbid { + set { + icsneocsharpPINVOKE.neomessage_can_t_arbid_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_can_t_arbid_get(swigCPtr); + return ret; + } + } + + public ushort netid { + set { + icsneocsharpPINVOKE.neomessage_can_t_netid_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neomessage_can_t_netid_get(swigCPtr); + return ret; + } + } + + public byte type { + set { + icsneocsharpPINVOKE.neomessage_can_t_type_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neomessage_can_t_type_get(swigCPtr); + return ret; + } + } + + public byte dlcOnWire { + set { + icsneocsharpPINVOKE.neomessage_can_t_dlcOnWire_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neomessage_can_t_dlcOnWire_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char reserved { + set { + icsneocsharpPINVOKE.neomessage_can_t_reserved_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_can_t_reserved_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public neomessage_can_t() : this(icsneocsharpPINVOKE.new_neomessage_can_t(), true) { + } + +} diff --git a/examples/csharp/neomessage_eth_t.cs b/examples/csharp/neomessage_eth_t.cs new file mode 100644 index 0000000..c75e133 --- /dev/null +++ b/examples/csharp/neomessage_eth_t.cs @@ -0,0 +1,156 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neomessage_eth_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neomessage_eth_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neomessage_eth_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neomessage_eth_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neomessage_eth_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public neomessage_statusbitfield_t status { + set { + icsneocsharpPINVOKE.neomessage_eth_t_status_set(swigCPtr, neomessage_statusbitfield_t.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_eth_t_status_get(swigCPtr); + neomessage_statusbitfield_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_statusbitfield_t(cPtr, false); + return ret; + } + } + + public ulong timestamp { + set { + icsneocsharpPINVOKE.neomessage_eth_t_timestamp_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_eth_t_timestamp_get(swigCPtr); + return ret; + } + } + + public ulong timestampReserved { + set { + icsneocsharpPINVOKE.neomessage_eth_t_timestampReserved_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_eth_t_timestampReserved_get(swigCPtr); + return ret; + } + } + + public byte[] data { + set { + icsneocsharpPINVOKE.neomessage_eth_t_data_set(swigCPtr, value); + } + + get { + byte[] ret = new byte[this.length]; + System.IntPtr data = icsneocsharpPINVOKE.neomessage_eth_t_data_get(swigCPtr); + System.Runtime.InteropServices.Marshal.Copy(data, ret, 0, (int)this.length); + return ret; + } + + } + + public uint length { + set { + icsneocsharpPINVOKE.neomessage_eth_t_length_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_eth_t_length_get(swigCPtr); + return ret; + } + } + + public byte preemptionFlags { + set { + icsneocsharpPINVOKE.neomessage_eth_t_preemptionFlags_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neomessage_eth_t_preemptionFlags_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char reservedHeader { + set { + icsneocsharpPINVOKE.neomessage_eth_t_reservedHeader_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_eth_t_reservedHeader_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public ushort netid { + set { + icsneocsharpPINVOKE.neomessage_eth_t_netid_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neomessage_eth_t_netid_get(swigCPtr); + return ret; + } + } + + public byte type { + set { + icsneocsharpPINVOKE.neomessage_eth_t_type_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neomessage_eth_t_type_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char reserved { + set { + icsneocsharpPINVOKE.neomessage_eth_t_reserved_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_eth_t_reserved_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public neomessage_eth_t() : this(icsneocsharpPINVOKE.new_neomessage_eth_t(), true) { + } + +} diff --git a/examples/csharp/neomessage_statusbitfield_t.cs b/examples/csharp/neomessage_statusbitfield_t.cs new file mode 100644 index 0000000..7fa87e9 --- /dev/null +++ b/examples/csharp/neomessage_statusbitfield_t.cs @@ -0,0 +1,610 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neomessage_statusbitfield_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neomessage_statusbitfield_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neomessage_statusbitfield_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neomessage_statusbitfield_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neomessage_statusbitfield_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public uint globalError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_globalError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_globalError_get(swigCPtr); + return ret; + } + } + + public uint transmitMessage { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_transmitMessage_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_transmitMessage_get(swigCPtr); + return ret; + } + } + + public uint extendedFrame { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_extendedFrame_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_extendedFrame_get(swigCPtr); + return ret; + } + } + + public uint remoteFrame { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_remoteFrame_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_remoteFrame_get(swigCPtr); + return ret; + } + } + + public uint crcError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_crcError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_crcError_get(swigCPtr); + return ret; + } + } + + public uint canErrorPassive { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canErrorPassive_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canErrorPassive_get(swigCPtr); + return ret; + } + } + + public uint incompleteFrame { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_incompleteFrame_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_incompleteFrame_get(swigCPtr); + return ret; + } + } + + public uint lostArbitration { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_lostArbitration_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_lostArbitration_get(swigCPtr); + return ret; + } + } + + public uint undefinedError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_undefinedError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_undefinedError_get(swigCPtr); + return ret; + } + } + + public uint canBusOff { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusOff_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusOff_get(swigCPtr); + return ret; + } + } + + public uint canErrorWarning { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canErrorWarning_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canErrorWarning_get(swigCPtr); + return ret; + } + } + + public uint canBusShortedPlus { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusShortedPlus_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusShortedPlus_get(swigCPtr); + return ret; + } + } + + public uint canBusShortedGround { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusShortedGround_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canBusShortedGround_get(swigCPtr); + return ret; + } + } + + public uint checksumError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_checksumError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_checksumError_get(swigCPtr); + return ret; + } + } + + public uint badMessageBitTimeError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_badMessageBitTimeError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_badMessageBitTimeError_get(swigCPtr); + return ret; + } + } + + public uint ifrData { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_ifrData_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_ifrData_get(swigCPtr); + return ret; + } + } + + public uint hardwareCommError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_hardwareCommError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_hardwareCommError_get(swigCPtr); + return ret; + } + } + + public uint expectedLengthError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_expectedLengthError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_expectedLengthError_get(swigCPtr); + return ret; + } + } + + public uint incomingNoMatch { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_incomingNoMatch_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_incomingNoMatch_get(swigCPtr); + return ret; + } + } + + public uint statusBreak { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_statusBreak_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_statusBreak_get(swigCPtr); + return ret; + } + } + + public uint avsiRecOverflow { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_avsiRecOverflow_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_avsiRecOverflow_get(swigCPtr); + return ret; + } + } + + public uint testTrigger { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_testTrigger_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_testTrigger_get(swigCPtr); + return ret; + } + } + + public uint audioComment { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_audioComment_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_audioComment_get(swigCPtr); + return ret; + } + } + + public uint gpsData { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_gpsData_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_gpsData_get(swigCPtr); + return ret; + } + } + + public uint analogDigitalInput { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_analogDigitalInput_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_analogDigitalInput_get(swigCPtr); + return ret; + } + } + + public uint textComment { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_textComment_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_textComment_get(swigCPtr); + return ret; + } + } + + public uint networkMessageType { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_networkMessageType_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_networkMessageType_get(swigCPtr); + return ret; + } + } + + public uint vsiTXUnderrun { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_vsiTXUnderrun_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_vsiTXUnderrun_get(swigCPtr); + return ret; + } + } + + public uint vsiIFRCRCBit { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_vsiIFRCRCBit_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_vsiIFRCRCBit_get(swigCPtr); + return ret; + } + } + + public uint initMessage { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_initMessage_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_initMessage_get(swigCPtr); + return ret; + } + } + + public uint flexraySecondStartupFrame { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_flexraySecondStartupFrame_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_flexraySecondStartupFrame_get(swigCPtr); + return ret; + } + } + + public uint extended { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_extended_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_extended_get(swigCPtr); + return ret; + } + } + + public uint hasValue { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_hasValue_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_hasValue_get(swigCPtr); + return ret; + } + } + + public uint valueIsBoolean { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_valueIsBoolean_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_valueIsBoolean_get(swigCPtr); + return ret; + } + } + + public uint highVoltage { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_highVoltage_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_highVoltage_get(swigCPtr); + return ret; + } + } + + public uint longMessage { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_longMessage_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_longMessage_get(swigCPtr); + return ret; + } + } + + public uint globalChange { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_globalChange_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_globalChange_get(swigCPtr); + return ret; + } + } + + public uint errorFrame { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_errorFrame_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_errorFrame_get(swigCPtr); + return ret; + } + } + + public uint endOfLongMessage { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_endOfLongMessage_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_endOfLongMessage_get(swigCPtr); + return ret; + } + } + + public uint linErrorRXBreakNotZero { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXBreakNotZero_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXBreakNotZero_get(swigCPtr); + return ret; + } + } + + public uint linErrorRXBreakTooShort { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXBreakTooShort_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXBreakTooShort_get(swigCPtr); + return ret; + } + } + + public uint linErrorRXSyncNot55 { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXSyncNot55_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXSyncNot55_get(swigCPtr); + return ret; + } + } + + public uint linErrorRXDataGreaterEight { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get(swigCPtr); + return ret; + } + } + + public uint linErrorTXRXMismatch { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorTXRXMismatch_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorTXRXMismatch_get(swigCPtr); + return ret; + } + } + + public uint linErrorMessageIDParity { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorMessageIDParity_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linErrorMessageIDParity_get(swigCPtr); + return ret; + } + } + + public uint linSyncFrameError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linSyncFrameError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linSyncFrameError_get(swigCPtr); + return ret; + } + } + + public uint linIDFrameError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linIDFrameError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linIDFrameError_get(swigCPtr); + return ret; + } + } + + public uint linSlaveByteError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linSlaveByteError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linSlaveByteError_get(swigCPtr); + return ret; + } + } + + public uint rxTimeoutError { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_rxTimeoutError_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_rxTimeoutError_get(swigCPtr); + return ret; + } + } + + public uint linNoSlaveData { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_linNoSlaveData_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_linNoSlaveData_get(swigCPtr); + return ret; + } + } + + public uint canfdESI { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdESI_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdESI_get(swigCPtr); + return ret; + } + } + + public uint canfdIDE { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdIDE_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdIDE_get(swigCPtr); + return ret; + } + } + + public uint canfdRTR { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdRTR_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdRTR_get(swigCPtr); + return ret; + } + } + + public uint canfdFDF { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdFDF_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdFDF_get(swigCPtr); + return ret; + } + } + + public uint canfdBRS { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdBRS_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_statusbitfield_t_canfdBRS_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_int statusBitfield { + set { + icsneocsharpPINVOKE.neomessage_statusbitfield_t_statusBitfield_set(swigCPtr, SWIGTYPE_p_unsigned_int.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_statusbitfield_t_statusBitfield_get(swigCPtr); + SWIGTYPE_p_unsigned_int ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_int(cPtr, false); + return ret; + } + } + + public neomessage_statusbitfield_t() : this(icsneocsharpPINVOKE.new_neomessage_statusbitfield_t(), true) { + } + +} diff --git a/examples/csharp/neomessage_t.cs b/examples/csharp/neomessage_t.cs new file mode 100644 index 0000000..f8d19fa --- /dev/null +++ b/examples/csharp/neomessage_t.cs @@ -0,0 +1,146 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neomessage_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neomessage_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neomessage_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neomessage_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neomessage_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public neomessage_statusbitfield_t status { + set { + icsneocsharpPINVOKE.neomessage_t_status_set(swigCPtr, neomessage_statusbitfield_t.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_t_status_get(swigCPtr); + neomessage_statusbitfield_t ret = (cPtr == global::System.IntPtr.Zero) ? null : new neomessage_statusbitfield_t(cPtr, false); + return ret; + } + } + + public ulong timestamp { + set { + icsneocsharpPINVOKE.neomessage_t_timestamp_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_t_timestamp_get(swigCPtr); + return ret; + } + } + + public ulong timestampReserved { + set { + icsneocsharpPINVOKE.neomessage_t_timestampReserved_set(swigCPtr, value); + } + get { + ulong ret = icsneocsharpPINVOKE.neomessage_t_timestampReserved_get(swigCPtr); + return ret; + } + } + + public byte[] data { + set { + icsneocsharpPINVOKE.neomessage_t_data_set(swigCPtr, value); + } + + get { + byte[] ret = new byte[this.length]; + System.IntPtr data = icsneocsharpPINVOKE.neomessage_t_data_get(swigCPtr); + System.Runtime.InteropServices.Marshal.Copy(data, ret, 0, (int)this.length); + return ret; + } + + } + + public uint length { + set { + icsneocsharpPINVOKE.neomessage_t_length_set(swigCPtr, value); + } + get { + uint ret = icsneocsharpPINVOKE.neomessage_t_length_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char header { + set { + icsneocsharpPINVOKE.neomessage_t_header_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_t_header_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public ushort netid { + set { + icsneocsharpPINVOKE.neomessage_t_netid_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neomessage_t_netid_get(swigCPtr); + return ret; + } + } + + public byte type { + set { + icsneocsharpPINVOKE.neomessage_t_type_set(swigCPtr, value); + } + get { + byte ret = icsneocsharpPINVOKE.neomessage_t_type_get(swigCPtr); + return ret; + } + } + + public SWIGTYPE_p_unsigned_char reserved { + set { + icsneocsharpPINVOKE.neomessage_t_reserved_set(swigCPtr, SWIGTYPE_p_unsigned_char.getCPtr(value)); + } + get { + global::System.IntPtr cPtr = icsneocsharpPINVOKE.neomessage_t_reserved_get(swigCPtr); + SWIGTYPE_p_unsigned_char ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_unsigned_char(cPtr, false); + return ret; + } + } + + public neomessage_t() : this(icsneocsharpPINVOKE.new_neomessage_t(), true) { + } + +} diff --git a/examples/csharp/neoversion_t.cs b/examples/csharp/neoversion_t.cs new file mode 100644 index 0000000..8a0d7cf --- /dev/null +++ b/examples/csharp/neoversion_t.cs @@ -0,0 +1,119 @@ +//------------------------------------------------------------------------------ +// +// +// This file was automatically generated by SWIG (http://www.swig.org). +// Version 4.0.0 +// +// Do not make changes to this file unless you know what you are doing--modify +// the SWIG interface file instead. +//------------------------------------------------------------------------------ + + +public class neoversion_t : global::System.IDisposable { + private global::System.Runtime.InteropServices.HandleRef swigCPtr; + protected bool swigCMemOwn; + + internal neoversion_t(global::System.IntPtr cPtr, bool cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); + } + + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(neoversion_t obj) { + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + ~neoversion_t() { + Dispose(false); + } + + public void Dispose() { + Dispose(true); + global::System.GC.SuppressFinalize(this); + } + + protected virtual void Dispose(bool disposing) { + lock(this) { + if (swigCPtr.Handle != global::System.IntPtr.Zero) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneocsharpPINVOKE.delete_neoversion_t(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + } + } + + public ushort major { + set { + icsneocsharpPINVOKE.neoversion_t_major_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neoversion_t_major_get(swigCPtr); + return ret; + } + } + + public ushort minor { + set { + icsneocsharpPINVOKE.neoversion_t_minor_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neoversion_t_minor_get(swigCPtr); + return ret; + } + } + + public ushort patch { + set { + icsneocsharpPINVOKE.neoversion_t_patch_set(swigCPtr, value); + } + get { + ushort ret = icsneocsharpPINVOKE.neoversion_t_patch_get(swigCPtr); + return ret; + } + } + + public string metadata { + set { + icsneocsharpPINVOKE.neoversion_t_metadata_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoversion_t_metadata_get(swigCPtr); + return ret; + } + } + + public string buildBranch { + set { + icsneocsharpPINVOKE.neoversion_t_buildBranch_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoversion_t_buildBranch_get(swigCPtr); + return ret; + } + } + + public string buildTag { + set { + icsneocsharpPINVOKE.neoversion_t_buildTag_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoversion_t_buildTag_get(swigCPtr); + return ret; + } + } + + public string reserved { + set { + icsneocsharpPINVOKE.neoversion_t_reserved_set(swigCPtr, value); + } + get { + string ret = icsneocsharpPINVOKE.neoversion_t_reserved_get(swigCPtr); + return ret; + } + } + + public neoversion_t() : this(icsneocsharpPINVOKE.new_neoversion_t(), true) { + } + +} diff --git a/examples/java/CMakeLists.txt b/examples/java/CMakeLists.txt new file mode 100644 index 0000000..463fa3e --- /dev/null +++ b/examples/java/CMakeLists.txt @@ -0,0 +1,13 @@ +cmake_minimum_required(VERSION 3.2) +project(icsneojava VERSION 0.2.0) + +find_package(Java REQUIRED) +find_package(JNI REQUIRED) + +include(UseJava) +include_directories(${JNI_INCLUDE_DIRS}) + +add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../third-party/libicsneo ${CMAKE_CURRENT_BINARY_DIR}/third-party/libicsneo) + +add_library(icsneojava SHARED ${CMAKE_CURRENT_SOURCE_DIR}/java_wrap.c) +target_link_libraries(icsneojava icsneoc) \ No newline at end of file diff --git a/examples/java/README.md b/examples/java/README.md new file mode 100644 index 0000000..28847af --- /dev/null +++ b/examples/java/README.md @@ -0,0 +1,91 @@ +# libicsneo Java Example + +This is an example console application which uses icsneojava to connect to an Intrepid Control Systems hardware device. It has both interactive and simple examples for sending and receiving CAN & CAN FD traffic. + +## Cloning + +This will create a copy of the repository on your local machine. + +Run: + +```shell +git clone https://github.com/intrepidcs/libicsneo-examples -b v0.2.0-dev --recursive +``` + +Alternatively, if you cloned without the `--recursive flag`, you must enter the `libicsneo-examples` folder and run the following: + +```shell +git submodule update --recursive --init +``` + +If you haven't done this, `third-party/libicsneo` will be empty and you won't be able to build! + +## Windows + +### Building the DLL's + +#### icsneoc + +First, we are going to build the icsneoc library into a .dll file that is used by the Java wrapper to access the library functions. + +1. Change directories to the `libicsneo-examples/third-party/libicsneo` folder. +2. Create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `cmake --build .` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. The `icsneoc.dll` file will be generated in `libicsneo-examples/third-party/libicsneo/build/Debug`. Move this file to the `/C/Windows/System32` folder. + +#### icsneojava + +Next, we are going to build the wrapper functions into a .dll file that is used to access the library functions in Java. + +1. Change directories to the `libicsneo-examples/libicsneojava-example` folder. +2. Create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `cmake --build .` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. The `icsneojava.dll` file will be generated in `libicsneo-examples/libicsneojava-example/build/Debug`. Move this file to the `/C/Windows/System32` folder. + +### Building and running the example program + +1. Change directories to the `libicsneo-examples/libicsneojava-example/src` folder. +2. Run `javac Run.java` +3. Run `java Run` + +## Ubuntu 18.04 LTS + +### Building the .so's + +#### icsneoc + +1. Install dependencies with `sudo apt update` then `sudo apt install build-essential cmake libusb-1.0-0-dev libpcap0.8-dev` +2. Change directories to `libicsneo-examples/third-party/libicsneo` and create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `make` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. Run `sudo cp libicsneoc.so /usr/lib` so that it can be found via the default ubuntu .so search path. For more information, see the [ld.so.8 man page](http://man7.org/linux/man-pages/man8/ld.so.8.html). + +#### icsneojava + +Next, we are going to build the wrapper functions into a .so file that is used to access the library functions in Java. + +1. Change directories to the `libicsneo-examples/libicsneojava-example` folder. +2. Create a build directory by running `mkdir -p build` +3. Enter the build directory with `cd build` +4. Run `cmake ..` to generate your Makefile. + * Hint! Running `cmake -DCMAKE_BUILD_TYPE=Debug ..` will generate the proper scripts to build debug, and `cmake -DCMAKE_BUILD_TYPE=Release ..` will generate the proper scripts to build with all optimizations on. +5. Run `cmake --build .` to build the library. + * Hint! Speed up your build by using multiple processors! Use `make -j#` where `#` is the number of cores/threads your system has plus one. For instance, on a standard 8 thread Intel i7, you might use `-j9` for an ~8x speedup. +6. The `icsneojava.so` file will be generated in `libicsneo-examples/libicsneojava-example/build/Debug`. Run `sudo cp libicsneojava.so /usr/lib` so that it can be found via the default ubuntu .so search path. For more information, see the [ld.so.8 man page](http://man7.org/linux/man-pages/man8/ld.so.8.html). + +### Building and running the example program + +1. Change directories to the `libicsneo-examples/libicsneojava-example/src` folder. +2. Run `javac Run.java` +3. Run `java Run` diff --git a/examples/java/java.i b/examples/java/java.i new file mode 100644 index 0000000..c9d7b6b --- /dev/null +++ b/examples/java/java.i @@ -0,0 +1,125 @@ +%module icsneojava +%include +%include +%include +%include +%include +%include +%include + +#define DLLExport + +%typemap(jni) uint8_t const *data "jbyteArray" +%typemap(jtype) uint8_t const *data "byte[]" +%typemap(jstype) uint8_t const *data "byte[]" +%typemap(javain) uint8_t const *data "$javainput" + +%typemap(javaout) uint8_t const *data { + return $jnicall; +} + +%typemap(out) uint8_t const *data %{ + $result = (*jenv)->NewByteArray(jenv, (int) arg1->length); + (*jenv)->SetByteArrayRegion(jenv, $result, 0, (int) arg1->length, $1); +%} + +%typemap(in) uint8_t const *data %{ + bool isCopy; + arg2 = (*jenv)->GetByteArrayElements(jenv, jarg2, &isCopy); +%} + +%typemap(jni) char *str "jobject" +%typemap(jtype) char *str "StringBuffer" +%typemap(jstype) char *str "StringBuffer" + +/* How to convert Java(JNI) type to requested C type */ +%typemap(in) char *str { + + $1 = NULL; + if($input != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, $input); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, $input, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, $input, capacityID); + $1 = (char *) malloc(capacity+1); + strcpy($1, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, $input, setLengthID, (jint) 0); + } +} + +/* How to convert the C type to the Java(JNI) type */ +%typemap(argout) char *str { + + if($1 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, $1); + jclass strClass = (*jenv)->GetObjectClass(jenv, $input); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, $input, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free($1); + $1 = NULL; + } +} + +/* Prevent the default freearg typemap from being used */ +%typemap(freearg) char *str "" + +/* Convert the jstype to jtype typemap type */ +%typemap(javain) char *str "$javainput" + +%{ +#include "icsneo/icsneoc.h" +%} + +%apply int *INOUT {size_t *}; + +%ignore icsneo_addMessageCallback; +%ignore icsneo_removeMessageCallback; +%ignore icsneo_addEventCallback; +%ignore icsneo_removeEventCallback; + +%include "icsneo/icsneoc.h" +%include "icsneo/device/neodevice.h" +%include "icsneo/communication/message/neomessage.h" +%include "icsneo/device/devicetype.h" +%include "icsneo/api/version.h" +%include "icsneo/api/event.h" +%include "icsneo/communication/network.h" + +%inline %{ +static neomessage_can_t* neomessage_can_t_cast(neomessage_t* msg) { + return (neomessage_can_t*) msg; +} + +static neomessage_eth_t* neomessage_eth_t_cast(neomessage_t* msg) { + return (neomessage_eth_t*) msg; +} + +static neomessage_t* from_can_neomessage_t_cast(neomessage_can_t* msg) { + return (neomessage_t*) msg; +} + +static neomessage_t* from_eth_neomessage_t_cast(neomessage_eth_t* msg) { + return (neomessage_t*) msg; +} +%} + +%array_functions(neodevice_t, neodevice_t_array); +%array_functions(neoevent_t, neoevent_t_array); +%array_functions(neomessage_t, neomessage_t_array); \ No newline at end of file diff --git a/examples/java/java_wrap.c b/examples/java/java_wrap.c new file mode 100644 index 0000000..45e1e7e --- /dev/null +++ b/examples/java/java_wrap.c @@ -0,0 +1,6952 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + + +#ifndef SWIGJAVA +#define SWIGJAVA +#endif + + +/* ----------------------------------------------------------------------------- + * This section contains generic SWIG labels for method/variable + * declarations/attributes, and other compiler dependent labels. + * ----------------------------------------------------------------------------- */ + +/* template workaround for compilers that cannot correctly implement the C++ standard */ +#ifndef SWIGTEMPLATEDISAMBIGUATOR +# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560) +# define SWIGTEMPLATEDISAMBIGUATOR template +# elif defined(__HP_aCC) +/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */ +/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */ +# define SWIGTEMPLATEDISAMBIGUATOR template +# else +# define SWIGTEMPLATEDISAMBIGUATOR +# endif +#endif + +/* inline attribute */ +#ifndef SWIGINLINE +# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) +# define SWIGINLINE inline +# else +# define SWIGINLINE +# endif +#endif + +/* attribute recognised by some compilers to avoid 'unused' warnings */ +#ifndef SWIGUNUSED +# if defined(__GNUC__) +# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +# define SWIGUNUSED __attribute__ ((__unused__)) +# else +# define SWIGUNUSED +# endif +# elif defined(__ICC) +# define SWIGUNUSED __attribute__ ((__unused__)) +# else +# define SWIGUNUSED +# endif +#endif + +#ifndef SWIG_MSC_UNSUPPRESS_4505 +# if defined(_MSC_VER) +# pragma warning(disable : 4505) /* unreferenced local function has been removed */ +# endif +#endif + +#ifndef SWIGUNUSEDPARM +# ifdef __cplusplus +# define SWIGUNUSEDPARM(p) +# else +# define SWIGUNUSEDPARM(p) p SWIGUNUSED +# endif +#endif + +/* internal SWIG method */ +#ifndef SWIGINTERN +# define SWIGINTERN static SWIGUNUSED +#endif + +/* internal inline SWIG method */ +#ifndef SWIGINTERNINLINE +# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE +#endif + +/* exporting methods */ +#if defined(__GNUC__) +# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) +# ifndef GCC_HASCLASSVISIBILITY +# define GCC_HASCLASSVISIBILITY +# endif +# endif +#endif + +#ifndef SWIGEXPORT +# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +# if defined(STATIC_LINKED) +# define SWIGEXPORT +# else +# define SWIGEXPORT __declspec(dllexport) +# endif +# else +# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) +# define SWIGEXPORT __attribute__ ((visibility("default"))) +# else +# define SWIGEXPORT +# endif +# endif +#endif + +/* calling conventions for Windows */ +#ifndef SWIGSTDCALL +# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) +# define SWIGSTDCALL __stdcall +# else +# define SWIGSTDCALL +# endif +#endif + +/* Deal with Microsoft's attempt at deprecating C standard runtime functions */ +#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) +# define _CRT_SECURE_NO_DEPRECATE +#endif + +/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */ +#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE) +# define _SCL_SECURE_NO_DEPRECATE +#endif + +/* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */ +#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES) +# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0 +#endif + +/* Intel's compiler complains if a variable which was never initialised is + * cast to void, which is a common idiom which we use to indicate that we + * are aware a variable isn't used. So we just silence that warning. + * See: https://github.com/swig/swig/issues/192 for more discussion. + */ +#ifdef __INTEL_COMPILER +# pragma warning disable 592 +#endif + + +/* Fix for jlong on some versions of gcc on Windows */ +#if defined(__GNUC__) && !defined(__INTEL_COMPILER) + typedef long long __int64; +#endif + +/* Fix for jlong on 64-bit x86 Solaris */ +#if defined(__x86_64) +# ifdef _LP64 +# undef _LP64 +# endif +#endif + +#include +#include +#include + + +/* Support for throwing Java exceptions */ +typedef enum { + SWIG_JavaOutOfMemoryError = 1, + SWIG_JavaIOException, + SWIG_JavaRuntimeException, + SWIG_JavaIndexOutOfBoundsException, + SWIG_JavaArithmeticException, + SWIG_JavaIllegalArgumentException, + SWIG_JavaNullPointerException, + SWIG_JavaDirectorPureVirtual, + SWIG_JavaUnknownError +} SWIG_JavaExceptionCodes; + +typedef struct { + SWIG_JavaExceptionCodes code; + const char *java_exception; +} SWIG_JavaExceptions_t; + + +static void SWIGUNUSED SWIG_JavaThrowException(JNIEnv *jenv, SWIG_JavaExceptionCodes code, const char *msg) { + jclass excep; + static const SWIG_JavaExceptions_t java_exceptions[] = { + { SWIG_JavaOutOfMemoryError, "java/lang/OutOfMemoryError" }, + { SWIG_JavaIOException, "java/io/IOException" }, + { SWIG_JavaRuntimeException, "java/lang/RuntimeException" }, + { SWIG_JavaIndexOutOfBoundsException, "java/lang/IndexOutOfBoundsException" }, + { SWIG_JavaArithmeticException, "java/lang/ArithmeticException" }, + { SWIG_JavaIllegalArgumentException, "java/lang/IllegalArgumentException" }, + { SWIG_JavaNullPointerException, "java/lang/NullPointerException" }, + { SWIG_JavaDirectorPureVirtual, "java/lang/RuntimeException" }, + { SWIG_JavaUnknownError, "java/lang/UnknownError" }, + { (SWIG_JavaExceptionCodes)0, "java/lang/UnknownError" } + }; + const SWIG_JavaExceptions_t *except_ptr = java_exceptions; + + while (except_ptr->code != code && except_ptr->code) + except_ptr++; + + (*jenv)->ExceptionClear(jenv); + excep = (*jenv)->FindClass(jenv, except_ptr->java_exception); + if (excep) + (*jenv)->ThrowNew(jenv, excep, msg); +} + + +/* Contract support */ + +#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_JavaThrowException(jenv, SWIG_JavaIllegalArgumentException, msg); return nullreturn; } else + + +#include // Use the C99 official header + + +#if defined(SWIG_NOINCLUDE) || defined(SWIG_NOARRAYS) + + +static int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input); +static void SWIG_JavaArrayArgoutSchar (JNIEnv *jenv, jbyte *jarr, signed char *carr, jbyteArray input); +static jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz); + + +static int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input); +static void SWIG_JavaArrayArgoutUchar (JNIEnv *jenv, jshort *jarr, unsigned char *carr, jshortArray input); +static jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz); + + +static int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input); +static void SWIG_JavaArrayArgoutShort (JNIEnv *jenv, jshort *jarr, short *carr, jshortArray input); +static jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz); + + +static int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input); +static void SWIG_JavaArrayArgoutUshort (JNIEnv *jenv, jint *jarr, unsigned short *carr, jintArray input); +static jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz); + + +static int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input); +static void SWIG_JavaArrayArgoutInt (JNIEnv *jenv, jint *jarr, int *carr, jintArray input); +static jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz); + + +static int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input); +static void SWIG_JavaArrayArgoutUint (JNIEnv *jenv, jlong *jarr, unsigned int *carr, jlongArray input); +static jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz); + + +static int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input); +static void SWIG_JavaArrayArgoutLong (JNIEnv *jenv, jint *jarr, long *carr, jintArray input); +static jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz); + + +static int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input); +static void SWIG_JavaArrayArgoutUlong (JNIEnv *jenv, jlong *jarr, unsigned long *carr, jlongArray input); +static jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz); + + +static int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input); +static void SWIG_JavaArrayArgoutLonglong (JNIEnv *jenv, jlong *jarr, jlong *carr, jlongArray input); +static jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz); + + +static int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input); +static void SWIG_JavaArrayArgoutFloat (JNIEnv *jenv, jfloat *jarr, float *carr, jfloatArray input); +static jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz); + + +static int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input); +static void SWIG_JavaArrayArgoutDouble (JNIEnv *jenv, jdouble *jarr, double *carr, jdoubleArray input); +static jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz); + + +#else + + +/* signed char[] support */ +static int SWIG_JavaArrayInSchar (JNIEnv *jenv, jbyte **jarr, signed char **carr, jbyteArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetByteArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (signed char*) malloc(sz * sizeof(signed char)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseByteArrayElements(jenv, input, jarr, 0); +} + +static jbyteArray SWIG_JavaArrayOutSchar (JNIEnv *jenv, signed char *result, jsize sz) { + jbyte *arr; + int i; + jbyteArray jresult = (*jenv)->NewByteArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetByteArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseByteArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* unsigned char[] support */ +static int SWIG_JavaArrayInUchar (JNIEnv *jenv, jshort **jarr, unsigned char **carr, jshortArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetShortArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (unsigned char*) malloc(sz * sizeof(unsigned char)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseShortArrayElements(jenv, input, jarr, 0); +} + +static jshortArray SWIG_JavaArrayOutUchar (JNIEnv *jenv, unsigned char *result, jsize sz) { + jshort *arr; + int i; + jshortArray jresult = (*jenv)->NewShortArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetShortArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseShortArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* short[] support */ +static int SWIG_JavaArrayInShort (JNIEnv *jenv, jshort **jarr, short **carr, jshortArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetShortArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (short*) malloc(sz * sizeof(short)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseShortArrayElements(jenv, input, jarr, 0); +} + +static jshortArray SWIG_JavaArrayOutShort (JNIEnv *jenv, short *result, jsize sz) { + jshort *arr; + int i; + jshortArray jresult = (*jenv)->NewShortArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetShortArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseShortArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* unsigned short[] support */ +static int SWIG_JavaArrayInUshort (JNIEnv *jenv, jint **jarr, unsigned short **carr, jintArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (unsigned short*) malloc(sz * sizeof(unsigned short)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseIntArrayElements(jenv, input, jarr, 0); +} + +static jintArray SWIG_JavaArrayOutUshort (JNIEnv *jenv, unsigned short *result, jsize sz) { + jint *arr; + int i; + jintArray jresult = (*jenv)->NewIntArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseIntArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* int[] support */ +static int SWIG_JavaArrayInInt (JNIEnv *jenv, jint **jarr, int **carr, jintArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (int*) malloc(sz * sizeof(int)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseIntArrayElements(jenv, input, jarr, 0); +} + +static jintArray SWIG_JavaArrayOutInt (JNIEnv *jenv, int *result, jsize sz) { + jint *arr; + int i; + jintArray jresult = (*jenv)->NewIntArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseIntArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* unsigned int[] support */ +static int SWIG_JavaArrayInUint (JNIEnv *jenv, jlong **jarr, unsigned int **carr, jlongArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (unsigned int*) malloc(sz * sizeof(unsigned int)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseLongArrayElements(jenv, input, jarr, 0); +} + +static jlongArray SWIG_JavaArrayOutUint (JNIEnv *jenv, unsigned int *result, jsize sz) { + jlong *arr; + int i; + jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseLongArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* long[] support */ +static int SWIG_JavaArrayInLong (JNIEnv *jenv, jint **jarr, long **carr, jintArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetIntArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (long*) malloc(sz * sizeof(long)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseIntArrayElements(jenv, input, jarr, 0); +} + +static jintArray SWIG_JavaArrayOutLong (JNIEnv *jenv, long *result, jsize sz) { + jint *arr; + int i; + jintArray jresult = (*jenv)->NewIntArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetIntArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseIntArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* unsigned long[] support */ +static int SWIG_JavaArrayInUlong (JNIEnv *jenv, jlong **jarr, unsigned long **carr, jlongArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (unsigned long*) malloc(sz * sizeof(unsigned long)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseLongArrayElements(jenv, input, jarr, 0); +} + +static jlongArray SWIG_JavaArrayOutUlong (JNIEnv *jenv, unsigned long *result, jsize sz) { + jlong *arr; + int i; + jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseLongArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* jlong[] support */ +static int SWIG_JavaArrayInLonglong (JNIEnv *jenv, jlong **jarr, jlong **carr, jlongArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetLongArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (jlong*) malloc(sz * sizeof(jlong)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseLongArrayElements(jenv, input, jarr, 0); +} + +static jlongArray SWIG_JavaArrayOutLonglong (JNIEnv *jenv, jlong *result, jsize sz) { + jlong *arr; + int i; + jlongArray jresult = (*jenv)->NewLongArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetLongArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseLongArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* float[] support */ +static int SWIG_JavaArrayInFloat (JNIEnv *jenv, jfloat **jarr, float **carr, jfloatArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetFloatArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (float*) malloc(sz * sizeof(float)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseFloatArrayElements(jenv, input, jarr, 0); +} + +static jfloatArray SWIG_JavaArrayOutFloat (JNIEnv *jenv, float *result, jsize sz) { + jfloat *arr; + int i; + jfloatArray jresult = (*jenv)->NewFloatArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetFloatArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseFloatArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +/* double[] support */ +static int SWIG_JavaArrayInDouble (JNIEnv *jenv, jdouble **jarr, double **carr, jdoubleArray input) { + int i; + jsize sz; + if (!input) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "null array"); + return 0; + } + sz = (*jenv)->GetArrayLength(jenv, input); + *jarr = (*jenv)->GetDoubleArrayElements(jenv, input, 0); + if (!*jarr) + return 0; + *carr = (double*) malloc(sz * sizeof(double)); + if (!*carr) { + SWIG_JavaThrowException(jenv, SWIG_JavaOutOfMemoryError, "array memory allocation failed"); + return 0; + } + for (i=0; iGetArrayLength(jenv, input); + for (i=0; iReleaseDoubleArrayElements(jenv, input, jarr, 0); +} + +static jdoubleArray SWIG_JavaArrayOutDouble (JNIEnv *jenv, double *result, jsize sz) { + jdouble *arr; + int i; + jdoubleArray jresult = (*jenv)->NewDoubleArray(jenv, sz); + if (!jresult) + return NULL; + arr = (*jenv)->GetDoubleArrayElements(jenv, jresult, 0); + if (!arr) + return NULL; + for (i=0; iReleaseDoubleArrayElements(jenv, jresult, arr, 0); + return jresult; +} + + +#endif + + +#include "icsneo/icsneoc.h" + + +static neomessage_can_t* neomessage_can_t_cast(neomessage_t* msg) { + return (neomessage_can_t*) msg; +} + +static neomessage_eth_t* neomessage_eth_t_cast(neomessage_t* msg) { + return (neomessage_eth_t*) msg; +} + +static neomessage_t* from_can_neomessage_t_cast(neomessage_can_t* msg) { + return (neomessage_t*) msg; +} + +static neomessage_t* from_eth_neomessage_t_cast(neomessage_eth_t* msg) { + return (neomessage_t*) msg; +} + + +static neodevice_t *new_neodevice_t_array(int nelements) { + return (neodevice_t *) calloc(nelements,sizeof(neodevice_t)); +} + +static void delete_neodevice_t_array(neodevice_t *ary) { + free(ary); +} + +static neodevice_t neodevice_t_array_getitem(neodevice_t *ary, int index) { + return ary[index]; +} +static void neodevice_t_array_setitem(neodevice_t *ary, int index, neodevice_t value) { + ary[index] = value; +} + + +static neoevent_t *new_neoevent_t_array(int nelements) { + return (neoevent_t *) calloc(nelements,sizeof(neoevent_t)); +} + +static void delete_neoevent_t_array(neoevent_t *ary) { + free(ary); +} + +static neoevent_t neoevent_t_array_getitem(neoevent_t *ary, int index) { + return ary[index]; +} +static void neoevent_t_array_setitem(neoevent_t *ary, int index, neoevent_t value) { + ary[index] = value; +} + + +static neomessage_t *new_neomessage_t_array(int nelements) { + return (neomessage_t *) calloc(nelements,sizeof(neomessage_t)); +} + +static void delete_neomessage_t_array(neomessage_t *ary) { + free(ary); +} + +static neomessage_t neomessage_t_array_getitem(neomessage_t *ary, int index) { + return ary[index]; +} +static void neomessage_t_array_setitem(neomessage_t *ary, int index, neomessage_t value) { + ary[index] = value; +} + + +#ifdef __cplusplus +extern "C" { +#endif + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1findAllDevices(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jintArray jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + { + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return ; + } + if ((*jenv)->GetArrayLength(jenv, jarg2) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return ; + } + arg2 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg2, 0); + } + icsneo_findAllDevices(arg1,arg2); + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg2, (jint *)arg2, 0); + } + +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1freeUnconnectedDevices(JNIEnv *jenv, jclass jcls) { + (void)jenv; + (void)jcls; + icsneo_freeUnconnectedDevices(); +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1serialNumToString(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2, jintArray jarg3) { + jboolean jresult = 0 ; + uint32_t arg1 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + arg1 = (uint32_t)jarg1; + { + arg2 = NULL; + if(jarg2 != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, jarg2, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, jarg2, capacityID); + arg2 = (char *) malloc(capacity+1); + strcpy(arg2, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, jarg2, setLengthID, (jint) 0); + } + } + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + result = (bool)icsneo_serialNumToString(arg1,arg2,arg3); + jresult = (jboolean)result; + { + if(arg2 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, arg2); + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, jarg2, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free(arg2); + arg2 = NULL; + } + } + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1serialStringToNum(JNIEnv *jenv, jclass jcls, jobject jarg1) { + jlong jresult = 0 ; + char *arg1 = (char *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + { + arg1 = NULL; + if(jarg1 != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg1); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, jarg1, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, jarg1, capacityID); + arg1 = (char *) malloc(capacity+1); + strcpy(arg1, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, jarg1, setLengthID, (jint) 0); + } + } + result = (uint32_t)icsneo_serialStringToNum((char const *)arg1); + jresult = (jlong)result; + { + if(arg1 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, arg1); + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg1); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, jarg1, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free(arg1); + arg1 = NULL; + } + } + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1isValidNeoDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_isValidNeoDevice((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1openDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_openDevice((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1closeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_closeDevice((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1isOpen(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_isOpen((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1goOnline(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_goOnline((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1goOffline(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_goOffline((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1isOnline(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_isOnline((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1enableMessagePolling(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_enableMessagePolling((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1disableMessagePolling(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_disableMessagePolling((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1isMessagePollingEnabled(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_isMessagePollingEnabled((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getMessages(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jintArray jarg3, jobject jarg4) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + size_t *arg3 = (size_t *) 0 ; + uint64_t arg4 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(neomessage_t **)&jarg2; + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg4) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg4); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg4, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg4 = 0; + if (sz > 0) { + arg4 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + result = (bool)icsneo_getMessages((neodevice_t const *)arg1,arg2,arg3,arg4); + jresult = (jboolean)result; + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1getPollingMessageLimit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = icsneo_getPollingMessageLimit((neodevice_t const *)arg1); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1setPollingMessageLimit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + size_t arg2 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (size_t)jarg2; + result = (bool)icsneo_setPollingMessageLimit((neodevice_t const *)arg1,arg2); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getProductName(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2, jintArray jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + { + arg2 = NULL; + if(jarg2 != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, jarg2, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, jarg2, capacityID); + arg2 = (char *) malloc(capacity+1); + strcpy(arg2, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, jarg2, setLengthID, (jint) 0); + } + } + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + result = (bool)icsneo_getProductName((neodevice_t const *)arg1,arg2,arg3); + jresult = (jboolean)result; + { + if(arg2 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, arg2); + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, jarg2, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free(arg2); + arg2 = NULL; + } + } + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getProductNameForType(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg2, jintArray jarg3) { + jboolean jresult = 0 ; + devicetype_t arg1 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + arg1 = (devicetype_t)jarg1; + { + arg2 = NULL; + if(jarg2 != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, jarg2, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, jarg2, capacityID); + arg2 = (char *) malloc(capacity+1); + strcpy(arg2, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, jarg2, setLengthID, (jint) 0); + } + } + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + result = (bool)icsneo_getProductNameForType(arg1,arg2,arg3); + jresult = (jboolean)result; + { + if(arg2 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, arg2); + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, jarg2, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free(arg2); + arg2 = NULL; + } + } + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsRefresh(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_settingsRefresh((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApply(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_settingsApply((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApplyTemporary(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_settingsApplyTemporary((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApplyDefaults(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_settingsApplyDefaults((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApplyDefaultsTemporary(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (bool)icsneo_settingsApplyDefaultsTemporary((neodevice_t const *)arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_icsneo_1settingsReadStructure(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + int result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(void **)&jarg2; + arg3 = (size_t)jarg3; + result = (int)icsneo_settingsReadStructure((neodevice_t const *)arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApplyStructure(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(void **)&jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_settingsApplyStructure((neodevice_t const *)arg1,(void const *)arg2,arg3); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1settingsApplyStructureTemporary(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jlong jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + void *arg2 = (void *) 0 ; + size_t arg3 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(void **)&jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_settingsApplyStructureTemporary((neodevice_t const *)arg1,(void const *)arg2,arg3); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1getBaudrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (uint16_t)jarg2; + result = (int64_t)icsneo_getBaudrate((neodevice_t const *)arg1,arg2); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1setBaudrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t arg3 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (uint16_t)jarg2; + arg3 = (int64_t)jarg3; + result = (bool)icsneo_setBaudrate((neodevice_t const *)arg1,arg2,arg3); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1getFDBaudrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (uint16_t)jarg2; + result = (int64_t)icsneo_getFDBaudrate((neodevice_t const *)arg1,arg2); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1setFDBaudrate(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t arg2 ; + int64_t arg3 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (uint16_t)jarg2; + arg3 = (int64_t)jarg3; + result = (bool)icsneo_setFDBaudrate((neodevice_t const *)arg1,arg2,arg3); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1transmit(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(neomessage_t **)&jarg2; + result = (bool)icsneo_transmit((neodevice_t const *)arg1,(neomessage_t const *)arg2); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1transmitMessages(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jlong jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neomessage_t *arg2 = (neomessage_t *) 0 ; + size_t arg3 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(neomessage_t **)&jarg2; + arg3 = (size_t)jarg3; + result = (bool)icsneo_transmitMessages((neodevice_t const *)arg1,(neomessage_t const *)arg2,arg3); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1setWriteBlocks(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jboolean jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + bool arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = jarg2 ? true : false; + icsneo_setWriteBlocks((neodevice_t const *)arg1,arg2); +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1describeDevice(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2, jintArray jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 = (char *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + { + arg2 = NULL; + if(jarg2 != NULL) { + /* Get the String from the StringBuffer */ + jmethodID setLengthID; + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID toStringID = (*jenv)->GetMethodID(jenv, strClass, "toString", "()Ljava/lang/String;"); + jstring js = (jstring) (*jenv)->CallObjectMethod(jenv, jarg2, toStringID); + + /* Convert the String to a C string */ + const char *pCharStr = (*jenv)->GetStringUTFChars(jenv, js, 0); + + /* Take a copy of the C string as the typemap is for a non const C string */ + jmethodID capacityID = (*jenv)->GetMethodID(jenv, strClass, "capacity", "()I"); + jint capacity = (*jenv)->CallIntMethod(jenv, jarg2, capacityID); + arg2 = (char *) malloc(capacity+1); + strcpy(arg2, pCharStr); + + /* Release the UTF string we obtained with GetStringUTFChars */ + (*jenv)->ReleaseStringUTFChars(jenv, js, pCharStr); + + /* Zero the original StringBuffer, so we can replace it with the result */ + setLengthID = (*jenv)->GetMethodID(jenv, strClass, "setLength", "(I)V"); + (*jenv)->CallVoidMethod(jenv, jarg2, setLengthID, (jint) 0); + } + } + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + result = (bool)icsneo_describeDevice((neodevice_t const *)arg1,arg2,arg3); + jresult = (jboolean)result; + { + if(arg2 != NULL) { + /* Append the result to the empty StringBuffer */ + jstring newString = (*jenv)->NewStringUTF(jenv, arg2); + jclass strClass = (*jenv)->GetObjectClass(jenv, jarg2); + jmethodID appendStringID = (*jenv)->GetMethodID(jenv, strClass, "append", "(Ljava/lang/String;)Ljava/lang/StringBuffer;"); + (*jenv)->CallObjectMethod(jenv, jarg2, appendStringID, newString); + + /* Clean up the string object, no longer needed */ + free(arg2); + arg2 = NULL; + } + } + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1getVersion(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neoversion_t result; + + (void)jenv; + (void)jcls; + result = icsneo_getVersion(); + { + neoversion_t * resultptr = (neoversion_t *) malloc(sizeof(neoversion_t)); + memmove(resultptr, &result, sizeof(neoversion_t)); + *(neoversion_t **)&jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getEvents(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jintArray jarg2) { + jboolean jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + { + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg2) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg2 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg2, 0); + } + result = (bool)icsneo_getEvents(arg1,arg2); + jresult = (jboolean)result; + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg2, (jint *)arg2, 0); + } + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getDeviceEvents(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_, jintArray jarg3) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neoevent_t *arg2 = (neoevent_t *) 0 ; + size_t *arg3 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(neoevent_t **)&jarg2; + { + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg3) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg3 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg3, 0); + } + result = (bool)icsneo_getDeviceEvents((neodevice_t const *)arg1,arg2,arg3); + jresult = (jboolean)result; + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg3, (jint *)arg3, 0); + } + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getLastError(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jboolean jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (bool)icsneo_getLastError(arg1); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1discardAllEvents(JNIEnv *jenv, jclass jcls) { + (void)jenv; + (void)jcls; + icsneo_discardAllEvents(); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1discardDeviceEvents(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + icsneo_discardDeviceEvents((neodevice_t const *)arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_icsneo_1setEventLimit(JNIEnv *jenv, jclass jcls, jlong jarg1) { + size_t arg1 ; + + (void)jenv; + (void)jcls; + arg1 = (size_t)jarg1; + icsneo_setEventLimit(arg1); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_icsneo_1getEventLimit(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + size_t result; + + (void)jenv; + (void)jcls; + result = icsneo_getEventLimit(); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getSupportedDevices(JNIEnv *jenv, jclass jcls, jlong jarg1, jintArray jarg2) { + jboolean jresult = 0 ; + devicetype_t *arg1 = (devicetype_t *) 0 ; + size_t *arg2 = (size_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + arg1 = *(devicetype_t **)&jarg1; + { + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "array null"); + return 0; + } + if ((*jenv)->GetArrayLength(jenv, jarg2) == 0) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "Array must contain at least 1 element"); + return 0; + } + arg2 = (size_t *) (*jenv)->GetIntArrayElements(jenv, jarg2, 0); + } + result = (bool)icsneo_getSupportedDevices(arg1,arg2); + jresult = (jboolean)result; + { + (*jenv)->ReleaseIntArrayElements(jenv, jarg2, (jint *)arg2, 0); + } + + return jresult; +} + + +SWIGEXPORT jboolean JNICALL Java_icsneojavaJNI_icsneo_1getTimestampResolution(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + jboolean jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + uint16_t *arg2 = (uint16_t *) 0 ; + bool result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(uint16_t **)&jarg2; + result = (bool)icsneo_getTimestampResolution((neodevice_t const *)arg1,arg2); + jresult = (jboolean)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neodevice_1t_1device_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicehandle_t arg2 = (devicehandle_t) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = *(devicehandle_t *)&jarg2; + if (arg1) (arg1)->device = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neodevice_1t_1device_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicehandle_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (devicehandle_t) ((arg1)->device); + *(devicehandle_t *)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neodevice_1t_1handle_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + neodevice_handle_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (neodevice_handle_t)jarg2; + if (arg1) (arg1)->handle = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neodevice_1t_1handle_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + neodevice_handle_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (neodevice_handle_t) ((arg1)->handle); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neodevice_1t_1type_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicetype_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (devicetype_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neodevice_1t_1type_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + devicetype_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (devicetype_t) ((arg1)->type); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neodevice_1t_1serial_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if(arg2) { + strncpy((char*)arg1->serial, (const char *)arg2, 7-1); + arg1->serial[7-1] = 0; + } else { + arg1->serial[0] = 0; + } + } + + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neodevice_1t_1serial_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + result = (char *)(char *) ((arg1)->serial); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neodevice_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neodevice_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neodevice_t *)calloc(1, sizeof(neodevice_t)); + *(neodevice_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neodevice_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neodevice_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1globalError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->globalError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1globalError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->globalError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1transmitMessage_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->transmitMessage = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1transmitMessage_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->transmitMessage); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1extendedFrame_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->extendedFrame = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1extendedFrame_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->extendedFrame); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1remoteFrame_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->remoteFrame = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1remoteFrame_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->remoteFrame); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1crcError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->crcError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1crcError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->crcError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canErrorPassive_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canErrorPassive = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canErrorPassive_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canErrorPassive); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1incompleteFrame_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->incompleteFrame = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1incompleteFrame_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->incompleteFrame); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1lostArbitration_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->lostArbitration = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1lostArbitration_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->lostArbitration); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1undefinedError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->undefinedError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1undefinedError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->undefinedError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusOff_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusOff = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusOff_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canBusOff); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canErrorWarning_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canErrorWarning = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canErrorWarning_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canErrorWarning); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusShortedPlus_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusShortedPlus = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusShortedPlus_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canBusShortedPlus); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusShortedGround_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canBusShortedGround = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canBusShortedGround_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canBusShortedGround); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1checksumError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->checksumError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1checksumError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->checksumError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1badMessageBitTimeError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->badMessageBitTimeError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1badMessageBitTimeError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->badMessageBitTimeError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1ifrData_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->ifrData = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1ifrData_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->ifrData); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1hardwareCommError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->hardwareCommError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1hardwareCommError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->hardwareCommError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1expectedLengthError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->expectedLengthError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1expectedLengthError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->expectedLengthError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1incomingNoMatch_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->incomingNoMatch = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1incomingNoMatch_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->incomingNoMatch); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1statusBreak_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->statusBreak = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1statusBreak_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->statusBreak); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1avsiRecOverflow_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->avsiRecOverflow = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1avsiRecOverflow_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->avsiRecOverflow); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1testTrigger_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->testTrigger = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1testTrigger_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->testTrigger); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1audioComment_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->audioComment = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1audioComment_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->audioComment); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1gpsData_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->gpsData = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1gpsData_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->gpsData); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1analogDigitalInput_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->analogDigitalInput = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1analogDigitalInput_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->analogDigitalInput); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1textComment_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->textComment = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1textComment_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->textComment); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1networkMessageType_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->networkMessageType = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1networkMessageType_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->networkMessageType); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1vsiTXUnderrun_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->vsiTXUnderrun = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1vsiTXUnderrun_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->vsiTXUnderrun); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1vsiIFRCRCBit_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->vsiIFRCRCBit = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1vsiIFRCRCBit_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->vsiIFRCRCBit); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1initMessage_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->initMessage = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1initMessage_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->initMessage); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1flexraySecondStartupFrame_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->flexraySecondStartupFrame = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1flexraySecondStartupFrame_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->flexraySecondStartupFrame); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1extended_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->extended = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1extended_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->extended); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1hasValue_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->hasValue = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1hasValue_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->hasValue); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1valueIsBoolean_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->valueIsBoolean = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1valueIsBoolean_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->valueIsBoolean); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1highVoltage_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->highVoltage = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1highVoltage_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->highVoltage); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1longMessage_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->longMessage = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1longMessage_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->longMessage); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1globalChange_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->globalChange = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1globalChange_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->globalChange); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1errorFrame_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->errorFrame = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1errorFrame_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->errorFrame); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1endOfLongMessage_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->endOfLongMessage = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1endOfLongMessage_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->endOfLongMessage); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXBreakNotZero_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXBreakNotZero = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXBreakNotZero_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorRXBreakNotZero); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXBreakTooShort_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXBreakTooShort = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXBreakTooShort_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorRXBreakTooShort); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXSyncNot55_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXSyncNot55 = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXSyncNot55_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorRXSyncNot55); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXDataGreaterEight_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorRXDataGreaterEight = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorRXDataGreaterEight_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorRXDataGreaterEight); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorTXRXMismatch_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorTXRXMismatch = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorTXRXMismatch_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorTXRXMismatch); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorMessageIDParity_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linErrorMessageIDParity = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linErrorMessageIDParity_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linErrorMessageIDParity); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linSyncFrameError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linSyncFrameError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linSyncFrameError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linSyncFrameError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linIDFrameError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linIDFrameError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linIDFrameError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linIDFrameError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linSlaveByteError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linSlaveByteError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linSlaveByteError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linSlaveByteError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1rxTimeoutError_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->rxTimeoutError = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1rxTimeoutError_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->rxTimeoutError); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linNoSlaveData_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->linNoSlaveData = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1linNoSlaveData_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->linNoSlaveData); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdESI_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdESI = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdESI_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canfdESI); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdIDE_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdIDE = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdIDE_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canfdIDE); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdRTR_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdRTR = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdRTR_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canfdRTR); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdFDF_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdFDF = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdFDF_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canfdFDF); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdBRS_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->canfdBRS = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1canfdBRS_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t) ((arg1)->canfdBRS); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1statusBitfield_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlongArray jarg2) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t *arg2 ; + jlong *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 4) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUint(jenv, &jarr2, (unsigned int **)&arg2, jarg2)) return ; + { + size_t ii; + uint32_t *b = (uint32_t *) arg1->statusBitfield; + for (ii = 0; ii < (size_t)4; ii++) b[ii] = *((uint32_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUint(jenv, jarr2, (unsigned int *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jlongArray JNICALL Java_icsneojavaJNI_neomessage_1statusbitfield_1t_1statusBitfield_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlongArray jresult = 0 ; + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + uint32_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + result = (uint32_t *)(uint32_t *) ((arg1)->statusBitfield); + jresult = SWIG_JavaArrayOutUint(jenv, (unsigned int *)result, 4); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neomessage_1statusbitfield_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neomessage_statusbitfield_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neomessage_statusbitfield_t *)calloc(1, sizeof(neomessage_statusbitfield_t)); + *(neomessage_statusbitfield_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neomessage_1statusbitfield_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neomessage_statusbitfield_t *arg1 = (neomessage_statusbitfield_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neomessage_statusbitfield_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1status_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = *(neomessage_statusbitfield_t **)&jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1t_1status_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + *(neomessage_statusbitfield_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1timestamp_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1t_1timestamp_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint64_t) ((arg1)->timestamp); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1timestampReserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1t_1timestampReserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1data_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + + bool isCopy; + arg2 = (*jenv)->GetByteArrayElements(jenv, jarg2, &isCopy); + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT jbyteArray JNICALL Java_icsneojavaJNI_neomessage_1t_1data_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jbyteArray jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint8_t *) ((arg1)->data); + + jresult = (*jenv)->NewByteArray(jenv, (int) arg1->length); + (*jenv)->SetByteArrayRegion(jenv, jresult, 0, (int) arg1->length, result); + + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1length_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + size_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1t_1length_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + size_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = ((arg1)->length); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1header_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 4) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->header; + for (ii = 0; ii < (size_t)4; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neomessage_1t_1header_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->header); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 4); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1netid_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neomessage_1t_1netid_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1type_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neomessage_1t_1type_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint8_t) ((arg1)->type); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 17) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)17; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neomessage_1t_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 17); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neomessage_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neomessage_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neomessage_t *)calloc(1, sizeof(neomessage_t)); + *(neomessage_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neomessage_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neomessage_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1status_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = *(neomessage_statusbitfield_t **)&jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1status_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + *(neomessage_statusbitfield_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1timestamp_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1timestamp_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint64_t) ((arg1)->timestamp); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1timestampReserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1timestampReserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1data_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + + bool isCopy; + arg2 = (*jenv)->GetByteArrayElements(jenv, jarg2, &isCopy); + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT jbyteArray JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1data_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jbyteArray jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint8_t *) ((arg1)->data); + + jresult = (*jenv)->NewByteArray(jenv, (int) arg1->length); + (*jenv)->SetByteArrayRegion(jenv, jresult, 0, (int) arg1->length, result); + + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1length_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + size_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1length_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + size_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = ((arg1)->length); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1arbid_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->arbid = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1arbid_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint32_t) ((arg1)->arbid); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1netid_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1netid_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1type_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1type_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint8_t) ((arg1)->type); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1dlcOnWire_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->dlcOnWire = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1dlcOnWire_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint8_t) ((arg1)->dlcOnWire); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 16) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)16; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 16); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neomessage_1can_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neomessage_can_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neomessage_can_t *)calloc(1, sizeof(neomessage_can_t)); + *(neomessage_can_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neomessage_1can_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neomessage_can_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1status_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2, jobject jarg2_) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_statusbitfield_t *arg2 = (neomessage_statusbitfield_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg2_; + arg1 = *(neomessage_eth_t **)&jarg1; + arg2 = *(neomessage_statusbitfield_t **)&jarg2; + if (arg1) (arg1)->status = *arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1status_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_statusbitfield_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (neomessage_statusbitfield_t *)& ((arg1)->status); + *(neomessage_statusbitfield_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1timestamp_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1timestamp_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint64_t) ((arg1)->timestamp); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1timestampReserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jobject jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return ; + } + clazz = (*jenv)->GetObjectClass(jenv, jarg2); + mid = (*jenv)->GetMethodID(jenv, clazz, "toByteArray", "()[B"); + ba = (jbyteArray)(*jenv)->CallObjectMethod(jenv, jarg2, mid); + bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + sz = (*jenv)->GetArrayLength(jenv, ba); + arg2 = 0; + if (sz > 0) { + arg2 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(jenv, ba, bae, 0); + } + if (arg1) (arg1)->timestampReserved = arg2; +} + + +SWIGEXPORT jobject JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1timestampReserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jobject jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint64_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint64_t) ((arg1)->timestampReserved); + { + jbyteArray ba = (*jenv)->NewByteArray(jenv, 9); + jbyte* bae = (*jenv)->GetByteArrayElements(jenv, ba, 0); + jclass clazz = (*jenv)->FindClass(jenv, "java/math/BigInteger"); + jmethodID mid = (*jenv)->GetMethodID(jenv, clazz, "", "([B)V"); + jobject bigint; + int i; + + bae[0] = 0; + for(i=1; i<9; i++ ) { + bae[i] = (jbyte)(result>>8*(8-i)); + } + + (*jenv)->ReleaseByteArrayElements(jenv, ba, bae, 0); + bigint = (*jenv)->NewObject(jenv, clazz, mid, ba); + (*jenv)->DeleteLocalRef(jenv, ba); + jresult = bigint; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1data_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jbyteArray jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 = (uint8_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + + bool isCopy; + arg2 = (*jenv)->GetByteArrayElements(jenv, jarg2, &isCopy); + + if (arg1) (arg1)->data = (uint8_t const *)arg2; +} + + +SWIGEXPORT jbyteArray JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1data_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jbyteArray jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint8_t *) ((arg1)->data); + + jresult = (*jenv)->NewByteArray(jenv, (int) arg1->length); + (*jenv)->SetByteArrayRegion(jenv, jresult, 0, (int) arg1->length, result); + + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1length_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + size_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + arg2 = (size_t)jarg2; + if (arg1) (arg1)->length = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1length_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + size_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = ((arg1)->length); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1preemptionFlags_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->preemptionFlags = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1preemptionFlags_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint8_t) ((arg1)->preemptionFlags); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1reservedHeader_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 3) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reservedHeader; + for (ii = 0; ii < (size_t)3; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1reservedHeader_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reservedHeader); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 3); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1netid_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->netid = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1netid_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint16_t) ((arg1)->netid); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1type_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->type = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1type_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint8_t) ((arg1)->type); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 17) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)17; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 17); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neomessage_1eth_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neomessage_eth_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neomessage_eth_t *)calloc(1, sizeof(neomessage_eth_t)); + *(neomessage_eth_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neomessage_1eth_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neomessage_eth_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1DEVICETYPE_1LONGEST_1NAME_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)((35+1)); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1DEVICETYPE_1LONGEST_1DESCRIPTION_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(((35+1) +7)); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1major_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->major = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neoversion_1t_1major_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (uint16_t) ((arg1)->major); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1minor_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->minor = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neoversion_1t_1minor_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (uint16_t) ((arg1)->minor); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1patch_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = (uint16_t)jarg2; + if (arg1) (arg1)->patch = arg2; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_neoversion_1t_1patch_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jint jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + uint16_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (uint16_t) ((arg1)->patch); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1metadata_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if (arg2) { + arg1->metadata = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->metadata, (const char *)arg2); + } else { + arg1->metadata = 0; + } + } + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoversion_1t_1metadata_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (char *) ((arg1)->metadata); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1buildBranch_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if (arg2) { + arg1->buildBranch = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->buildBranch, (const char *)arg2); + } else { + arg1->buildBranch = 0; + } + } + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoversion_1t_1buildBranch_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (char *) ((arg1)->buildBranch); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1buildTag_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 = (char *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if (arg2) { + arg1->buildTag = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->buildTag, (const char *)arg2); + } else { + arg1->buildTag = 0; + } + } + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoversion_1t_1buildTag_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (char *) ((arg1)->buildTag); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoversion_1t_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if(arg2) { + strncpy((char*)arg1->reserved, (const char *)arg2, 32-1); + arg1->reserved[32-1] = 0; + } else { + arg1->reserved[0] = 0; + } + } + + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoversion_1t_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoversion_t *arg1 = (neoversion_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoversion_t **)&jarg1; + result = (char *)(char *) ((arg1)->reserved); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neoversion_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neoversion_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neoversion_t *)calloc(1, sizeof(neoversion_t)); + *(neoversion_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neoversion_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neoversion_t *arg1 = (neoversion_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neoversion_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1description_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *arg2 = (char *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if (arg2) { + arg1->description = (char const *) malloc(strlen((const char *)arg2)+1); + strcpy((char *)arg1->description, (const char *)arg2); + } else { + arg1->description = 0; + } + } + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoevent_1t_1description_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (char *) ((arg1)->description); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1timestamp_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + time_t arg2 ; + time_t *argp2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + argp2 = *(time_t **)&jarg2; + if (!argp2) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null time_t"); + return ; + } + arg2 = *argp2; + if (arg1) (arg1)->timestamp = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neoevent_1t_1timestamp_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + time_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = ((arg1)->timestamp); + { + time_t * resultptr = (time_t *) malloc(sizeof(time_t)); + memmove(resultptr, &result, sizeof(time_t)); + *(time_t **)&jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1eventNumber_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jlong jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint32_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = (uint32_t)jarg2; + if (arg1) (arg1)->eventNumber = arg2; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neoevent_1t_1eventNumber_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint32_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (uint32_t) ((arg1)->eventNumber); + jresult = (jlong)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1severity_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshort jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = (uint8_t)jarg2; + if (arg1) (arg1)->severity = arg2; +} + + +SWIGEXPORT jshort JNICALL Java_icsneojavaJNI_neoevent_1t_1severity_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshort jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (uint8_t) ((arg1)->severity); + jresult = (jshort)result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1serial_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jstring jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *arg2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)(*jenv)->GetStringUTFChars(jenv, jarg2, 0); + if (!arg2) return ; + } + { + if(arg2) { + strncpy((char*)arg1->serial, (const char *)arg2, 7-1); + arg1->serial[7-1] = 0; + } else { + arg1->serial[0] = 0; + } + } + + if (arg2) (*jenv)->ReleaseStringUTFChars(jenv, jarg2, (const char *)arg2); +} + + +SWIGEXPORT jstring JNICALL Java_icsneojavaJNI_neoevent_1t_1serial_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jstring jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + char *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (char *)(char *) ((arg1)->serial); + if (result) jresult = (*jenv)->NewStringUTF(jenv, (const char *)result); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1reserved_1set(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jshortArray jarg2) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t *arg2 ; + jshort *jarr2 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + if (jarg2 && (*jenv)->GetArrayLength(jenv, jarg2) != 16) { + SWIG_JavaThrowException(jenv, SWIG_JavaIndexOutOfBoundsException, "incorrect array size"); + return ; + } + if (!SWIG_JavaArrayInUchar(jenv, &jarr2, (unsigned char **)&arg2, jarg2)) return ; + { + size_t ii; + uint8_t *b = (uint8_t *) arg1->reserved; + for (ii = 0; ii < (size_t)16; ii++) b[ii] = *((uint8_t *) arg2 + ii); + } + SWIG_JavaArrayArgoutUchar(jenv, jarr2, (unsigned char *)arg2, jarg2); + free(arg2); +} + + +SWIGEXPORT jshortArray JNICALL Java_icsneojavaJNI_neoevent_1t_1reserved_1get(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jshortArray jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + uint8_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + result = (uint8_t *)(uint8_t *) ((arg1)->reserved); + jresult = SWIG_JavaArrayOutUchar(jenv, (unsigned char *)result, 16); + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neoevent_1t(JNIEnv *jenv, jclass jcls) { + jlong jresult = 0 ; + neoevent_t *result = 0 ; + + (void)jenv; + (void)jcls; + result = (neoevent_t *)calloc(1, sizeof(neoevent_t)); + *(neoevent_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neoevent_1t(JNIEnv *jenv, jclass jcls, jlong jarg1) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(neoevent_t **)&jarg1; + free((char *) arg1); +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1DEVICE_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1MSCAN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(2); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1SWCAN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LSFTCAN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FORDSCP_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1J1708_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(6); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1AUX_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(7); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1J1850VPW_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(8); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISO_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(9); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISOPIC_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(10); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1MAIN51_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(11); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(12); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1SCI_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(13); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISO2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(14); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISO14230_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(15); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(16); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET1_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(17); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(18); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET3_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(19); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1EXT_1MEMORYREAD_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(20); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1INT_1MEMORYREAD_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(21); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1DFLASH_1READ_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(22); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1SDCARD_1READ_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(23); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1CAN_1ERRBITS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(24); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1DFLASH_1WRITE_1DONE_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(25); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1CAN1_1LOGICAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(26); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1CAN2_1LOGICAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(27); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1LIN1_1LOGICAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(28); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1LIN2_1LOGICAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(29); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1LIN1_1ANALOG_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(30); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1LIN2_1ANALOG_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(31); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1MISC_1ANALOG_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(32); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1WAVE_1MISCDIO2_1LOGICAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(33); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1NETWORK_1COM_1ENABLE_1EX_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(34); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1NEOVI_1NETWORK_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(35); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1READ_1BAUD_1SETTINGS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(36); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1OLDFORMAT_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(37); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1SCOPE_1CAPTURE_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(38); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1HARDWARE_1EXCEP_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(39); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1GET_1RTC_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(40); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISO3_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(41); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(42); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN3_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(44); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET4_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(45); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET5_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(46); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ISO4_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(47); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(48); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN3_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(49); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN4_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(50); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1APP_1ERROR_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(52); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1CGI_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(53); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RESET_1STATUS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(54); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FB_1STATUS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(55); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1APP_1SIGNAL_1STATUS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(56); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1READ_1DATALINK_1CM_1TX_1MSG_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(57); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1READ_1DATALINK_1CM_1RX_1MSG_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(58); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LOGGING_1OVERFLOW_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(59); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1READ_1SETTINGS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(60); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN4_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(61); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN5_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(62); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RS232_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(63); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1UART_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(64); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1UART2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(65); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1UART3_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(66); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1UART4_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(67); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1SWCAN2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(68); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ETHERNET_1DAQ_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(69); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1DATA_1TO_1HOST_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(70); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1TEXTAPI_1TO_1HOST_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(71); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET6_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(73); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1RED_1VBAT_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(74); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET7_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(75); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET8_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(76); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET9_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(77); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET10_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(78); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET11_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(79); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY1A_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(80); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY1B_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(81); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY2A_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(82); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY2B_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(83); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN5_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(84); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(85); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1FLEXRAY2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(86); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1OP_1ETHERNET12_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(87); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1MOST25_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(90); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1MOST50_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(91); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1MOST150_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(92); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ETHERNET_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(93); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1GMFSA_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(94); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1TCP_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(95); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN6_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(96); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HSCAN7_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(97); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LIN6_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(98); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1LSFTCAN2_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(99); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1HW_1COM_1LATENCY_1TEST_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(512); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1DEVICE_1STATUS_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(513); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1ANY_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0xfffe); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETID_1INVALID_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0xffff); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1INVALID_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1INTERNAL_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1CAN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(2); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1LIN_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1FLEXRAY_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1MOST_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1ETHERNET_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(6); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1ANY_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0xFE); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_icsneojavaJNI_ICSNEO_1NETWORK_1TYPE_1OTHER_1get(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int result; + + (void)jenv; + (void)jcls; + result = (int)(0xFF); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1can_1t_1cast(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_can_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (neomessage_can_t *)neomessage_can_t_cast(arg1); + *(neomessage_can_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1eth_1t_1cast(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + neomessage_eth_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + result = (neomessage_eth_t *)neomessage_eth_t_cast(arg1); + *(neomessage_eth_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_from_1can_1neomessage_1t_1cast(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_can_t *arg1 = (neomessage_can_t *) 0 ; + neomessage_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_can_t **)&jarg1; + result = (neomessage_t *)from_can_neomessage_t_cast(arg1); + *(neomessage_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_from_1eth_1neomessage_1t_1cast(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + jlong jresult = 0 ; + neomessage_eth_t *arg1 = (neomessage_eth_t *) 0 ; + neomessage_t *result = 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_eth_t **)&jarg1; + result = (neomessage_t *)from_eth_neomessage_t_cast(arg1); + *(neomessage_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neodevice_1t_1array(JNIEnv *jenv, jclass jcls, jint jarg1) { + jlong jresult = 0 ; + int arg1 ; + neodevice_t *result = 0 ; + + (void)jenv; + (void)jcls; + arg1 = (int)jarg1; + result = (neodevice_t *)new_neodevice_t_array(arg1); + *(neodevice_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neodevice_1t_1array(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + delete_neodevice_t_array(arg1); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neodevice_1t_1array_1getitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + jlong jresult = 0 ; + neodevice_t *arg1 = (neodevice_t *) 0 ; + int arg2 ; + neodevice_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (int)jarg2; + result = neodevice_t_array_getitem(arg1,arg2); + { + neodevice_t * resultptr = (neodevice_t *) malloc(sizeof(neodevice_t)); + memmove(resultptr, &result, sizeof(neodevice_t)); + *(neodevice_t **)&jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neodevice_1t_1array_1setitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) { + neodevice_t *arg1 = (neodevice_t *) 0 ; + int arg2 ; + neodevice_t arg3 ; + neodevice_t *argp3 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg3_; + arg1 = *(neodevice_t **)&jarg1; + arg2 = (int)jarg2; + argp3 = *(neodevice_t **)&jarg3; + if (!argp3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null neodevice_t"); + return ; + } + arg3 = *argp3; + neodevice_t_array_setitem(arg1,arg2,arg3); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neoevent_1t_1array(JNIEnv *jenv, jclass jcls, jint jarg1) { + jlong jresult = 0 ; + int arg1 ; + neoevent_t *result = 0 ; + + (void)jenv; + (void)jcls; + arg1 = (int)jarg1; + result = (neoevent_t *)new_neoevent_t_array(arg1); + *(neoevent_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neoevent_1t_1array(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + delete_neoevent_t_array(arg1); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neoevent_1t_1array_1getitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + jlong jresult = 0 ; + neoevent_t *arg1 = (neoevent_t *) 0 ; + int arg2 ; + neoevent_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = (int)jarg2; + result = neoevent_t_array_getitem(arg1,arg2); + { + neoevent_t * resultptr = (neoevent_t *) malloc(sizeof(neoevent_t)); + memmove(resultptr, &result, sizeof(neoevent_t)); + *(neoevent_t **)&jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neoevent_1t_1array_1setitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) { + neoevent_t *arg1 = (neoevent_t *) 0 ; + int arg2 ; + neoevent_t arg3 ; + neoevent_t *argp3 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg3_; + arg1 = *(neoevent_t **)&jarg1; + arg2 = (int)jarg2; + argp3 = *(neoevent_t **)&jarg3; + if (!argp3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null neoevent_t"); + return ; + } + arg3 = *argp3; + neoevent_t_array_setitem(arg1,arg2,arg3); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_new_1neomessage_1t_1array(JNIEnv *jenv, jclass jcls, jint jarg1) { + jlong jresult = 0 ; + int arg1 ; + neomessage_t *result = 0 ; + + (void)jenv; + (void)jcls; + arg1 = (int)jarg1; + result = (neomessage_t *)new_neomessage_t_array(arg1); + *(neomessage_t **)&jresult = result; + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_delete_1neomessage_1t_1array(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + delete_neomessage_t_array(arg1); +} + + +SWIGEXPORT jlong JNICALL Java_icsneojavaJNI_neomessage_1t_1array_1getitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2) { + jlong jresult = 0 ; + neomessage_t *arg1 = (neomessage_t *) 0 ; + int arg2 ; + neomessage_t result; + + (void)jenv; + (void)jcls; + (void)jarg1_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = (int)jarg2; + result = neomessage_t_array_getitem(arg1,arg2); + { + neomessage_t * resultptr = (neomessage_t *) malloc(sizeof(neomessage_t)); + memmove(resultptr, &result, sizeof(neomessage_t)); + *(neomessage_t **)&jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void JNICALL Java_icsneojavaJNI_neomessage_1t_1array_1setitem(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jint jarg2, jlong jarg3, jobject jarg3_) { + neomessage_t *arg1 = (neomessage_t *) 0 ; + int arg2 ; + neomessage_t arg3 ; + neomessage_t *argp3 ; + + (void)jenv; + (void)jcls; + (void)jarg1_; + (void)jarg3_; + arg1 = *(neomessage_t **)&jarg1; + arg2 = (int)jarg2; + argp3 = *(neomessage_t **)&jarg3; + if (!argp3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "Attempt to dereference null neomessage_t"); + return ; + } + arg3 = *argp3; + neomessage_t_array_setitem(arg1,arg2,arg3); +} + + +#ifdef __cplusplus +} +#endif + diff --git a/examples/java/src/InteractiveExample.java b/examples/java/src/InteractiveExample.java new file mode 100644 index 0000000..97c42ec --- /dev/null +++ b/examples/java/src/InteractiveExample.java @@ -0,0 +1,511 @@ +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.Scanner; + +public class InteractiveExample { + + private int msgLimit = 50000; + private neodevice_t selectedDevice; + private ArrayList devices = new ArrayList(); + private int numDevices = 0; + + private void printAllDevices() { + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices."); + } + + for(int i = 0; i < numDevices; i++) { + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + if(icsneojava.icsneo_describeDevice(devices.get(i), description, maxLength)) { + System.out.print("[" + (i + 1) + "] " + description + "\tConnected: "); + + if(icsneojava.icsneo_isOpen(devices.get(i))) { + System.out.print("Yes\t"); + } else System.out.print("No\t"); + + System.out.print("Online: "); + if(icsneojava.icsneo_isOnline(devices.get(i))) { + System.out.print("Yes\t"); + } else System.out.print("No\t"); + + System.out.print("Msg Polling: "); + if(icsneojava.icsneo_isMessagePollingEnabled(devices.get(i))) { + System.out.print("On\n"); + } else System.out.print("Off\n"); + } else { + System.out.println("Description for device " + (i + 1) + " not available!"); + } + } + } + + private int scanNewDevices() { + neodevice_t newDevices = icsneojava.new_neodevice_t_array(99); + + int[] count = {10}; + + icsneojava.icsneo_findAllDevices(newDevices, count); + + numDevices += count[0]; + + for(int i = 0; i < numDevices; i++) { + devices.add(icsneojava.neodevice_t_array_getitem(newDevices, i)); + } + + icsneojava.delete_neodevice_t_array(newDevices); + return count[0]; + } + + private void printMainMenu() { + System.out.println("Press the letter next to the function you want to use:"); + System.out.println("A - List all devices"); + System.out.println("B - Scan for new devices"); + System.out.println("C - Open/close"); + System.out.println("D - Go online/offline"); + System.out.println("E - Enable/disable message polling"); + System.out.println("F - Get messages"); + System.out.println("G - Send message"); + System.out.println("H - Get events"); + System.out.println("I - Set HS CAN to 250K"); + System.out.println("J - Set HS CAN to 500K"); + System.out.println("X - Exit"); + } + + private void printLastError() { + neoevent_t error = new neoevent_t(); + if(icsneojava.icsneo_getLastError(error)) + System.out.println("Error 0x" + error.getEventNumber() + ": " + error.getDescription()); + else + System.out.println("No errors found!"); + } + + private void printAPIEvents() { + neoevent_t events = icsneojava.new_neoevent_t_array(99); + int[] eventCount = {99}; + if(icsneojava.icsneo_getEvents(events, eventCount)) { + if(eventCount[0] == 1) { + neoevent_t evt = icsneojava.neoevent_t_array_getitem(events, 0); + System.out.println("1 API event found!"); + System.out.println("Event 0x" + evt.getEventNumber() + ": " + evt.getDescription()); + } else { + System.out.println(eventCount[0] + " API events found!"); + for(var i = 0; i < eventCount[0]; ++i) { + neoevent_t evt = icsneojava.neoevent_t_array_getitem(events, i); + System.out.println("Event 0x" + evt.getEventNumber() + ": " + evt.getDescription()); + } + } + } else { + System.out.println("Failed to get API events!"); + } + icsneojava.delete_neoevent_t_array(events); + } + + private void printDeviceEvents(neodevice_t device) { + neoevent_t events = icsneojava.new_neoevent_t_array(99); + int[] eventCount = {99}; + if(icsneojava.icsneo_getDeviceEvents(device, events, eventCount)) { + if(eventCount[0] == 1) { + neoevent_t evt = icsneojava.neoevent_t_array_getitem(events, 0); + System.out.println("1 device event found!"); + System.out.println("Event 0x" + evt.getEventNumber() + ": " + evt.getDescription()); + } else { + System.out.println(eventCount[0] + " device events found!"); + for(int i = 0; i < eventCount[0]; ++i) { + neoevent_t evt = icsneojava.neoevent_t_array_getitem(events, i); + System.out.println("Event 0x" + evt.getEventNumber() + ": " + evt.getDescription()); + } + } + } else { + System.out.println("Failed to get API events!"); + } + icsneojava.delete_neoevent_t_array(events); + } + + private char getCharInput(char[] allowed) { + boolean found = false; + char key = '0'; + Scanner sc = new Scanner(System.in); + while(!found) { + key = sc.next().charAt(0); + System.out.println(); + for(char compare : allowed) { + if(compare == key) { + found = true; + break; + } + } + + if(!found) { + System.out.println("Input did not match expected options. Please try again."); + } + } + return key; + } + + private neodevice_t selectDevice() { + System.out.println("Please select a device:"); + printAllDevices(); + System.out.println(); + + int selectedDeviceNum = 10; + while(selectedDeviceNum > numDevices) { + char deviceSelection = getCharInput(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9' }); + selectedDeviceNum = deviceSelection - '0'; + if(selectedDeviceNum > numDevices) { + System.out.println("Selected device out of range!"); + } + } + + System.out.println(); + + return devices.get(selectedDeviceNum - 1); + } + + public void run() { + neoversion_t version = icsneojava.icsneo_getVersion(); + System.out.println("ICS libicsneojava.dll version " + version.getMajor() + "." + version.getMinor() + "." + version.getPatch()); + System.out.println(); + + while(true) { + printMainMenu(); + System.out.println(); + char input = getCharInput(new char[] { 'A', 'a', 'B', 'b', 'C', 'c', 'D', 'd', 'E', 'e', 'F', 'f', 'G', 'g', 'H', 'h', 'I', 'i', 'J', 'j', 'X', 'x' }); + System.out.println(); + switch(input) { + // List current devices + case 'A': + case 'a': + printAllDevices(); + System.out.println(); + break; + // Scan for new devices + case 'B': + case 'b': { + var numNewDevices = scanNewDevices(); + if(numNewDevices == 1) { + System.out.println("1 new device found!"); + } else { + System.out.println(numNewDevices + " new devices found!"); + } + printAllDevices(); + System.out.println(); + break; + } + // Open/close a device + case 'C': + case 'c': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + System.out.println("Would you like to open or close " + description + "?"); + System.out.println("[1] Open\n[2] Close\n[3] Cancel\n"); + + char option = getCharInput(new char[] { '1', '2', '3' }); + System.out.println(); + + switch(option) { + case '1': + // Attempt to open the selected device + if(icsneojava.icsneo_openDevice(selectedDevice)) { + System.out.println(description + " successfully opened!\n"); + } else { + System.out.println(description + " failed to open!\n"); + printLastError(); + System.out.println(); + } + break; + case '2': + // Attempt to close the device + if(icsneojava.icsneo_closeDevice(selectedDevice)) { + numDevices--; + System.out.println("Successfully closed " + description + "!\n"); + devices.remove(selectedDevice); + selectedDevice = null; + } else { + System.out.println("Failed to close " + description + "!\n"); + printLastError(); + System.out.println(); + } + break; + default: + System.out.println("Canceling!\n"); + break; + } + break; + } + // Go online/offline + case 'D': + case 'd': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + System.out.println("Would you like to have " + description + " go online or offline?"); + System.out.println("[1] Online\n[2] Offline\n[3] Cancel\n"); + + char option = getCharInput(new char[] { '1', '2', '3' }); + System.out.println(); + + switch(option) { + case '1': + // Attempt to go online + if(icsneojava.icsneo_goOnline(selectedDevice)) { + System.out.println(description + " successfully went online!\n"); + } else { + System.out.println(description + " failed to go online!\n"); + printLastError(); + System.out.println(); + } + break; + case '2': + // Attempt to go offline + if(icsneojava.icsneo_goOffline(selectedDevice)) { + System.out.println(description + " successfully went offline!\n"); + } else { + System.out.println(description + " failed to go offline!\n"); + printLastError(); + System.out.println(); + } + break; + default: + System.out.println("Canceling!\n"); + break; + } + break; + } + // Enable/disable message polling + case 'E': + case 'e': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + System.out.println("Would you like to enable or disable message polling for " + description + "?"); + System.out.println("[1] Enable\n[2] Disable\n[3] Cancel\n"); + + char option = getCharInput(new char[] { '1', '2', '3' }); + System.out.println(); + + switch(option) { + case '1': + // Attempt to enable message polling + if(icsneojava.icsneo_enableMessagePolling(selectedDevice)) { + System.out.println("Successfully enabled message polling for " + description + "!\n"); + } else { + System.out.println("Failed to enable message polling for " + description + "!\n"); + printLastError(); + System.out.println(); + } + + // Manually setting the polling message limit as done below is optional + // It will default to 20k if not set + // Attempt to set the polling message limit + if(icsneojava.icsneo_setPollingMessageLimit(selectedDevice, msgLimit)) { + System.out.println("Successfully set message polling limit for " + description + "!\n"); + } else { + System.out.println("Failed to set polling message limit for " + description + "!\n"); + printLastError(); + System.out.println(); + } + break; + case '2': + // Attempt to disable message polling + if(icsneojava.icsneo_disableMessagePolling(selectedDevice)) { + System.out.println("Successfully disabled message polling for " + description + "!\n"); + } else { + System.out.println("Failed to disable message polling for " + description + "!\n"); + printLastError(); + System.out.println(); + } + break; + default: + System.out.println("Canceling!\n"); + break; + } + } + break; + case 'F': + case 'f': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + // Prepare the neomessage_t array and size for reading in the messages + neomessage_t msgs = icsneojava.new_neomessage_t_array((int)msgLimit); + int[] msgCount = {msgLimit}; + + if(!icsneojava.icsneo_getMessages(selectedDevice, msgs, msgCount, BigInteger.ZERO)) { + System.out.println("Failed to get messages for " + description + "!\n"); + icsneojava.delete_neomessage_t_array(msgs); + printLastError(); + System.out.println(); + break; + } + + if(msgCount[0] == 1) { + System.out.println("1 message received from " + description + "!"); + } else { + System.out.println(msgCount[0] + " messages received from " + description + "!"); + } + + // Print out the received messages + for(int i = 0; i < msgCount[0]; i++) { + neomessage_t msg = icsneojava.neomessage_t_array_getitem(msgs, i); + if(msg.getType() == icsneojava.ICSNEO_NETWORK_TYPE_CAN) { + System.out.print("\t0x" + String.format("%03x", icsneojava.neomessage_can_t_cast(msg).getArbid()) + " [" + msg.getLength() + "] "); + for(int j = 0; j < msg.getLength(); j++) { + System.out.print(String.format("%02x ", icsneojava.neomessage_can_t_cast(msg).getData()[j])); + } + System.out.println("(" + msg.getTimestamp() + ")"); + } else { + if(msg.getNetid() != 0) + System.out.println("\tMessage on netid " + msg.getNetid() + " with length " + msg.getLength()); + } + } + icsneojava.delete_neomessage_t_array(msgs); + break; + } + // Send message + case 'G': + case 'g': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + // Start generating sample msg + neomessage_can_t msg = new neomessage_can_t(); + msg.setArbid(0x120); + msg.setLength(6); + msg.setNetid(icsneojava.ICSNEO_NETID_HSCAN); + msg.setData(new byte[] { (byte) 0xaa, (byte) 0xbb, (byte) 0xcc, (byte) 0xdd, (byte) 0xee, (byte) 0xff}); + msg.getStatus().setCanfdFDF(0); + msg.getStatus().setExtendedFrame(0); + msg.getStatus().setCanfdBRS(0); + // End generating sample msg + + // Attempt to transmit the sample msg + if(icsneojava.icsneo_transmit(selectedDevice, icsneojava.from_can_neomessage_t_cast(msg))) { + System.out.println("Message transmit successful!"); + } else { + System.out.println("Failed to transmit message to " + description + "!\n"); + printLastError(); + System.out.println(); + } + break; + } + // Get events + case 'H': + case 'h': + printAPIEvents(); + System.out.println(); + break; + // Set HS CAN to 250k + case 'I': + case 'i': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + // Attempt to set baudrate and apply settings + if(icsneojava.icsneo_setBaudrate(selectedDevice, icsneojava.ICSNEO_NETID_HSCAN, 250000) && icsneojava.icsneo_settingsApply(selectedDevice)) { + System.out.println("Successfully set HS CAN baudrate for " + description + "to 250k!\n"); + } else { + System.out.println("Failed to set HS CAN for " + description + " to 250k!\n"); + printLastError(); + System.out.println(); + } + break; + } + // Set HS CAN to 500k + case 'J': + case 'j': { + // Select a device and get its description + if(numDevices == 0) { + System.out.println("No devices found! Please scan for new devices.\n"); + break; + } + selectedDevice = selectDevice(); + + // Get the product description for the device + StringBuffer description = new StringBuffer(icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION); + int[] maxLength = {icsneojava.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION}; + + icsneojava.icsneo_describeDevice(selectedDevice, description, maxLength); + + // Attempt to set baudrate and apply settings + if(icsneojava.icsneo_setBaudrate(selectedDevice, icsneojava.ICSNEO_NETID_HSCAN, 500000) && icsneojava.icsneo_settingsApply(selectedDevice)) { + System.out.println("Successfully set HS CAN baudrate for " + description + "to 500k!\n"); + } else { + System.out.println("Failed to set HS CAN for " + description + " to 500k!\n"); + printLastError(); + System.out.println(); + } + break; + } + case 'X': + case 'x': + System.out.println("Exiting program"); + return; + default: + System.out.println("Unexpected input, exiting!"); + return; + } + } + } +} \ No newline at end of file diff --git a/examples/java/src/Run.java b/examples/java/src/Run.java new file mode 100644 index 0000000..319797c --- /dev/null +++ b/examples/java/src/Run.java @@ -0,0 +1,10 @@ +public class Run { + static { + System.loadLibrary("icsneojava"); + } + + public static void main(String[] args) { + InteractiveExample example = new InteractiveExample(); + example.run(); + } +} diff --git a/examples/java/src/SWIGTYPE_p_time_t.java b/examples/java/src/SWIGTYPE_p_time_t.java new file mode 100644 index 0000000..1582fb8 --- /dev/null +++ b/examples/java/src/SWIGTYPE_p_time_t.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class SWIGTYPE_p_time_t { + private transient long swigCPtr; + + protected SWIGTYPE_p_time_t(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_time_t() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_time_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} + diff --git a/examples/java/src/SWIGTYPE_p_unsigned_char.java b/examples/java/src/SWIGTYPE_p_unsigned_char.java new file mode 100644 index 0000000..51a406b --- /dev/null +++ b/examples/java/src/SWIGTYPE_p_unsigned_char.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class SWIGTYPE_p_unsigned_char { + private transient long swigCPtr; + + protected SWIGTYPE_p_unsigned_char(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_unsigned_char() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_unsigned_char obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} + diff --git a/examples/java/src/SWIGTYPE_p_unsigned_int.java b/examples/java/src/SWIGTYPE_p_unsigned_int.java new file mode 100644 index 0000000..a912fe8 --- /dev/null +++ b/examples/java/src/SWIGTYPE_p_unsigned_int.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class SWIGTYPE_p_unsigned_int { + private transient long swigCPtr; + + protected SWIGTYPE_p_unsigned_int(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_unsigned_int() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_unsigned_int obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} + diff --git a/examples/java/src/SWIGTYPE_p_unsigned_short.java b/examples/java/src/SWIGTYPE_p_unsigned_short.java new file mode 100644 index 0000000..ad80c2d --- /dev/null +++ b/examples/java/src/SWIGTYPE_p_unsigned_short.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class SWIGTYPE_p_unsigned_short { + private transient long swigCPtr; + + protected SWIGTYPE_p_unsigned_short(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_unsigned_short() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_unsigned_short obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} + diff --git a/examples/java/src/SWIGTYPE_p_void.java b/examples/java/src/SWIGTYPE_p_void.java new file mode 100644 index 0000000..09f62f8 --- /dev/null +++ b/examples/java/src/SWIGTYPE_p_void.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class SWIGTYPE_p_void { + private transient long swigCPtr; + + protected SWIGTYPE_p_void(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_void() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_void obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} + diff --git a/examples/java/src/icsneojava.java b/examples/java/src/icsneojava.java new file mode 100644 index 0000000..8d431d3 --- /dev/null +++ b/examples/java/src/icsneojava.java @@ -0,0 +1,262 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class icsneojava implements icsneojavaConstants { + public static void icsneo_findAllDevices(neodevice_t devices, int[] count) { + icsneojavaJNI.icsneo_findAllDevices(neodevice_t.getCPtr(devices), devices, count); + } + + public static void icsneo_freeUnconnectedDevices() { + icsneojavaJNI.icsneo_freeUnconnectedDevices(); + } + + public static boolean icsneo_serialNumToString(long num, StringBuffer str, int[] count) { + return icsneojavaJNI.icsneo_serialNumToString(num, str, count); + } + + public static long icsneo_serialStringToNum(StringBuffer str) { + return icsneojavaJNI.icsneo_serialStringToNum(str); + } + + public static boolean icsneo_isValidNeoDevice(neodevice_t device) { + return icsneojavaJNI.icsneo_isValidNeoDevice(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_openDevice(neodevice_t device) { + return icsneojavaJNI.icsneo_openDevice(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_closeDevice(neodevice_t device) { + return icsneojavaJNI.icsneo_closeDevice(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_isOpen(neodevice_t device) { + return icsneojavaJNI.icsneo_isOpen(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_goOnline(neodevice_t device) { + return icsneojavaJNI.icsneo_goOnline(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_goOffline(neodevice_t device) { + return icsneojavaJNI.icsneo_goOffline(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_isOnline(neodevice_t device) { + return icsneojavaJNI.icsneo_isOnline(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_enableMessagePolling(neodevice_t device) { + return icsneojavaJNI.icsneo_enableMessagePolling(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_disableMessagePolling(neodevice_t device) { + return icsneojavaJNI.icsneo_disableMessagePolling(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_isMessagePollingEnabled(neodevice_t device) { + return icsneojavaJNI.icsneo_isMessagePollingEnabled(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_getMessages(neodevice_t device, neomessage_t messages, int[] items, java.math.BigInteger timeout) { + return icsneojavaJNI.icsneo_getMessages(neodevice_t.getCPtr(device), device, neomessage_t.getCPtr(messages), messages, items, timeout); + } + + public static long icsneo_getPollingMessageLimit(neodevice_t device) { + return icsneojavaJNI.icsneo_getPollingMessageLimit(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_setPollingMessageLimit(neodevice_t device, long newLimit) { + return icsneojavaJNI.icsneo_setPollingMessageLimit(neodevice_t.getCPtr(device), device, newLimit); + } + + public static boolean icsneo_getProductName(neodevice_t device, StringBuffer str, int[] maxLength) { + return icsneojavaJNI.icsneo_getProductName(neodevice_t.getCPtr(device), device, str, maxLength); + } + + public static boolean icsneo_getProductNameForType(long type, StringBuffer str, int[] maxLength) { + return icsneojavaJNI.icsneo_getProductNameForType(type, str, maxLength); + } + + public static boolean icsneo_settingsRefresh(neodevice_t device) { + return icsneojavaJNI.icsneo_settingsRefresh(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_settingsApply(neodevice_t device) { + return icsneojavaJNI.icsneo_settingsApply(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_settingsApplyTemporary(neodevice_t device) { + return icsneojavaJNI.icsneo_settingsApplyTemporary(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_settingsApplyDefaults(neodevice_t device) { + return icsneojavaJNI.icsneo_settingsApplyDefaults(neodevice_t.getCPtr(device), device); + } + + public static boolean icsneo_settingsApplyDefaultsTemporary(neodevice_t device) { + return icsneojavaJNI.icsneo_settingsApplyDefaultsTemporary(neodevice_t.getCPtr(device), device); + } + + public static int icsneo_settingsReadStructure(neodevice_t device, SWIGTYPE_p_void structure, long structureSize) { + return icsneojavaJNI.icsneo_settingsReadStructure(neodevice_t.getCPtr(device), device, SWIGTYPE_p_void.getCPtr(structure), structureSize); + } + + public static boolean icsneo_settingsApplyStructure(neodevice_t device, SWIGTYPE_p_void structure, long structureSize) { + return icsneojavaJNI.icsneo_settingsApplyStructure(neodevice_t.getCPtr(device), device, SWIGTYPE_p_void.getCPtr(structure), structureSize); + } + + public static boolean icsneo_settingsApplyStructureTemporary(neodevice_t device, SWIGTYPE_p_void structure, long structureSize) { + return icsneojavaJNI.icsneo_settingsApplyStructureTemporary(neodevice_t.getCPtr(device), device, SWIGTYPE_p_void.getCPtr(structure), structureSize); + } + + public static long icsneo_getBaudrate(neodevice_t device, int netid) { + return icsneojavaJNI.icsneo_getBaudrate(neodevice_t.getCPtr(device), device, netid); + } + + public static boolean icsneo_setBaudrate(neodevice_t device, int netid, long newBaudrate) { + return icsneojavaJNI.icsneo_setBaudrate(neodevice_t.getCPtr(device), device, netid, newBaudrate); + } + + public static long icsneo_getFDBaudrate(neodevice_t device, int netid) { + return icsneojavaJNI.icsneo_getFDBaudrate(neodevice_t.getCPtr(device), device, netid); + } + + public static boolean icsneo_setFDBaudrate(neodevice_t device, int netid, long newBaudrate) { + return icsneojavaJNI.icsneo_setFDBaudrate(neodevice_t.getCPtr(device), device, netid, newBaudrate); + } + + public static boolean icsneo_transmit(neodevice_t device, neomessage_t message) { + return icsneojavaJNI.icsneo_transmit(neodevice_t.getCPtr(device), device, neomessage_t.getCPtr(message), message); + } + + public static boolean icsneo_transmitMessages(neodevice_t device, neomessage_t messages, long count) { + return icsneojavaJNI.icsneo_transmitMessages(neodevice_t.getCPtr(device), device, neomessage_t.getCPtr(messages), messages, count); + } + + public static void icsneo_setWriteBlocks(neodevice_t device, boolean blocks) { + icsneojavaJNI.icsneo_setWriteBlocks(neodevice_t.getCPtr(device), device, blocks); + } + + public static boolean icsneo_describeDevice(neodevice_t device, StringBuffer str, int[] maxLength) { + return icsneojavaJNI.icsneo_describeDevice(neodevice_t.getCPtr(device), device, str, maxLength); + } + + public static neoversion_t icsneo_getVersion() { + return new neoversion_t(icsneojavaJNI.icsneo_getVersion(), true); + } + + public static boolean icsneo_getEvents(neoevent_t events, int[] size) { + return icsneojavaJNI.icsneo_getEvents(neoevent_t.getCPtr(events), events, size); + } + + public static boolean icsneo_getDeviceEvents(neodevice_t device, neoevent_t events, int[] size) { + return icsneojavaJNI.icsneo_getDeviceEvents(neodevice_t.getCPtr(device), device, neoevent_t.getCPtr(events), events, size); + } + + public static boolean icsneo_getLastError(neoevent_t error) { + return icsneojavaJNI.icsneo_getLastError(neoevent_t.getCPtr(error), error); + } + + public static void icsneo_discardAllEvents() { + icsneojavaJNI.icsneo_discardAllEvents(); + } + + public static void icsneo_discardDeviceEvents(neodevice_t device) { + icsneojavaJNI.icsneo_discardDeviceEvents(neodevice_t.getCPtr(device), device); + } + + public static void icsneo_setEventLimit(long newLimit) { + icsneojavaJNI.icsneo_setEventLimit(newLimit); + } + + public static long icsneo_getEventLimit() { + return icsneojavaJNI.icsneo_getEventLimit(); + } + + public static boolean icsneo_getSupportedDevices(SWIGTYPE_p_unsigned_int devices, int[] count) { + return icsneojavaJNI.icsneo_getSupportedDevices(SWIGTYPE_p_unsigned_int.getCPtr(devices), count); + } + + public static boolean icsneo_getTimestampResolution(neodevice_t device, SWIGTYPE_p_unsigned_short resolution) { + return icsneojavaJNI.icsneo_getTimestampResolution(neodevice_t.getCPtr(device), device, SWIGTYPE_p_unsigned_short.getCPtr(resolution)); + } + + public static neomessage_can_t neomessage_can_t_cast(neomessage_t msg) { + long cPtr = icsneojavaJNI.neomessage_can_t_cast(neomessage_t.getCPtr(msg), msg); + return (cPtr == 0) ? null : new neomessage_can_t(cPtr, false); + } + + public static neomessage_eth_t neomessage_eth_t_cast(neomessage_t msg) { + long cPtr = icsneojavaJNI.neomessage_eth_t_cast(neomessage_t.getCPtr(msg), msg); + return (cPtr == 0) ? null : new neomessage_eth_t(cPtr, false); + } + + public static neomessage_t from_can_neomessage_t_cast(neomessage_can_t msg) { + long cPtr = icsneojavaJNI.from_can_neomessage_t_cast(neomessage_can_t.getCPtr(msg), msg); + return (cPtr == 0) ? null : new neomessage_t(cPtr, false); + } + + public static neomessage_t from_eth_neomessage_t_cast(neomessage_eth_t msg) { + long cPtr = icsneojavaJNI.from_eth_neomessage_t_cast(neomessage_eth_t.getCPtr(msg), msg); + return (cPtr == 0) ? null : new neomessage_t(cPtr, false); + } + + public static neodevice_t new_neodevice_t_array(int nelements) { + long cPtr = icsneojavaJNI.new_neodevice_t_array(nelements); + return (cPtr == 0) ? null : new neodevice_t(cPtr, false); + } + + public static void delete_neodevice_t_array(neodevice_t ary) { + icsneojavaJNI.delete_neodevice_t_array(neodevice_t.getCPtr(ary), ary); + } + + public static neodevice_t neodevice_t_array_getitem(neodevice_t ary, int index) { + return new neodevice_t(icsneojavaJNI.neodevice_t_array_getitem(neodevice_t.getCPtr(ary), ary, index), true); + } + + public static void neodevice_t_array_setitem(neodevice_t ary, int index, neodevice_t value) { + icsneojavaJNI.neodevice_t_array_setitem(neodevice_t.getCPtr(ary), ary, index, neodevice_t.getCPtr(value), value); + } + + public static neoevent_t new_neoevent_t_array(int nelements) { + long cPtr = icsneojavaJNI.new_neoevent_t_array(nelements); + return (cPtr == 0) ? null : new neoevent_t(cPtr, false); + } + + public static void delete_neoevent_t_array(neoevent_t ary) { + icsneojavaJNI.delete_neoevent_t_array(neoevent_t.getCPtr(ary), ary); + } + + public static neoevent_t neoevent_t_array_getitem(neoevent_t ary, int index) { + return new neoevent_t(icsneojavaJNI.neoevent_t_array_getitem(neoevent_t.getCPtr(ary), ary, index), true); + } + + public static void neoevent_t_array_setitem(neoevent_t ary, int index, neoevent_t value) { + icsneojavaJNI.neoevent_t_array_setitem(neoevent_t.getCPtr(ary), ary, index, neoevent_t.getCPtr(value), value); + } + + public static neomessage_t new_neomessage_t_array(int nelements) { + long cPtr = icsneojavaJNI.new_neomessage_t_array(nelements); + return (cPtr == 0) ? null : new neomessage_t(cPtr, false); + } + + public static void delete_neomessage_t_array(neomessage_t ary) { + icsneojavaJNI.delete_neomessage_t_array(neomessage_t.getCPtr(ary), ary); + } + + public static neomessage_t neomessage_t_array_getitem(neomessage_t ary, int index) { + return new neomessage_t(icsneojavaJNI.neomessage_t_array_getitem(neomessage_t.getCPtr(ary), ary, index), true); + } + + public static void neomessage_t_array_setitem(neomessage_t ary, int index, neomessage_t value) { + icsneojavaJNI.neomessage_t_array_setitem(neomessage_t.getCPtr(ary), ary, index, neomessage_t.getCPtr(value), value); + } + +} diff --git a/examples/java/src/icsneojavaConstants.java b/examples/java/src/icsneojavaConstants.java new file mode 100644 index 0000000..9ce45cb --- /dev/null +++ b/examples/java/src/icsneojavaConstants.java @@ -0,0 +1,121 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public interface icsneojavaConstants { + public final static int ICSNEO_DEVICETYPE_LONGEST_NAME = icsneojavaJNI.ICSNEO_DEVICETYPE_LONGEST_NAME_get(); + public final static int ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION = icsneojavaJNI.ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get(); + public final static int ICSNEO_NETID_DEVICE = icsneojavaJNI.ICSNEO_NETID_DEVICE_get(); + public final static int ICSNEO_NETID_HSCAN = icsneojavaJNI.ICSNEO_NETID_HSCAN_get(); + public final static int ICSNEO_NETID_MSCAN = icsneojavaJNI.ICSNEO_NETID_MSCAN_get(); + public final static int ICSNEO_NETID_SWCAN = icsneojavaJNI.ICSNEO_NETID_SWCAN_get(); + public final static int ICSNEO_NETID_LSFTCAN = icsneojavaJNI.ICSNEO_NETID_LSFTCAN_get(); + public final static int ICSNEO_NETID_FORDSCP = icsneojavaJNI.ICSNEO_NETID_FORDSCP_get(); + public final static int ICSNEO_NETID_J1708 = icsneojavaJNI.ICSNEO_NETID_J1708_get(); + public final static int ICSNEO_NETID_AUX = icsneojavaJNI.ICSNEO_NETID_AUX_get(); + public final static int ICSNEO_NETID_J1850VPW = icsneojavaJNI.ICSNEO_NETID_J1850VPW_get(); + public final static int ICSNEO_NETID_ISO = icsneojavaJNI.ICSNEO_NETID_ISO_get(); + public final static int ICSNEO_NETID_ISOPIC = icsneojavaJNI.ICSNEO_NETID_ISOPIC_get(); + public final static int ICSNEO_NETID_MAIN51 = icsneojavaJNI.ICSNEO_NETID_MAIN51_get(); + public final static int ICSNEO_NETID_RED = icsneojavaJNI.ICSNEO_NETID_RED_get(); + public final static int ICSNEO_NETID_SCI = icsneojavaJNI.ICSNEO_NETID_SCI_get(); + public final static int ICSNEO_NETID_ISO2 = icsneojavaJNI.ICSNEO_NETID_ISO2_get(); + public final static int ICSNEO_NETID_ISO14230 = icsneojavaJNI.ICSNEO_NETID_ISO14230_get(); + public final static int ICSNEO_NETID_LIN = icsneojavaJNI.ICSNEO_NETID_LIN_get(); + public final static int ICSNEO_NETID_OP_ETHERNET1 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET1_get(); + public final static int ICSNEO_NETID_OP_ETHERNET2 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET2_get(); + public final static int ICSNEO_NETID_OP_ETHERNET3 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET3_get(); + public final static int ICSNEO_NETID_RED_EXT_MEMORYREAD = icsneojavaJNI.ICSNEO_NETID_RED_EXT_MEMORYREAD_get(); + public final static int ICSNEO_NETID_RED_INT_MEMORYREAD = icsneojavaJNI.ICSNEO_NETID_RED_INT_MEMORYREAD_get(); + public final static int ICSNEO_NETID_RED_DFLASH_READ = icsneojavaJNI.ICSNEO_NETID_RED_DFLASH_READ_get(); + public final static int ICSNEO_NETID_RED_SDCARD_READ = icsneojavaJNI.ICSNEO_NETID_RED_SDCARD_READ_get(); + public final static int ICSNEO_NETID_CAN_ERRBITS = icsneojavaJNI.ICSNEO_NETID_CAN_ERRBITS_get(); + public final static int ICSNEO_NETID_RED_DFLASH_WRITE_DONE = icsneojavaJNI.ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get(); + public final static int ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get(); + public final static int ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get(); + public final static int ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get(); + public final static int ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get(); + public final static int ICSNEO_NETID_RED_WAVE_LIN1_ANALOG = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get(); + public final static int ICSNEO_NETID_RED_WAVE_LIN2_ANALOG = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get(); + public final static int ICSNEO_NETID_RED_WAVE_MISC_ANALOG = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get(); + public final static int ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL = icsneojavaJNI.ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get(); + public final static int ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX = icsneojavaJNI.ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get(); + public final static int ICSNEO_NETID_RED_NEOVI_NETWORK = icsneojavaJNI.ICSNEO_NETID_RED_NEOVI_NETWORK_get(); + public final static int ICSNEO_NETID_RED_READ_BAUD_SETTINGS = icsneojavaJNI.ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get(); + public final static int ICSNEO_NETID_RED_OLDFORMAT = icsneojavaJNI.ICSNEO_NETID_RED_OLDFORMAT_get(); + public final static int ICSNEO_NETID_RED_SCOPE_CAPTURE = icsneojavaJNI.ICSNEO_NETID_RED_SCOPE_CAPTURE_get(); + public final static int ICSNEO_NETID_RED_HARDWARE_EXCEP = icsneojavaJNI.ICSNEO_NETID_RED_HARDWARE_EXCEP_get(); + public final static int ICSNEO_NETID_RED_GET_RTC = icsneojavaJNI.ICSNEO_NETID_RED_GET_RTC_get(); + public final static int ICSNEO_NETID_ISO3 = icsneojavaJNI.ICSNEO_NETID_ISO3_get(); + public final static int ICSNEO_NETID_HSCAN2 = icsneojavaJNI.ICSNEO_NETID_HSCAN2_get(); + public final static int ICSNEO_NETID_HSCAN3 = icsneojavaJNI.ICSNEO_NETID_HSCAN3_get(); + public final static int ICSNEO_NETID_OP_ETHERNET4 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET4_get(); + public final static int ICSNEO_NETID_OP_ETHERNET5 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET5_get(); + public final static int ICSNEO_NETID_ISO4 = icsneojavaJNI.ICSNEO_NETID_ISO4_get(); + public final static int ICSNEO_NETID_LIN2 = icsneojavaJNI.ICSNEO_NETID_LIN2_get(); + public final static int ICSNEO_NETID_LIN3 = icsneojavaJNI.ICSNEO_NETID_LIN3_get(); + public final static int ICSNEO_NETID_LIN4 = icsneojavaJNI.ICSNEO_NETID_LIN4_get(); + public final static int ICSNEO_NETID_RED_APP_ERROR = icsneojavaJNI.ICSNEO_NETID_RED_APP_ERROR_get(); + public final static int ICSNEO_NETID_CGI = icsneojavaJNI.ICSNEO_NETID_CGI_get(); + public final static int ICSNEO_NETID_RESET_STATUS = icsneojavaJNI.ICSNEO_NETID_RESET_STATUS_get(); + public final static int ICSNEO_NETID_FB_STATUS = icsneojavaJNI.ICSNEO_NETID_FB_STATUS_get(); + public final static int ICSNEO_NETID_APP_SIGNAL_STATUS = icsneojavaJNI.ICSNEO_NETID_APP_SIGNAL_STATUS_get(); + public final static int ICSNEO_NETID_READ_DATALINK_CM_TX_MSG = icsneojavaJNI.ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get(); + public final static int ICSNEO_NETID_READ_DATALINK_CM_RX_MSG = icsneojavaJNI.ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get(); + public final static int ICSNEO_NETID_LOGGING_OVERFLOW = icsneojavaJNI.ICSNEO_NETID_LOGGING_OVERFLOW_get(); + public final static int ICSNEO_NETID_READ_SETTINGS = icsneojavaJNI.ICSNEO_NETID_READ_SETTINGS_get(); + public final static int ICSNEO_NETID_HSCAN4 = icsneojavaJNI.ICSNEO_NETID_HSCAN4_get(); + public final static int ICSNEO_NETID_HSCAN5 = icsneojavaJNI.ICSNEO_NETID_HSCAN5_get(); + public final static int ICSNEO_NETID_RS232 = icsneojavaJNI.ICSNEO_NETID_RS232_get(); + public final static int ICSNEO_NETID_UART = icsneojavaJNI.ICSNEO_NETID_UART_get(); + public final static int ICSNEO_NETID_UART2 = icsneojavaJNI.ICSNEO_NETID_UART2_get(); + public final static int ICSNEO_NETID_UART3 = icsneojavaJNI.ICSNEO_NETID_UART3_get(); + public final static int ICSNEO_NETID_UART4 = icsneojavaJNI.ICSNEO_NETID_UART4_get(); + public final static int ICSNEO_NETID_SWCAN2 = icsneojavaJNI.ICSNEO_NETID_SWCAN2_get(); + public final static int ICSNEO_NETID_ETHERNET_DAQ = icsneojavaJNI.ICSNEO_NETID_ETHERNET_DAQ_get(); + public final static int ICSNEO_NETID_DATA_TO_HOST = icsneojavaJNI.ICSNEO_NETID_DATA_TO_HOST_get(); + public final static int ICSNEO_NETID_TEXTAPI_TO_HOST = icsneojavaJNI.ICSNEO_NETID_TEXTAPI_TO_HOST_get(); + public final static int ICSNEO_NETID_OP_ETHERNET6 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET6_get(); + public final static int ICSNEO_NETID_RED_VBAT = icsneojavaJNI.ICSNEO_NETID_RED_VBAT_get(); + public final static int ICSNEO_NETID_OP_ETHERNET7 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET7_get(); + public final static int ICSNEO_NETID_OP_ETHERNET8 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET8_get(); + public final static int ICSNEO_NETID_OP_ETHERNET9 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET9_get(); + public final static int ICSNEO_NETID_OP_ETHERNET10 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET10_get(); + public final static int ICSNEO_NETID_OP_ETHERNET11 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET11_get(); + public final static int ICSNEO_NETID_FLEXRAY1A = icsneojavaJNI.ICSNEO_NETID_FLEXRAY1A_get(); + public final static int ICSNEO_NETID_FLEXRAY1B = icsneojavaJNI.ICSNEO_NETID_FLEXRAY1B_get(); + public final static int ICSNEO_NETID_FLEXRAY2A = icsneojavaJNI.ICSNEO_NETID_FLEXRAY2A_get(); + public final static int ICSNEO_NETID_FLEXRAY2B = icsneojavaJNI.ICSNEO_NETID_FLEXRAY2B_get(); + public final static int ICSNEO_NETID_LIN5 = icsneojavaJNI.ICSNEO_NETID_LIN5_get(); + public final static int ICSNEO_NETID_FLEXRAY = icsneojavaJNI.ICSNEO_NETID_FLEXRAY_get(); + public final static int ICSNEO_NETID_FLEXRAY2 = icsneojavaJNI.ICSNEO_NETID_FLEXRAY2_get(); + public final static int ICSNEO_NETID_OP_ETHERNET12 = icsneojavaJNI.ICSNEO_NETID_OP_ETHERNET12_get(); + public final static int ICSNEO_NETID_MOST25 = icsneojavaJNI.ICSNEO_NETID_MOST25_get(); + public final static int ICSNEO_NETID_MOST50 = icsneojavaJNI.ICSNEO_NETID_MOST50_get(); + public final static int ICSNEO_NETID_MOST150 = icsneojavaJNI.ICSNEO_NETID_MOST150_get(); + public final static int ICSNEO_NETID_ETHERNET = icsneojavaJNI.ICSNEO_NETID_ETHERNET_get(); + public final static int ICSNEO_NETID_GMFSA = icsneojavaJNI.ICSNEO_NETID_GMFSA_get(); + public final static int ICSNEO_NETID_TCP = icsneojavaJNI.ICSNEO_NETID_TCP_get(); + public final static int ICSNEO_NETID_HSCAN6 = icsneojavaJNI.ICSNEO_NETID_HSCAN6_get(); + public final static int ICSNEO_NETID_HSCAN7 = icsneojavaJNI.ICSNEO_NETID_HSCAN7_get(); + public final static int ICSNEO_NETID_LIN6 = icsneojavaJNI.ICSNEO_NETID_LIN6_get(); + public final static int ICSNEO_NETID_LSFTCAN2 = icsneojavaJNI.ICSNEO_NETID_LSFTCAN2_get(); + public final static int ICSNEO_NETID_HW_COM_LATENCY_TEST = icsneojavaJNI.ICSNEO_NETID_HW_COM_LATENCY_TEST_get(); + public final static int ICSNEO_NETID_DEVICE_STATUS = icsneojavaJNI.ICSNEO_NETID_DEVICE_STATUS_get(); + public final static int ICSNEO_NETID_ANY = icsneojavaJNI.ICSNEO_NETID_ANY_get(); + public final static int ICSNEO_NETID_INVALID = icsneojavaJNI.ICSNEO_NETID_INVALID_get(); + public final static int ICSNEO_NETWORK_TYPE_INVALID = icsneojavaJNI.ICSNEO_NETWORK_TYPE_INVALID_get(); + public final static int ICSNEO_NETWORK_TYPE_INTERNAL = icsneojavaJNI.ICSNEO_NETWORK_TYPE_INTERNAL_get(); + public final static int ICSNEO_NETWORK_TYPE_CAN = icsneojavaJNI.ICSNEO_NETWORK_TYPE_CAN_get(); + public final static int ICSNEO_NETWORK_TYPE_LIN = icsneojavaJNI.ICSNEO_NETWORK_TYPE_LIN_get(); + public final static int ICSNEO_NETWORK_TYPE_FLEXRAY = icsneojavaJNI.ICSNEO_NETWORK_TYPE_FLEXRAY_get(); + public final static int ICSNEO_NETWORK_TYPE_MOST = icsneojavaJNI.ICSNEO_NETWORK_TYPE_MOST_get(); + public final static int ICSNEO_NETWORK_TYPE_ETHERNET = icsneojavaJNI.ICSNEO_NETWORK_TYPE_ETHERNET_get(); + public final static int ICSNEO_NETWORK_TYPE_ANY = icsneojavaJNI.ICSNEO_NETWORK_TYPE_ANY_get(); + public final static int ICSNEO_NETWORK_TYPE_OTHER = icsneojavaJNI.ICSNEO_NETWORK_TYPE_OTHER_get(); +} diff --git a/examples/java/src/icsneojavaJNI.java b/examples/java/src/icsneojavaJNI.java new file mode 100644 index 0000000..98c9131 --- /dev/null +++ b/examples/java/src/icsneojavaJNI.java @@ -0,0 +1,400 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class icsneojavaJNI { + public final static native void icsneo_findAllDevices(long jarg1, neodevice_t jarg1_, int[] jarg2); + public final static native void icsneo_freeUnconnectedDevices(); + public final static native boolean icsneo_serialNumToString(long jarg1, StringBuffer jarg2, int[] jarg3); + public final static native long icsneo_serialStringToNum(StringBuffer jarg1); + public final static native boolean icsneo_isValidNeoDevice(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_openDevice(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_closeDevice(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_isOpen(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_goOnline(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_goOffline(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_isOnline(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_enableMessagePolling(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_disableMessagePolling(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_isMessagePollingEnabled(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_getMessages(long jarg1, neodevice_t jarg1_, long jarg2, neomessage_t jarg2_, int[] jarg3, java.math.BigInteger jarg4); + public final static native long icsneo_getPollingMessageLimit(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_setPollingMessageLimit(long jarg1, neodevice_t jarg1_, long jarg2); + public final static native boolean icsneo_getProductName(long jarg1, neodevice_t jarg1_, StringBuffer jarg2, int[] jarg3); + public final static native boolean icsneo_getProductNameForType(long jarg1, StringBuffer jarg2, int[] jarg3); + public final static native boolean icsneo_settingsRefresh(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_settingsApply(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_settingsApplyTemporary(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_settingsApplyDefaults(long jarg1, neodevice_t jarg1_); + public final static native boolean icsneo_settingsApplyDefaultsTemporary(long jarg1, neodevice_t jarg1_); + public final static native int icsneo_settingsReadStructure(long jarg1, neodevice_t jarg1_, long jarg2, long jarg3); + public final static native boolean icsneo_settingsApplyStructure(long jarg1, neodevice_t jarg1_, long jarg2, long jarg3); + public final static native boolean icsneo_settingsApplyStructureTemporary(long jarg1, neodevice_t jarg1_, long jarg2, long jarg3); + public final static native long icsneo_getBaudrate(long jarg1, neodevice_t jarg1_, int jarg2); + public final static native boolean icsneo_setBaudrate(long jarg1, neodevice_t jarg1_, int jarg2, long jarg3); + public final static native long icsneo_getFDBaudrate(long jarg1, neodevice_t jarg1_, int jarg2); + public final static native boolean icsneo_setFDBaudrate(long jarg1, neodevice_t jarg1_, int jarg2, long jarg3); + public final static native boolean icsneo_transmit(long jarg1, neodevice_t jarg1_, long jarg2, neomessage_t jarg2_); + public final static native boolean icsneo_transmitMessages(long jarg1, neodevice_t jarg1_, long jarg2, neomessage_t jarg2_, long jarg3); + public final static native void icsneo_setWriteBlocks(long jarg1, neodevice_t jarg1_, boolean jarg2); + public final static native boolean icsneo_describeDevice(long jarg1, neodevice_t jarg1_, StringBuffer jarg2, int[] jarg3); + public final static native long icsneo_getVersion(); + public final static native boolean icsneo_getEvents(long jarg1, neoevent_t jarg1_, int[] jarg2); + public final static native boolean icsneo_getDeviceEvents(long jarg1, neodevice_t jarg1_, long jarg2, neoevent_t jarg2_, int[] jarg3); + public final static native boolean icsneo_getLastError(long jarg1, neoevent_t jarg1_); + public final static native void icsneo_discardAllEvents(); + public final static native void icsneo_discardDeviceEvents(long jarg1, neodevice_t jarg1_); + public final static native void icsneo_setEventLimit(long jarg1); + public final static native long icsneo_getEventLimit(); + public final static native boolean icsneo_getSupportedDevices(long jarg1, int[] jarg2); + public final static native boolean icsneo_getTimestampResolution(long jarg1, neodevice_t jarg1_, long jarg2); + public final static native void neodevice_t_device_set(long jarg1, neodevice_t jarg1_, long jarg2); + public final static native long neodevice_t_device_get(long jarg1, neodevice_t jarg1_); + public final static native void neodevice_t_handle_set(long jarg1, neodevice_t jarg1_, int jarg2); + public final static native int neodevice_t_handle_get(long jarg1, neodevice_t jarg1_); + public final static native void neodevice_t_type_set(long jarg1, neodevice_t jarg1_, long jarg2); + public final static native long neodevice_t_type_get(long jarg1, neodevice_t jarg1_); + public final static native void neodevice_t_serial_set(long jarg1, neodevice_t jarg1_, String jarg2); + public final static native String neodevice_t_serial_get(long jarg1, neodevice_t jarg1_); + public final static native long new_neodevice_t(); + public final static native void delete_neodevice_t(long jarg1); + public final static native void neomessage_statusbitfield_t_globalError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_globalError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_transmitMessage_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_transmitMessage_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_extendedFrame_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_extendedFrame_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_remoteFrame_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_remoteFrame_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_crcError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_crcError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canErrorPassive_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canErrorPassive_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_incompleteFrame_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_incompleteFrame_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_lostArbitration_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_lostArbitration_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_undefinedError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_undefinedError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canBusOff_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canBusOff_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canErrorWarning_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canErrorWarning_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canBusShortedPlus_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canBusShortedPlus_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canBusShortedGround_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canBusShortedGround_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_checksumError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_checksumError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_badMessageBitTimeError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_badMessageBitTimeError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_ifrData_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_ifrData_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_hardwareCommError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_hardwareCommError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_expectedLengthError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_expectedLengthError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_incomingNoMatch_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_incomingNoMatch_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_statusBreak_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_statusBreak_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_avsiRecOverflow_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_avsiRecOverflow_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_testTrigger_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_testTrigger_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_audioComment_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_audioComment_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_gpsData_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_gpsData_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_analogDigitalInput_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_analogDigitalInput_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_textComment_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_textComment_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_networkMessageType_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_networkMessageType_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_vsiTXUnderrun_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_vsiTXUnderrun_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_vsiIFRCRCBit_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_vsiIFRCRCBit_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_initMessage_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_initMessage_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_flexraySecondStartupFrame_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_flexraySecondStartupFrame_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_extended_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_extended_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_hasValue_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_hasValue_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_valueIsBoolean_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_valueIsBoolean_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_highVoltage_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_highVoltage_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_longMessage_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_longMessage_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_globalChange_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_globalChange_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_errorFrame_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_errorFrame_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_endOfLongMessage_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_endOfLongMessage_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorRXBreakNotZero_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorRXBreakNotZero_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorRXBreakTooShort_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorRXBreakTooShort_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorRXSyncNot55_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorRXSyncNot55_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorTXRXMismatch_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorTXRXMismatch_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linErrorMessageIDParity_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linErrorMessageIDParity_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linSyncFrameError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linSyncFrameError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linIDFrameError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linIDFrameError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linSlaveByteError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linSlaveByteError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_rxTimeoutError_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_rxTimeoutError_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_linNoSlaveData_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_linNoSlaveData_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canfdESI_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canfdESI_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canfdIDE_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canfdIDE_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canfdRTR_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canfdRTR_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canfdFDF_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canfdFDF_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_canfdBRS_set(long jarg1, neomessage_statusbitfield_t jarg1_, long jarg2); + public final static native long neomessage_statusbitfield_t_canfdBRS_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native void neomessage_statusbitfield_t_statusBitfield_set(long jarg1, neomessage_statusbitfield_t jarg1_, long[] jarg2); + public final static native long[] neomessage_statusbitfield_t_statusBitfield_get(long jarg1, neomessage_statusbitfield_t jarg1_); + public final static native long new_neomessage_statusbitfield_t(); + public final static native void delete_neomessage_statusbitfield_t(long jarg1); + public final static native void neomessage_t_status_set(long jarg1, neomessage_t jarg1_, long jarg2, neomessage_statusbitfield_t jarg2_); + public final static native long neomessage_t_status_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_timestamp_set(long jarg1, neomessage_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_t_timestamp_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_timestampReserved_set(long jarg1, neomessage_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_t_timestampReserved_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_data_set(long jarg1, neomessage_t jarg1_, byte[] jarg2); + public final static native byte[] neomessage_t_data_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_length_set(long jarg1, neomessage_t jarg1_, long jarg2); + public final static native long neomessage_t_length_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_header_set(long jarg1, neomessage_t jarg1_, short[] jarg2); + public final static native short[] neomessage_t_header_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_netid_set(long jarg1, neomessage_t jarg1_, int jarg2); + public final static native int neomessage_t_netid_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_type_set(long jarg1, neomessage_t jarg1_, short jarg2); + public final static native short neomessage_t_type_get(long jarg1, neomessage_t jarg1_); + public final static native void neomessage_t_reserved_set(long jarg1, neomessage_t jarg1_, short[] jarg2); + public final static native short[] neomessage_t_reserved_get(long jarg1, neomessage_t jarg1_); + public final static native long new_neomessage_t(); + public final static native void delete_neomessage_t(long jarg1); + public final static native void neomessage_can_t_status_set(long jarg1, neomessage_can_t jarg1_, long jarg2, neomessage_statusbitfield_t jarg2_); + public final static native long neomessage_can_t_status_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_timestamp_set(long jarg1, neomessage_can_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_can_t_timestamp_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_timestampReserved_set(long jarg1, neomessage_can_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_can_t_timestampReserved_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_data_set(long jarg1, neomessage_can_t jarg1_, byte[] jarg2); + public final static native byte[] neomessage_can_t_data_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_length_set(long jarg1, neomessage_can_t jarg1_, long jarg2); + public final static native long neomessage_can_t_length_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_arbid_set(long jarg1, neomessage_can_t jarg1_, long jarg2); + public final static native long neomessage_can_t_arbid_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_netid_set(long jarg1, neomessage_can_t jarg1_, int jarg2); + public final static native int neomessage_can_t_netid_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_type_set(long jarg1, neomessage_can_t jarg1_, short jarg2); + public final static native short neomessage_can_t_type_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_dlcOnWire_set(long jarg1, neomessage_can_t jarg1_, short jarg2); + public final static native short neomessage_can_t_dlcOnWire_get(long jarg1, neomessage_can_t jarg1_); + public final static native void neomessage_can_t_reserved_set(long jarg1, neomessage_can_t jarg1_, short[] jarg2); + public final static native short[] neomessage_can_t_reserved_get(long jarg1, neomessage_can_t jarg1_); + public final static native long new_neomessage_can_t(); + public final static native void delete_neomessage_can_t(long jarg1); + public final static native void neomessage_eth_t_status_set(long jarg1, neomessage_eth_t jarg1_, long jarg2, neomessage_statusbitfield_t jarg2_); + public final static native long neomessage_eth_t_status_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_timestamp_set(long jarg1, neomessage_eth_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_eth_t_timestamp_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_timestampReserved_set(long jarg1, neomessage_eth_t jarg1_, java.math.BigInteger jarg2); + public final static native java.math.BigInteger neomessage_eth_t_timestampReserved_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_data_set(long jarg1, neomessage_eth_t jarg1_, byte[] jarg2); + public final static native byte[] neomessage_eth_t_data_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_length_set(long jarg1, neomessage_eth_t jarg1_, long jarg2); + public final static native long neomessage_eth_t_length_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_preemptionFlags_set(long jarg1, neomessage_eth_t jarg1_, short jarg2); + public final static native short neomessage_eth_t_preemptionFlags_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_reservedHeader_set(long jarg1, neomessage_eth_t jarg1_, short[] jarg2); + public final static native short[] neomessage_eth_t_reservedHeader_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_netid_set(long jarg1, neomessage_eth_t jarg1_, int jarg2); + public final static native int neomessage_eth_t_netid_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_type_set(long jarg1, neomessage_eth_t jarg1_, short jarg2); + public final static native short neomessage_eth_t_type_get(long jarg1, neomessage_eth_t jarg1_); + public final static native void neomessage_eth_t_reserved_set(long jarg1, neomessage_eth_t jarg1_, short[] jarg2); + public final static native short[] neomessage_eth_t_reserved_get(long jarg1, neomessage_eth_t jarg1_); + public final static native long new_neomessage_eth_t(); + public final static native void delete_neomessage_eth_t(long jarg1); + public final static native int ICSNEO_DEVICETYPE_LONGEST_NAME_get(); + public final static native int ICSNEO_DEVICETYPE_LONGEST_DESCRIPTION_get(); + public final static native void neoversion_t_major_set(long jarg1, neoversion_t jarg1_, int jarg2); + public final static native int neoversion_t_major_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_minor_set(long jarg1, neoversion_t jarg1_, int jarg2); + public final static native int neoversion_t_minor_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_patch_set(long jarg1, neoversion_t jarg1_, int jarg2); + public final static native int neoversion_t_patch_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_metadata_set(long jarg1, neoversion_t jarg1_, String jarg2); + public final static native String neoversion_t_metadata_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_buildBranch_set(long jarg1, neoversion_t jarg1_, String jarg2); + public final static native String neoversion_t_buildBranch_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_buildTag_set(long jarg1, neoversion_t jarg1_, String jarg2); + public final static native String neoversion_t_buildTag_get(long jarg1, neoversion_t jarg1_); + public final static native void neoversion_t_reserved_set(long jarg1, neoversion_t jarg1_, String jarg2); + public final static native String neoversion_t_reserved_get(long jarg1, neoversion_t jarg1_); + public final static native long new_neoversion_t(); + public final static native void delete_neoversion_t(long jarg1); + public final static native void neoevent_t_description_set(long jarg1, neoevent_t jarg1_, String jarg2); + public final static native String neoevent_t_description_get(long jarg1, neoevent_t jarg1_); + public final static native void neoevent_t_timestamp_set(long jarg1, neoevent_t jarg1_, long jarg2); + public final static native long neoevent_t_timestamp_get(long jarg1, neoevent_t jarg1_); + public final static native void neoevent_t_eventNumber_set(long jarg1, neoevent_t jarg1_, long jarg2); + public final static native long neoevent_t_eventNumber_get(long jarg1, neoevent_t jarg1_); + public final static native void neoevent_t_severity_set(long jarg1, neoevent_t jarg1_, short jarg2); + public final static native short neoevent_t_severity_get(long jarg1, neoevent_t jarg1_); + public final static native void neoevent_t_serial_set(long jarg1, neoevent_t jarg1_, String jarg2); + public final static native String neoevent_t_serial_get(long jarg1, neoevent_t jarg1_); + public final static native void neoevent_t_reserved_set(long jarg1, neoevent_t jarg1_, short[] jarg2); + public final static native short[] neoevent_t_reserved_get(long jarg1, neoevent_t jarg1_); + public final static native long new_neoevent_t(); + public final static native void delete_neoevent_t(long jarg1); + public final static native int ICSNEO_NETID_DEVICE_get(); + public final static native int ICSNEO_NETID_HSCAN_get(); + public final static native int ICSNEO_NETID_MSCAN_get(); + public final static native int ICSNEO_NETID_SWCAN_get(); + public final static native int ICSNEO_NETID_LSFTCAN_get(); + public final static native int ICSNEO_NETID_FORDSCP_get(); + public final static native int ICSNEO_NETID_J1708_get(); + public final static native int ICSNEO_NETID_AUX_get(); + public final static native int ICSNEO_NETID_J1850VPW_get(); + public final static native int ICSNEO_NETID_ISO_get(); + public final static native int ICSNEO_NETID_ISOPIC_get(); + public final static native int ICSNEO_NETID_MAIN51_get(); + public final static native int ICSNEO_NETID_RED_get(); + public final static native int ICSNEO_NETID_SCI_get(); + public final static native int ICSNEO_NETID_ISO2_get(); + public final static native int ICSNEO_NETID_ISO14230_get(); + public final static native int ICSNEO_NETID_LIN_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET1_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET2_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET3_get(); + public final static native int ICSNEO_NETID_RED_EXT_MEMORYREAD_get(); + public final static native int ICSNEO_NETID_RED_INT_MEMORYREAD_get(); + public final static native int ICSNEO_NETID_RED_DFLASH_READ_get(); + public final static native int ICSNEO_NETID_RED_SDCARD_READ_get(); + public final static native int ICSNEO_NETID_CAN_ERRBITS_get(); + public final static native int ICSNEO_NETID_RED_DFLASH_WRITE_DONE_get(); + public final static native int ICSNEO_NETID_RED_WAVE_CAN1_LOGICAL_get(); + public final static native int ICSNEO_NETID_RED_WAVE_CAN2_LOGICAL_get(); + public final static native int ICSNEO_NETID_RED_WAVE_LIN1_LOGICAL_get(); + public final static native int ICSNEO_NETID_RED_WAVE_LIN2_LOGICAL_get(); + public final static native int ICSNEO_NETID_RED_WAVE_LIN1_ANALOG_get(); + public final static native int ICSNEO_NETID_RED_WAVE_LIN2_ANALOG_get(); + public final static native int ICSNEO_NETID_RED_WAVE_MISC_ANALOG_get(); + public final static native int ICSNEO_NETID_RED_WAVE_MISCDIO2_LOGICAL_get(); + public final static native int ICSNEO_NETID_RED_NETWORK_COM_ENABLE_EX_get(); + public final static native int ICSNEO_NETID_RED_NEOVI_NETWORK_get(); + public final static native int ICSNEO_NETID_RED_READ_BAUD_SETTINGS_get(); + public final static native int ICSNEO_NETID_RED_OLDFORMAT_get(); + public final static native int ICSNEO_NETID_RED_SCOPE_CAPTURE_get(); + public final static native int ICSNEO_NETID_RED_HARDWARE_EXCEP_get(); + public final static native int ICSNEO_NETID_RED_GET_RTC_get(); + public final static native int ICSNEO_NETID_ISO3_get(); + public final static native int ICSNEO_NETID_HSCAN2_get(); + public final static native int ICSNEO_NETID_HSCAN3_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET4_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET5_get(); + public final static native int ICSNEO_NETID_ISO4_get(); + public final static native int ICSNEO_NETID_LIN2_get(); + public final static native int ICSNEO_NETID_LIN3_get(); + public final static native int ICSNEO_NETID_LIN4_get(); + public final static native int ICSNEO_NETID_RED_APP_ERROR_get(); + public final static native int ICSNEO_NETID_CGI_get(); + public final static native int ICSNEO_NETID_RESET_STATUS_get(); + public final static native int ICSNEO_NETID_FB_STATUS_get(); + public final static native int ICSNEO_NETID_APP_SIGNAL_STATUS_get(); + public final static native int ICSNEO_NETID_READ_DATALINK_CM_TX_MSG_get(); + public final static native int ICSNEO_NETID_READ_DATALINK_CM_RX_MSG_get(); + public final static native int ICSNEO_NETID_LOGGING_OVERFLOW_get(); + public final static native int ICSNEO_NETID_READ_SETTINGS_get(); + public final static native int ICSNEO_NETID_HSCAN4_get(); + public final static native int ICSNEO_NETID_HSCAN5_get(); + public final static native int ICSNEO_NETID_RS232_get(); + public final static native int ICSNEO_NETID_UART_get(); + public final static native int ICSNEO_NETID_UART2_get(); + public final static native int ICSNEO_NETID_UART3_get(); + public final static native int ICSNEO_NETID_UART4_get(); + public final static native int ICSNEO_NETID_SWCAN2_get(); + public final static native int ICSNEO_NETID_ETHERNET_DAQ_get(); + public final static native int ICSNEO_NETID_DATA_TO_HOST_get(); + public final static native int ICSNEO_NETID_TEXTAPI_TO_HOST_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET6_get(); + public final static native int ICSNEO_NETID_RED_VBAT_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET7_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET8_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET9_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET10_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET11_get(); + public final static native int ICSNEO_NETID_FLEXRAY1A_get(); + public final static native int ICSNEO_NETID_FLEXRAY1B_get(); + public final static native int ICSNEO_NETID_FLEXRAY2A_get(); + public final static native int ICSNEO_NETID_FLEXRAY2B_get(); + public final static native int ICSNEO_NETID_LIN5_get(); + public final static native int ICSNEO_NETID_FLEXRAY_get(); + public final static native int ICSNEO_NETID_FLEXRAY2_get(); + public final static native int ICSNEO_NETID_OP_ETHERNET12_get(); + public final static native int ICSNEO_NETID_MOST25_get(); + public final static native int ICSNEO_NETID_MOST50_get(); + public final static native int ICSNEO_NETID_MOST150_get(); + public final static native int ICSNEO_NETID_ETHERNET_get(); + public final static native int ICSNEO_NETID_GMFSA_get(); + public final static native int ICSNEO_NETID_TCP_get(); + public final static native int ICSNEO_NETID_HSCAN6_get(); + public final static native int ICSNEO_NETID_HSCAN7_get(); + public final static native int ICSNEO_NETID_LIN6_get(); + public final static native int ICSNEO_NETID_LSFTCAN2_get(); + public final static native int ICSNEO_NETID_HW_COM_LATENCY_TEST_get(); + public final static native int ICSNEO_NETID_DEVICE_STATUS_get(); + public final static native int ICSNEO_NETID_ANY_get(); + public final static native int ICSNEO_NETID_INVALID_get(); + public final static native int ICSNEO_NETWORK_TYPE_INVALID_get(); + public final static native int ICSNEO_NETWORK_TYPE_INTERNAL_get(); + public final static native int ICSNEO_NETWORK_TYPE_CAN_get(); + public final static native int ICSNEO_NETWORK_TYPE_LIN_get(); + public final static native int ICSNEO_NETWORK_TYPE_FLEXRAY_get(); + public final static native int ICSNEO_NETWORK_TYPE_MOST_get(); + public final static native int ICSNEO_NETWORK_TYPE_ETHERNET_get(); + public final static native int ICSNEO_NETWORK_TYPE_ANY_get(); + public final static native int ICSNEO_NETWORK_TYPE_OTHER_get(); + public final static native long neomessage_can_t_cast(long jarg1, neomessage_t jarg1_); + public final static native long neomessage_eth_t_cast(long jarg1, neomessage_t jarg1_); + public final static native long from_can_neomessage_t_cast(long jarg1, neomessage_can_t jarg1_); + public final static native long from_eth_neomessage_t_cast(long jarg1, neomessage_eth_t jarg1_); + public final static native long new_neodevice_t_array(int jarg1); + public final static native void delete_neodevice_t_array(long jarg1, neodevice_t jarg1_); + public final static native long neodevice_t_array_getitem(long jarg1, neodevice_t jarg1_, int jarg2); + public final static native void neodevice_t_array_setitem(long jarg1, neodevice_t jarg1_, int jarg2, long jarg3, neodevice_t jarg3_); + public final static native long new_neoevent_t_array(int jarg1); + public final static native void delete_neoevent_t_array(long jarg1, neoevent_t jarg1_); + public final static native long neoevent_t_array_getitem(long jarg1, neoevent_t jarg1_, int jarg2); + public final static native void neoevent_t_array_setitem(long jarg1, neoevent_t jarg1_, int jarg2, long jarg3, neoevent_t jarg3_); + public final static native long new_neomessage_t_array(int jarg1); + public final static native void delete_neomessage_t_array(long jarg1, neomessage_t jarg1_); + public final static native long neomessage_t_array_getitem(long jarg1, neomessage_t jarg1_, int jarg2); + public final static native void neomessage_t_array_setitem(long jarg1, neomessage_t jarg1_, int jarg2, long jarg3, neomessage_t jarg3_); +} diff --git a/examples/java/src/neodevice_t.java b/examples/java/src/neodevice_t.java new file mode 100644 index 0000000..f3bec7d --- /dev/null +++ b/examples/java/src/neodevice_t.java @@ -0,0 +1,75 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neodevice_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neodevice_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neodevice_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neodevice_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setDevice(SWIGTYPE_p_void value) { + icsneojavaJNI.neodevice_t_device_set(swigCPtr, this, SWIGTYPE_p_void.getCPtr(value)); + } + + public SWIGTYPE_p_void getDevice() { + long cPtr = icsneojavaJNI.neodevice_t_device_get(swigCPtr, this); + return (cPtr == 0) ? null : new SWIGTYPE_p_void(cPtr, false); + } + + public void setHandle(int value) { + icsneojavaJNI.neodevice_t_handle_set(swigCPtr, this, value); + } + + public int getHandle() { + return icsneojavaJNI.neodevice_t_handle_get(swigCPtr, this); + } + + public void setType(long value) { + icsneojavaJNI.neodevice_t_type_set(swigCPtr, this, value); + } + + public long getType() { + return icsneojavaJNI.neodevice_t_type_get(swigCPtr, this); + } + + public void setSerial(String value) { + icsneojavaJNI.neodevice_t_serial_set(swigCPtr, this, value); + } + + public String getSerial() { + return icsneojavaJNI.neodevice_t_serial_get(swigCPtr, this); + } + + public neodevice_t() { + this(icsneojavaJNI.new_neodevice_t(), true); + } + +} diff --git a/examples/java/src/neoevent_t.java b/examples/java/src/neoevent_t.java new file mode 100644 index 0000000..2402178 --- /dev/null +++ b/examples/java/src/neoevent_t.java @@ -0,0 +1,90 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neoevent_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neoevent_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neoevent_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neoevent_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setDescription(String value) { + icsneojavaJNI.neoevent_t_description_set(swigCPtr, this, value); + } + + public String getDescription() { + return icsneojavaJNI.neoevent_t_description_get(swigCPtr, this); + } + + public void setTimestamp(SWIGTYPE_p_time_t value) { + icsneojavaJNI.neoevent_t_timestamp_set(swigCPtr, this, SWIGTYPE_p_time_t.getCPtr(value)); + } + + public SWIGTYPE_p_time_t getTimestamp() { + return new SWIGTYPE_p_time_t(icsneojavaJNI.neoevent_t_timestamp_get(swigCPtr, this), true); + } + + public void setEventNumber(long value) { + icsneojavaJNI.neoevent_t_eventNumber_set(swigCPtr, this, value); + } + + public long getEventNumber() { + return icsneojavaJNI.neoevent_t_eventNumber_get(swigCPtr, this); + } + + public void setSeverity(short value) { + icsneojavaJNI.neoevent_t_severity_set(swigCPtr, this, value); + } + + public short getSeverity() { + return icsneojavaJNI.neoevent_t_severity_get(swigCPtr, this); + } + + public void setSerial(String value) { + icsneojavaJNI.neoevent_t_serial_set(swigCPtr, this, value); + } + + public String getSerial() { + return icsneojavaJNI.neoevent_t_serial_get(swigCPtr, this); + } + + public void setReserved(short[] value) { + icsneojavaJNI.neoevent_t_reserved_set(swigCPtr, this, value); + } + + public short[] getReserved() { + return icsneojavaJNI.neoevent_t_reserved_get(swigCPtr, this); + } + + public neoevent_t() { + this(icsneojavaJNI.new_neoevent_t(), true); + } + +} diff --git a/examples/java/src/neomessage_can_t.java b/examples/java/src/neomessage_can_t.java new file mode 100644 index 0000000..7589a14 --- /dev/null +++ b/examples/java/src/neomessage_can_t.java @@ -0,0 +1,123 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neomessage_can_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neomessage_can_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neomessage_can_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neomessage_can_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setStatus(neomessage_statusbitfield_t value) { + icsneojavaJNI.neomessage_can_t_status_set(swigCPtr, this, neomessage_statusbitfield_t.getCPtr(value), value); + } + + public neomessage_statusbitfield_t getStatus() { + long cPtr = icsneojavaJNI.neomessage_can_t_status_get(swigCPtr, this); + return (cPtr == 0) ? null : new neomessage_statusbitfield_t(cPtr, false); + } + + public void setTimestamp(java.math.BigInteger value) { + icsneojavaJNI.neomessage_can_t_timestamp_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestamp() { + return icsneojavaJNI.neomessage_can_t_timestamp_get(swigCPtr, this); + } + + public void setTimestampReserved(java.math.BigInteger value) { + icsneojavaJNI.neomessage_can_t_timestampReserved_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestampReserved() { + return icsneojavaJNI.neomessage_can_t_timestampReserved_get(swigCPtr, this); + } + + public void setData(byte[] value) { + icsneojavaJNI.neomessage_can_t_data_set(swigCPtr, this, value); + } + + public byte[] getData() { + return icsneojavaJNI.neomessage_can_t_data_get(swigCPtr, this); +} + + public void setLength(long value) { + icsneojavaJNI.neomessage_can_t_length_set(swigCPtr, this, value); + } + + public long getLength() { + return icsneojavaJNI.neomessage_can_t_length_get(swigCPtr, this); + } + + public void setArbid(long value) { + icsneojavaJNI.neomessage_can_t_arbid_set(swigCPtr, this, value); + } + + public long getArbid() { + return icsneojavaJNI.neomessage_can_t_arbid_get(swigCPtr, this); + } + + public void setNetid(int value) { + icsneojavaJNI.neomessage_can_t_netid_set(swigCPtr, this, value); + } + + public int getNetid() { + return icsneojavaJNI.neomessage_can_t_netid_get(swigCPtr, this); + } + + public void setType(short value) { + icsneojavaJNI.neomessage_can_t_type_set(swigCPtr, this, value); + } + + public short getType() { + return icsneojavaJNI.neomessage_can_t_type_get(swigCPtr, this); + } + + public void setDlcOnWire(short value) { + icsneojavaJNI.neomessage_can_t_dlcOnWire_set(swigCPtr, this, value); + } + + public short getDlcOnWire() { + return icsneojavaJNI.neomessage_can_t_dlcOnWire_get(swigCPtr, this); + } + + public void setReserved(short[] value) { + icsneojavaJNI.neomessage_can_t_reserved_set(swigCPtr, this, value); + } + + public short[] getReserved() { + return icsneojavaJNI.neomessage_can_t_reserved_get(swigCPtr, this); + } + + public neomessage_can_t() { + this(icsneojavaJNI.new_neomessage_can_t(), true); + } + +} diff --git a/examples/java/src/neomessage_eth_t.java b/examples/java/src/neomessage_eth_t.java new file mode 100644 index 0000000..10407ba --- /dev/null +++ b/examples/java/src/neomessage_eth_t.java @@ -0,0 +1,123 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neomessage_eth_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neomessage_eth_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neomessage_eth_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neomessage_eth_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setStatus(neomessage_statusbitfield_t value) { + icsneojavaJNI.neomessage_eth_t_status_set(swigCPtr, this, neomessage_statusbitfield_t.getCPtr(value), value); + } + + public neomessage_statusbitfield_t getStatus() { + long cPtr = icsneojavaJNI.neomessage_eth_t_status_get(swigCPtr, this); + return (cPtr == 0) ? null : new neomessage_statusbitfield_t(cPtr, false); + } + + public void setTimestamp(java.math.BigInteger value) { + icsneojavaJNI.neomessage_eth_t_timestamp_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestamp() { + return icsneojavaJNI.neomessage_eth_t_timestamp_get(swigCPtr, this); + } + + public void setTimestampReserved(java.math.BigInteger value) { + icsneojavaJNI.neomessage_eth_t_timestampReserved_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestampReserved() { + return icsneojavaJNI.neomessage_eth_t_timestampReserved_get(swigCPtr, this); + } + + public void setData(byte[] value) { + icsneojavaJNI.neomessage_eth_t_data_set(swigCPtr, this, value); + } + + public byte[] getData() { + return icsneojavaJNI.neomessage_eth_t_data_get(swigCPtr, this); +} + + public void setLength(long value) { + icsneojavaJNI.neomessage_eth_t_length_set(swigCPtr, this, value); + } + + public long getLength() { + return icsneojavaJNI.neomessage_eth_t_length_get(swigCPtr, this); + } + + public void setPreemptionFlags(short value) { + icsneojavaJNI.neomessage_eth_t_preemptionFlags_set(swigCPtr, this, value); + } + + public short getPreemptionFlags() { + return icsneojavaJNI.neomessage_eth_t_preemptionFlags_get(swigCPtr, this); + } + + public void setReservedHeader(short[] value) { + icsneojavaJNI.neomessage_eth_t_reservedHeader_set(swigCPtr, this, value); + } + + public short[] getReservedHeader() { + return icsneojavaJNI.neomessage_eth_t_reservedHeader_get(swigCPtr, this); + } + + public void setNetid(int value) { + icsneojavaJNI.neomessage_eth_t_netid_set(swigCPtr, this, value); + } + + public int getNetid() { + return icsneojavaJNI.neomessage_eth_t_netid_get(swigCPtr, this); + } + + public void setType(short value) { + icsneojavaJNI.neomessage_eth_t_type_set(swigCPtr, this, value); + } + + public short getType() { + return icsneojavaJNI.neomessage_eth_t_type_get(swigCPtr, this); + } + + public void setReserved(short[] value) { + icsneojavaJNI.neomessage_eth_t_reserved_set(swigCPtr, this, value); + } + + public short[] getReserved() { + return icsneojavaJNI.neomessage_eth_t_reserved_get(swigCPtr, this); + } + + public neomessage_eth_t() { + this(icsneojavaJNI.new_neomessage_eth_t(), true); + } + +} diff --git a/examples/java/src/neomessage_statusbitfield_t.java b/examples/java/src/neomessage_statusbitfield_t.java new file mode 100644 index 0000000..24b6bf6 --- /dev/null +++ b/examples/java/src/neomessage_statusbitfield_t.java @@ -0,0 +1,490 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neomessage_statusbitfield_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neomessage_statusbitfield_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neomessage_statusbitfield_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neomessage_statusbitfield_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setGlobalError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_globalError_set(swigCPtr, this, value); + } + + public long getGlobalError() { + return icsneojavaJNI.neomessage_statusbitfield_t_globalError_get(swigCPtr, this); + } + + public void setTransmitMessage(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_transmitMessage_set(swigCPtr, this, value); + } + + public long getTransmitMessage() { + return icsneojavaJNI.neomessage_statusbitfield_t_transmitMessage_get(swigCPtr, this); + } + + public void setExtendedFrame(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_extendedFrame_set(swigCPtr, this, value); + } + + public long getExtendedFrame() { + return icsneojavaJNI.neomessage_statusbitfield_t_extendedFrame_get(swigCPtr, this); + } + + public void setRemoteFrame(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_remoteFrame_set(swigCPtr, this, value); + } + + public long getRemoteFrame() { + return icsneojavaJNI.neomessage_statusbitfield_t_remoteFrame_get(swigCPtr, this); + } + + public void setCrcError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_crcError_set(swigCPtr, this, value); + } + + public long getCrcError() { + return icsneojavaJNI.neomessage_statusbitfield_t_crcError_get(swigCPtr, this); + } + + public void setCanErrorPassive(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canErrorPassive_set(swigCPtr, this, value); + } + + public long getCanErrorPassive() { + return icsneojavaJNI.neomessage_statusbitfield_t_canErrorPassive_get(swigCPtr, this); + } + + public void setIncompleteFrame(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_incompleteFrame_set(swigCPtr, this, value); + } + + public long getIncompleteFrame() { + return icsneojavaJNI.neomessage_statusbitfield_t_incompleteFrame_get(swigCPtr, this); + } + + public void setLostArbitration(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_lostArbitration_set(swigCPtr, this, value); + } + + public long getLostArbitration() { + return icsneojavaJNI.neomessage_statusbitfield_t_lostArbitration_get(swigCPtr, this); + } + + public void setUndefinedError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_undefinedError_set(swigCPtr, this, value); + } + + public long getUndefinedError() { + return icsneojavaJNI.neomessage_statusbitfield_t_undefinedError_get(swigCPtr, this); + } + + public void setCanBusOff(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canBusOff_set(swigCPtr, this, value); + } + + public long getCanBusOff() { + return icsneojavaJNI.neomessage_statusbitfield_t_canBusOff_get(swigCPtr, this); + } + + public void setCanErrorWarning(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canErrorWarning_set(swigCPtr, this, value); + } + + public long getCanErrorWarning() { + return icsneojavaJNI.neomessage_statusbitfield_t_canErrorWarning_get(swigCPtr, this); + } + + public void setCanBusShortedPlus(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canBusShortedPlus_set(swigCPtr, this, value); + } + + public long getCanBusShortedPlus() { + return icsneojavaJNI.neomessage_statusbitfield_t_canBusShortedPlus_get(swigCPtr, this); + } + + public void setCanBusShortedGround(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canBusShortedGround_set(swigCPtr, this, value); + } + + public long getCanBusShortedGround() { + return icsneojavaJNI.neomessage_statusbitfield_t_canBusShortedGround_get(swigCPtr, this); + } + + public void setChecksumError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_checksumError_set(swigCPtr, this, value); + } + + public long getChecksumError() { + return icsneojavaJNI.neomessage_statusbitfield_t_checksumError_get(swigCPtr, this); + } + + public void setBadMessageBitTimeError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_badMessageBitTimeError_set(swigCPtr, this, value); + } + + public long getBadMessageBitTimeError() { + return icsneojavaJNI.neomessage_statusbitfield_t_badMessageBitTimeError_get(swigCPtr, this); + } + + public void setIfrData(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_ifrData_set(swigCPtr, this, value); + } + + public long getIfrData() { + return icsneojavaJNI.neomessage_statusbitfield_t_ifrData_get(swigCPtr, this); + } + + public void setHardwareCommError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_hardwareCommError_set(swigCPtr, this, value); + } + + public long getHardwareCommError() { + return icsneojavaJNI.neomessage_statusbitfield_t_hardwareCommError_get(swigCPtr, this); + } + + public void setExpectedLengthError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_expectedLengthError_set(swigCPtr, this, value); + } + + public long getExpectedLengthError() { + return icsneojavaJNI.neomessage_statusbitfield_t_expectedLengthError_get(swigCPtr, this); + } + + public void setIncomingNoMatch(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_incomingNoMatch_set(swigCPtr, this, value); + } + + public long getIncomingNoMatch() { + return icsneojavaJNI.neomessage_statusbitfield_t_incomingNoMatch_get(swigCPtr, this); + } + + public void setStatusBreak(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_statusBreak_set(swigCPtr, this, value); + } + + public long getStatusBreak() { + return icsneojavaJNI.neomessage_statusbitfield_t_statusBreak_get(swigCPtr, this); + } + + public void setAvsiRecOverflow(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_avsiRecOverflow_set(swigCPtr, this, value); + } + + public long getAvsiRecOverflow() { + return icsneojavaJNI.neomessage_statusbitfield_t_avsiRecOverflow_get(swigCPtr, this); + } + + public void setTestTrigger(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_testTrigger_set(swigCPtr, this, value); + } + + public long getTestTrigger() { + return icsneojavaJNI.neomessage_statusbitfield_t_testTrigger_get(swigCPtr, this); + } + + public void setAudioComment(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_audioComment_set(swigCPtr, this, value); + } + + public long getAudioComment() { + return icsneojavaJNI.neomessage_statusbitfield_t_audioComment_get(swigCPtr, this); + } + + public void setGpsData(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_gpsData_set(swigCPtr, this, value); + } + + public long getGpsData() { + return icsneojavaJNI.neomessage_statusbitfield_t_gpsData_get(swigCPtr, this); + } + + public void setAnalogDigitalInput(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_analogDigitalInput_set(swigCPtr, this, value); + } + + public long getAnalogDigitalInput() { + return icsneojavaJNI.neomessage_statusbitfield_t_analogDigitalInput_get(swigCPtr, this); + } + + public void setTextComment(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_textComment_set(swigCPtr, this, value); + } + + public long getTextComment() { + return icsneojavaJNI.neomessage_statusbitfield_t_textComment_get(swigCPtr, this); + } + + public void setNetworkMessageType(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_networkMessageType_set(swigCPtr, this, value); + } + + public long getNetworkMessageType() { + return icsneojavaJNI.neomessage_statusbitfield_t_networkMessageType_get(swigCPtr, this); + } + + public void setVsiTXUnderrun(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_vsiTXUnderrun_set(swigCPtr, this, value); + } + + public long getVsiTXUnderrun() { + return icsneojavaJNI.neomessage_statusbitfield_t_vsiTXUnderrun_get(swigCPtr, this); + } + + public void setVsiIFRCRCBit(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_vsiIFRCRCBit_set(swigCPtr, this, value); + } + + public long getVsiIFRCRCBit() { + return icsneojavaJNI.neomessage_statusbitfield_t_vsiIFRCRCBit_get(swigCPtr, this); + } + + public void setInitMessage(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_initMessage_set(swigCPtr, this, value); + } + + public long getInitMessage() { + return icsneojavaJNI.neomessage_statusbitfield_t_initMessage_get(swigCPtr, this); + } + + public void setFlexraySecondStartupFrame(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_flexraySecondStartupFrame_set(swigCPtr, this, value); + } + + public long getFlexraySecondStartupFrame() { + return icsneojavaJNI.neomessage_statusbitfield_t_flexraySecondStartupFrame_get(swigCPtr, this); + } + + public void setExtended(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_extended_set(swigCPtr, this, value); + } + + public long getExtended() { + return icsneojavaJNI.neomessage_statusbitfield_t_extended_get(swigCPtr, this); + } + + public void setHasValue(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_hasValue_set(swigCPtr, this, value); + } + + public long getHasValue() { + return icsneojavaJNI.neomessage_statusbitfield_t_hasValue_get(swigCPtr, this); + } + + public void setValueIsBoolean(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_valueIsBoolean_set(swigCPtr, this, value); + } + + public long getValueIsBoolean() { + return icsneojavaJNI.neomessage_statusbitfield_t_valueIsBoolean_get(swigCPtr, this); + } + + public void setHighVoltage(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_highVoltage_set(swigCPtr, this, value); + } + + public long getHighVoltage() { + return icsneojavaJNI.neomessage_statusbitfield_t_highVoltage_get(swigCPtr, this); + } + + public void setLongMessage(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_longMessage_set(swigCPtr, this, value); + } + + public long getLongMessage() { + return icsneojavaJNI.neomessage_statusbitfield_t_longMessage_get(swigCPtr, this); + } + + public void setGlobalChange(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_globalChange_set(swigCPtr, this, value); + } + + public long getGlobalChange() { + return icsneojavaJNI.neomessage_statusbitfield_t_globalChange_get(swigCPtr, this); + } + + public void setErrorFrame(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_errorFrame_set(swigCPtr, this, value); + } + + public long getErrorFrame() { + return icsneojavaJNI.neomessage_statusbitfield_t_errorFrame_get(swigCPtr, this); + } + + public void setEndOfLongMessage(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_endOfLongMessage_set(swigCPtr, this, value); + } + + public long getEndOfLongMessage() { + return icsneojavaJNI.neomessage_statusbitfield_t_endOfLongMessage_get(swigCPtr, this); + } + + public void setLinErrorRXBreakNotZero(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXBreakNotZero_set(swigCPtr, this, value); + } + + public long getLinErrorRXBreakNotZero() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXBreakNotZero_get(swigCPtr, this); + } + + public void setLinErrorRXBreakTooShort(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXBreakTooShort_set(swigCPtr, this, value); + } + + public long getLinErrorRXBreakTooShort() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXBreakTooShort_get(swigCPtr, this); + } + + public void setLinErrorRXSyncNot55(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXSyncNot55_set(swigCPtr, this, value); + } + + public long getLinErrorRXSyncNot55() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXSyncNot55_get(swigCPtr, this); + } + + public void setLinErrorRXDataGreaterEight(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXDataGreaterEight_set(swigCPtr, this, value); + } + + public long getLinErrorRXDataGreaterEight() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorRXDataGreaterEight_get(swigCPtr, this); + } + + public void setLinErrorTXRXMismatch(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorTXRXMismatch_set(swigCPtr, this, value); + } + + public long getLinErrorTXRXMismatch() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorTXRXMismatch_get(swigCPtr, this); + } + + public void setLinErrorMessageIDParity(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linErrorMessageIDParity_set(swigCPtr, this, value); + } + + public long getLinErrorMessageIDParity() { + return icsneojavaJNI.neomessage_statusbitfield_t_linErrorMessageIDParity_get(swigCPtr, this); + } + + public void setLinSyncFrameError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linSyncFrameError_set(swigCPtr, this, value); + } + + public long getLinSyncFrameError() { + return icsneojavaJNI.neomessage_statusbitfield_t_linSyncFrameError_get(swigCPtr, this); + } + + public void setLinIDFrameError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linIDFrameError_set(swigCPtr, this, value); + } + + public long getLinIDFrameError() { + return icsneojavaJNI.neomessage_statusbitfield_t_linIDFrameError_get(swigCPtr, this); + } + + public void setLinSlaveByteError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linSlaveByteError_set(swigCPtr, this, value); + } + + public long getLinSlaveByteError() { + return icsneojavaJNI.neomessage_statusbitfield_t_linSlaveByteError_get(swigCPtr, this); + } + + public void setRxTimeoutError(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_rxTimeoutError_set(swigCPtr, this, value); + } + + public long getRxTimeoutError() { + return icsneojavaJNI.neomessage_statusbitfield_t_rxTimeoutError_get(swigCPtr, this); + } + + public void setLinNoSlaveData(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_linNoSlaveData_set(swigCPtr, this, value); + } + + public long getLinNoSlaveData() { + return icsneojavaJNI.neomessage_statusbitfield_t_linNoSlaveData_get(swigCPtr, this); + } + + public void setCanfdESI(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canfdESI_set(swigCPtr, this, value); + } + + public long getCanfdESI() { + return icsneojavaJNI.neomessage_statusbitfield_t_canfdESI_get(swigCPtr, this); + } + + public void setCanfdIDE(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canfdIDE_set(swigCPtr, this, value); + } + + public long getCanfdIDE() { + return icsneojavaJNI.neomessage_statusbitfield_t_canfdIDE_get(swigCPtr, this); + } + + public void setCanfdRTR(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canfdRTR_set(swigCPtr, this, value); + } + + public long getCanfdRTR() { + return icsneojavaJNI.neomessage_statusbitfield_t_canfdRTR_get(swigCPtr, this); + } + + public void setCanfdFDF(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canfdFDF_set(swigCPtr, this, value); + } + + public long getCanfdFDF() { + return icsneojavaJNI.neomessage_statusbitfield_t_canfdFDF_get(swigCPtr, this); + } + + public void setCanfdBRS(long value) { + icsneojavaJNI.neomessage_statusbitfield_t_canfdBRS_set(swigCPtr, this, value); + } + + public long getCanfdBRS() { + return icsneojavaJNI.neomessage_statusbitfield_t_canfdBRS_get(swigCPtr, this); + } + + public void setStatusBitfield(long[] value) { + icsneojavaJNI.neomessage_statusbitfield_t_statusBitfield_set(swigCPtr, this, value); + } + + public long[] getStatusBitfield() { + return icsneojavaJNI.neomessage_statusbitfield_t_statusBitfield_get(swigCPtr, this); + } + + public neomessage_statusbitfield_t() { + this(icsneojavaJNI.new_neomessage_statusbitfield_t(), true); + } + +} diff --git a/examples/java/src/neomessage_t.java b/examples/java/src/neomessage_t.java new file mode 100644 index 0000000..e4cde3c --- /dev/null +++ b/examples/java/src/neomessage_t.java @@ -0,0 +1,115 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neomessage_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neomessage_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neomessage_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neomessage_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setStatus(neomessage_statusbitfield_t value) { + icsneojavaJNI.neomessage_t_status_set(swigCPtr, this, neomessage_statusbitfield_t.getCPtr(value), value); + } + + public neomessage_statusbitfield_t getStatus() { + long cPtr = icsneojavaJNI.neomessage_t_status_get(swigCPtr, this); + return (cPtr == 0) ? null : new neomessage_statusbitfield_t(cPtr, false); + } + + public void setTimestamp(java.math.BigInteger value) { + icsneojavaJNI.neomessage_t_timestamp_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestamp() { + return icsneojavaJNI.neomessage_t_timestamp_get(swigCPtr, this); + } + + public void setTimestampReserved(java.math.BigInteger value) { + icsneojavaJNI.neomessage_t_timestampReserved_set(swigCPtr, this, value); + } + + public java.math.BigInteger getTimestampReserved() { + return icsneojavaJNI.neomessage_t_timestampReserved_get(swigCPtr, this); + } + + public void setData(byte[] value) { + icsneojavaJNI.neomessage_t_data_set(swigCPtr, this, value); + } + + public byte[] getData() { + return icsneojavaJNI.neomessage_t_data_get(swigCPtr, this); +} + + public void setLength(long value) { + icsneojavaJNI.neomessage_t_length_set(swigCPtr, this, value); + } + + public long getLength() { + return icsneojavaJNI.neomessage_t_length_get(swigCPtr, this); + } + + public void setHeader(short[] value) { + icsneojavaJNI.neomessage_t_header_set(swigCPtr, this, value); + } + + public short[] getHeader() { + return icsneojavaJNI.neomessage_t_header_get(swigCPtr, this); + } + + public void setNetid(int value) { + icsneojavaJNI.neomessage_t_netid_set(swigCPtr, this, value); + } + + public int getNetid() { + return icsneojavaJNI.neomessage_t_netid_get(swigCPtr, this); + } + + public void setType(short value) { + icsneojavaJNI.neomessage_t_type_set(swigCPtr, this, value); + } + + public short getType() { + return icsneojavaJNI.neomessage_t_type_get(swigCPtr, this); + } + + public void setReserved(short[] value) { + icsneojavaJNI.neomessage_t_reserved_set(swigCPtr, this, value); + } + + public short[] getReserved() { + return icsneojavaJNI.neomessage_t_reserved_get(swigCPtr, this); + } + + public neomessage_t() { + this(icsneojavaJNI.new_neomessage_t(), true); + } + +} diff --git a/examples/java/src/neoversion_t.java b/examples/java/src/neoversion_t.java new file mode 100644 index 0000000..aa1d656 --- /dev/null +++ b/examples/java/src/neoversion_t.java @@ -0,0 +1,98 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.0 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + + +public class neoversion_t { + private transient long swigCPtr; + protected transient boolean swigCMemOwn; + + protected neoversion_t(long cPtr, boolean cMemoryOwn) { + swigCMemOwn = cMemoryOwn; + swigCPtr = cPtr; + } + + protected static long getCPtr(neoversion_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } + + @SuppressWarnings("deprecation") + protected void finalize() { + delete(); + } + + public synchronized void delete() { + if (swigCPtr != 0) { + if (swigCMemOwn) { + swigCMemOwn = false; + icsneojavaJNI.delete_neoversion_t(swigCPtr); + } + swigCPtr = 0; + } + } + + public void setMajor(int value) { + icsneojavaJNI.neoversion_t_major_set(swigCPtr, this, value); + } + + public int getMajor() { + return icsneojavaJNI.neoversion_t_major_get(swigCPtr, this); + } + + public void setMinor(int value) { + icsneojavaJNI.neoversion_t_minor_set(swigCPtr, this, value); + } + + public int getMinor() { + return icsneojavaJNI.neoversion_t_minor_get(swigCPtr, this); + } + + public void setPatch(int value) { + icsneojavaJNI.neoversion_t_patch_set(swigCPtr, this, value); + } + + public int getPatch() { + return icsneojavaJNI.neoversion_t_patch_get(swigCPtr, this); + } + + public void setMetadata(String value) { + icsneojavaJNI.neoversion_t_metadata_set(swigCPtr, this, value); + } + + public String getMetadata() { + return icsneojavaJNI.neoversion_t_metadata_get(swigCPtr, this); + } + + public void setBuildBranch(String value) { + icsneojavaJNI.neoversion_t_buildBranch_set(swigCPtr, this, value); + } + + public String getBuildBranch() { + return icsneojavaJNI.neoversion_t_buildBranch_get(swigCPtr, this); + } + + public void setBuildTag(String value) { + icsneojavaJNI.neoversion_t_buildTag_set(swigCPtr, this, value); + } + + public String getBuildTag() { + return icsneojavaJNI.neoversion_t_buildTag_get(swigCPtr, this); + } + + public void setReserved(String value) { + icsneojavaJNI.neoversion_t_reserved_set(swigCPtr, this, value); + } + + public String getReserved() { + return icsneojavaJNI.neoversion_t_reserved_get(swigCPtr, this); + } + + public neoversion_t() { + this(icsneojavaJNI.new_neoversion_t(), true); + } + +}