All Downloads are FREE. Search and download functionalities are using the official Maven repository.

export.swig.libfmippex.i Maven / Gradle / Ivy

Go to download

This package provides the native dependencies for the FMI++ Java bindings (e.g., Windows DLLs)

The newest version!
// -------------------------------------------------------------------
// Copyright (c) 2013-2017, AIT Austrian Institute of Technology GmbH.
// All rights reserved. See file FMIPP_LICENSE for details.
// -------------------------------------------------------------------

%include std_common.i
%include std_string.i
%include cpointer.i
%pointer_functions(double, double_pointer)
%pointer_functions(int, int_pointer)
%pointer_functions(std::string, string_pointer)
%pointer_functions(char, char_pointer)
%include carrays.i
%array_functions(double, double_array)
%array_functions(int, int_array)
%array_functions(std::string, string_array)
%array_functions(char, char_array)

 //%include 
#define __FMI_DLL


%module fmippex

%{
//#include "common/FMIType.h"
#include "common/fmi_v1.0/fmiModelTypes.h"
#include "common/fmi_v2.0/fmi2ModelTypes.h"
#include "export/include/FMIComponentBackEnd.h"
%}

//%rename(setRealValue) setValue( const std::string&, fmiReal );

#if defined(SWIGPYTHON)
%typemap(out) fmiBoolean {
	if($1)
		$result = (PyObject *)Py_True;
	else
		$result = (PyObject *)Py_False;
	//    Py_CLEAR($1);
    Py_INCREF($result);
 }
%ignore fmiFalse;
%ignore fmiTrue;

%typemap(out) fmi2Boolean {
	if($1)
		$result = (PyObject *)Py_True;
	else
		$result = (PyObject *)Py_False;
	//    Py_CLEAR($1);
    Py_INCREF($result);
 }
%ignore fmi2False;
%ignore fmi2True;
#else
#endif


%ignore initializeRealParameters( const std::vector&, std::vector& );
%ignore initializeIntegerParameters( const std::vector&, std::vector& );
%ignore initializeBooleanParameters( const std::vector&, std::vector& );
%ignore initializeStringParameters( const std::vector&, std::vector& );
%ignore initializeRealInputs( const std::vector&, std::vector& );
%ignore initializeIntegerInputs( const std::vector&, std::vector& );
%ignore initializeBooleanInputs( const std::vector&, std::vector& );
%ignore initializeStringInputs( const std::vector&, std::vector& );
%ignore initializeRealOutputs( const std::vector&, std::vector& );
%ignore initializeIntegerOutputs( const std::vector&, std::vector& );
%ignore initializeBooleanOutputs( const std::vector&, std::vector& );
%ignore initializeStringOutputs( const std::vector&, std::vector& );
%ignore getRealInputs( std::vector& );
%ignore getIntegerInputs( std::vector& );
%ignore getBooleanInputs( std::vector& );
%ignore getStringInputs( std::vector& );
%ignore setRealOutputs( const std::vector& );
%ignore setIntegerOutputs( const std::vector& );
%ignore setBooleanOutputs( const std::vector& );
%ignore setStringOutputs( const std::vector& );


//%include "common/FMIType.h"
//%include "common/fmi_v1.0/fmiModelTypes.h"
%include "common/fmi_v2.0/fmi2ModelTypes.h"
%include "export/include/FMIComponentBackEnd.h"




© 2015 - 2024 Weber Informatics LLC | Privacy Policy