Skip to content
README.md 7.39 KiB
Newer Older
RF60X-SDK a Software Development Kit that allows specialists to create their own software for working with laser scanners RF60X (RF603,RF603HS, RF603B) series manufactured by RIFTEK LLC.
The RF60X-SDK consists of two parts:
- RF60X-CORE - the main library («Core») with a basic set of functions and types for working with laser scanners of the RF60X series. The library is written in the C programming language in accordance with the C99 standard (ISO/IEC 9899:1999) and is crossplatform. To use this library, it is necessary to implement platform-dependent functions (working with memory, working with the network, input/output functions).
- RF60X-WRAPPERS - «wrapper»-libraries, in which platform-dependent «Core» functions for a specific platform are already implemented. The use of wrapper libraries simplifies the process of developing applications in the following programming languages: C++, С#, LabVew. The wrapper for .Net is written using the C++/CLI programming language from Microsoft.



### GETTING STARTED
Developers who want to use ready-made RF60X-SDK libraries when creating their own applications for working with laser scanners of the RF60X series can download the latest libraries (download the RF60X-SDK libraries for C, C++, C#), as well as see examples of their use (see Examples for C/C++, Examples for C#).
Developers who prefer to compile RF60X-SDK libraries from sources, the manual contains instructions for downloading sources (see Download project) and installing the necessary software.
Download project
For developers who want to download the library from source using the Git-client, follow these instructions:
1. Install the git-client on your local computer (if not already installed):
- On Linux, use the terminal command: sudo apt install git 
- On MacOS, use the terminal command: brew install git 
- For other platforms see git installation documentation.
1. Open a command prompt/terminal on your computer:
<!-- - On Linux, click on the launchpad and look for «terminal» terminal 
- In OS X, press commandspace and find «terminal» terminal -->
- On Windows, click the Start menu and find the «command line» cmd. 
2. Download the project:

```bash
git clone https://corp.riftek.com/gitlab/rfsdk60x/sdk/rf60x-sdk.git
cd RF60X-SDK
```
##### 3. Select the right SDK version:
* For work with RF60X scanners:
```bash
git submodule update --init --recursive
```
We recommend to use a git client for downloading and Qt Creator for project building 

### Running SDK examples
Here a basic example how to use method for searching RF60X devices in different languages by different ways.\
You can create a new project yourself or you can just open an existing project example and build it.

#### Running a C/C++ example
##### 1) Open and compile examples project in **Qt Creator**:  
*  Load the CMakeLists.txt file from the **example/Cpp/RF60X_UART_Measure** or another example
folder via **File > Open File or Project** (Select the CMakeLists.txt file)
*  Select compiler (MinGW, MSVC2017 or higher, Clang, etc..) and click **Configure Project**
*  Compile and Run it
##### 2) Create project and compile examples in **Visual studio 2017 and higher**:  
*  Being in the folder **eexample/Cpp/RF60X_UART_Measure** or another example enter the following command 
into the console (terminal):  
```bash
mkdir build
cd build
cmake ..
```
*  Open the resulting RF60X.sln solution in Visual Studio
*  Compile and Run it

#### Running a C# example
##### Open and compile examples project in **Visual Studio 2017 or higher**:  
*  Open **RF60X_UART_Measure.csproj** from the **example/DotNet/RF60X_UART_Measure**  or another example folder with Visual Studio
*  Select **x64 Debug** or **x64 Release** target platform
*  Add the **rf60XsdkNet.dll** C# WRAPPER library to project's **references** 
*  Copy the **rf60Xcore.dll** (see RF60X CORE table from [RF60X-SDK libraries](#https://corp.riftek.com/gitlab/rfsdk60x/sdk/rf60x-sdk) link) into the path of the project executable (**../bin/x64/Debug/** or **../bin/x64/Release/**)
*  Compile project

## COMPILING RF60X-SDK
### CORE LIBRARY
RF60XX CORE is the main library with basic functionality for work with scanners and platform dependent methods (such as memory, network, output/input methods, etc.) requiring initialization.
This library was written in C programming language in accordance with C99 Sdandart (ISO/IEC 9899:1999).

RF60X CORE can be built on the console or in an IDE.\
Firstly, you should download the project (if you have already done it, skip next commands)

```bash
git clone https://corp.riftek.com/gitlab/rfsdk60x/sdk/rf60x-sdk.git
cd RF60X-SDK
```
* For work with RF60X scanners:
```bash
git submodule update --init --recursive
```
> for more information about project downloading steps, see an [Download project](#download-project)

#### CMake
To build the code:

```bash
cd rf60Xcore
mkdir build
cd build
cmake ..
cmake --build .
```

#### Qt Creator
To build the code:
*  Load the CMakeLists.txt file from the **rf60Xcore** folder via 
**File > Open File or Project** (Select the CMakeLists.txt file)
*  Select compiler (MinGW, MSVC2017 or higher, Clang, etc..) and click **Configure Project**
*  Open **Build Settings** and check ***install*** target for **Build Steps** 
*  Compile project

#### Visual Studio
To build the code:

```bash
cd rf60Xcore
mkdir build
cd build
cmake ..
```
*  Open rf60Xcore.sln with Visual Studio
*  Compile

### RF60X WRAPPER LIBRARIES
Wrappers are help to make programs in different languages and for different platforms using the rf60Xcore library easier.

#### C++ WRAPPER
This project is a C++ library that simplifies the integration of C++ 
applications with following scanner series: 
*  RF60x

RF60X SDK (C++) can be built on the console or in an IDE.\
Firstly, you should download the project (if you have already done it, skip next commands)
```bash
git clone https://corp.riftek.com/gitlab/rfsdk60x/sdk/rf60x-sdk.git
cd RF60X-SDK
```
* For work with RF60X scanners:
```bash
git submodule update --init --recursive
```
> for more information about project downloading steps, see an [Download project](#download-project)

##### CMake
To build the С++ wrapper:
```bash
cd rf60Xsdk/Cpp/rf60Xsdk
mkdir build
cd build
cmake ..
cmake --build . 
```

##### Qt Creator
To build the code:
*  Load the CMakeLists.txt file from the **rf60x-sdk/wrappers/Cpp/rf60Xsdk** folder via 
**File > Open File or Project** (Select the CMakeLists.txt file)
*  Select compiler (MinGW, MSVC2017 or higher, Clang, etc..) and click **Configure Project**
*  Compile project

##### Visual Studio
To build the code:
```bash
cd rf60x-sdk/wrappers/Cpp/rf60Xsdk
mkdir build
cd build
cmake ..
```
*  Open rf60Xsdk.sln with Visual Studio
*  Compile

#### .NET WRAPPER
This project is a .NET library, written in C# language, that simplifies the integration of C#, 
Visual Basic .NET, C++/CLI and JScript .NET applications with following scanner series: 
*  RF60X

RF60X SDK (C#) can be built in an Visual Studio IDE.\
Firstly, you should download the project (if you have already done it, skip next commands)

```bash
git clone https://corp.riftek.com/gitlab/rfsdk60x/sdk/rf60x-sdk.git
cd RF60X-SDK
```
* For work with RF60X scanners:
```bash
git submodule update --init --recursive
```
```
> for more information about project downloading steps, see an [Download project](#download-project)

##### Visual Studio
To build the code:

*  Open rf60Xsdk.sln from the **RF60X-SDK/wrappers/DotNet/rf60Xsdk** folder with Visual Studio
*  Compile