From 411acbaa4a1d217e731d3df0b189445117be3b26 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Tue, 19 Mar 2019 15:41:08 -0400 Subject: Add in progress UI API headers --- ui/uitypes.h | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 ui/uitypes.h (limited to 'ui/uitypes.h') diff --git a/ui/uitypes.h b/ui/uitypes.h new file mode 100644 index 00000000..1ebdc373 --- /dev/null +++ b/ui/uitypes.h @@ -0,0 +1,56 @@ +#pragma once + +#include "binaryninjaapi.h" + +#ifdef __GNUC__ +# ifdef BINARYNINJAUI_LIBRARY +# define BINARYNINJAUIAPI __attribute__((visibility("default"))) +# else +# define BINARYNINJAUIAPI +# endif +#else +#ifdef _MSC_VER +# ifdef BINARYNINJAUI_LIBRARY +# define BINARYNINJAUIAPI __declspec(dllexport) +# else +# define BINARYNINJAUIAPI __declspec(dllimport) +# endif +#else +#define BINARYNINJAUIAPI +#endif +#endif + +#ifdef BINARYNINJAUI_PYTHON_BINDINGS +#include "bindings.h" +#endif + +// The Python bindings generator does not recognize automatic conversion of API types into their +// Python equivalents if using templates (Ref<*>), so we typedef all API references so that +// the Python bindings can be easily generated for them. +typedef BinaryNinja::Ref ArchitectureRef; +typedef BinaryNinja::Ref BackgroundTaskRef; +typedef BinaryNinja::Ref BasicBlockRef; +typedef BinaryNinja::Ref BinaryDataRef; +typedef BinaryNinja::Ref BinaryViewRef; +typedef BinaryNinja::Ref BinaryViewTypeRef; +typedef BinaryNinja::Ref DisassemblySettingsRef; +typedef BinaryNinja::Ref DownloadProviderRef; +typedef BinaryNinja::Ref FileMetadataRef; +typedef BinaryNinja::Ref FlowGraphRef; +typedef BinaryNinja::Ref FlowGraphLayoutRequestRef; +typedef BinaryNinja::Ref FlowGraphNodeRef; +typedef BinaryNinja::Ref FunctionRef; +typedef BinaryNinja::Ref LowLevelILFunctionRef; +typedef BinaryNinja::Ref MainThreadActionRef; +typedef BinaryNinja::Ref MediumLevelILFunctionRef; +typedef BinaryNinja::Ref PlatformRef; +typedef BinaryNinja::Ref ReportCollectionRef; +typedef BinaryNinja::Ref ScriptingInstanceRef; +typedef BinaryNinja::Ref ScriptingProviderRef; +typedef BinaryNinja::Ref SectionRef; +typedef BinaryNinja::Ref SegmentRef; +typedef BinaryNinja::Ref StructureRef; +typedef BinaryNinja::Ref SymbolRef; +typedef BinaryNinja::Ref TemporaryFileRef; +typedef BinaryNinja::Ref TransformRef; +typedef BinaryNinja::Ref TypeRef; -- cgit v1.3.1