STFishFinder API
API version 0.0.0, Documentation version 3 -PRELIMINARY-
Wrappers
To accommodate a wide variety of platforms, the STFishFinder API is written in C++11. For universal compatibility, all public interfaces of the API use simple types, C-style pointer references, and types provided by the API library. C++ exceptions are caught within the API functions, then translated and returned as error codes.
In order to provide a complete set of APIs for a given platform, it is necessary to augment the STFishFinder API with a wrapper layer that:
is written in the predominant language for the given platform,
hides the STFishFinder API behind a thin layer that translates its native C++-based interface into one that employs types and conventions appropriate to the given platform, and
provides connective functionality to certain system libraries provided in the given platform.
For example:
for iOS, an Objective-C++ wrapper is provided that uses the Cocoa frameworks for connectivity to Wi-Fi services. The wrapper translates STFishFinder error codes to NSError objects.
in Android, the wrapper shall be written in Java, and use the Android SDK. The STFishFinder API shall be built using the Android NDK.
in Windows, the STFishFinder API shall be built as a native static library. The wrapper shall be written in managed C++/CLI, and uses the .NET Framework to provide connectivity to Wi-Fi or SerialPort interfaces.
The following sections discuss the Fish Finder API wrappers for various platforms: