GithubHelp home page GithubHelp logo

akr8527 / fme-dotnetsdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tracasa/fme-dotnetsdk

0.0 0.0 0.0 906 KB

DotNet SDK to execute .NET modules in FME Workbench workflows

License: MIT License

C++ 71.66% C 0.34% Objective-C 0.45% C# 27.55%

fme-dotnetsdk's Introduction

FME-DotNetSDK

DotNet SDK enables to execute .NET modules in FME Workbench workflows.

The FME-DotNet SDK provides a C++/CLI DLL to develop FME transformers for the FME platform using .NET code. You can easily develop any .NET assembly in order to implement your own specific funcionality. These assemblies can be integrated in FME Workbench workflows as usual, and by using any combination of them.

If you need to use the Microsoft .NET platform, or develop fast FME Transformers (The .NET assemblies run much faster than equivalent python-based FME Transformers), this is your SDK!

The C++/CLI DLL provides a set of classes, to reference in your own .NET assembly, which you can use to read and create the features managed in the current running FME workflow. You can read all attributes of the features from input data sources and write new features to output as you need. These classes act as a simple wrapper from original C++ classes in the FME Plug-in SDK that FME plaftorm provides. This SDK has been succesfully tested for 2015, 2016 and 2017 versions and both x86 and x64 architectures.

You have to create two components, the .NET assembly, of course, and its FME transformer definition file (.FMX) to describe your new Custom Transformer.

How to build

  1. Download and install the FME Plug-in SDK.
  2. Set the environment variable FME_HOME to the location of your FME installation with installed FME SDK.
  3. Open the solution file in root folder and build your desired architecture (x86 or x64).

The C++/CLI project defines an additional include directory to folder where the FME Plug-in SDK is located. If the build fails check whether you followed step 2.

Additional include directories

If you don't want to build the SDK, you can copy the desired binary from Redist folder.

How to deploy

Copy the FMEDotNetWrapperFactory.dll file to your FME plugins folder (e.g. %PROGRAMFILES%\FME\FME2017\plugins). Now, you can create, execute and debug your own Custom Transformer with .NET code!

How to develop

The SDK provides some .NET Custom Transformer samples for you can learn to use it.

  • HelloWorld: A very simple HelloWorld Custom Transformer. It only reads all attributes from input features, and then returns them to output.
  • DotNetCaller: Provides a Custom Transformer to execute .NET modules using the SDK. It allows to configure the .NET assembly to run and the parameters to inject.
  • SingleTester: Implements a new Tester Transformer using .NET. It is much faster than other equivalent Transformers.

fme-dotnetsdk's People

Contributors

ahuarte47 avatar realvictorprm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.