package org.corpus_tools.graphannis.info;

import org.bytedeco.javacpp.annotation.Namespace;
import org.bytedeco.javacpp.annotation.Platform;
import org.bytedeco.javacpp.annotation.Properties;
import org.bytedeco.javacpp.tools.Info;
import org.bytedeco.javacpp.tools.InfoMap;
import org.bytedeco.javacpp.tools.InfoMapper;

@Namespace("annis::api")
@Properties(target="org.corpus_tools.graphannis.API",
    value={@Platform(
        include={
          "annis/api/corpusstoragemanager.h", 
          "annis/api/admin.h",
          "annis/api/graphupdate.h"}, 
        link={"re2" ,"boost_system", "boost_filesystem", "boost_thread", "humblelogging", "annis"}
        ),
        @Platform(value = "windows",
		  link={"re2", "humblelogging", "annis"}
		)})
public class AnnisApiInfo implements InfoMapper
{
  @Override
  public void map(InfoMap infoMap)
  {
	  infoMap.put(new Info("std::vector<std::string>").pointerTypes("StringVector").define());
    infoMap.put(new Info("annis::Init").skip());
    infoMap.put(new Info("std::uint32_t").valueTypes("long"));
    infoMap.put(new Info("std::uint64_t").valueTypes("long"));
    infoMap.put(new Info("hash<annis::Annotation>").skip());
    infoMap.put(new Info("annis::api::GraphUpdate::getLastConsistentChangeID").skip());
    infoMap.put(new Info("std::vector<annis::api::UpdateEvent>").pointerTypes("UpdateEventList").define());
    infoMap.put(new Info("annis::api::GraphUpdate::getDiffs").skip());
  }

}

@@ -359,17 +359,19 @@
 s(target
-=
+ = 
 %22org.cor
@@ -401,19 +401,26 @@
 I%22,%0A
-  
   value
-=%7B
+ =%0A  %7B%0A    
 @Pla
@@ -436,22 +436,26 @@
     
- 
- 
 include
+ 
 =
-%7B
 %0A  
+    %7B%0A
     
@@ -493,20 +493,17 @@
 ager.h%22,
- %0A  
+%0A
         
@@ -527,26 +527,24 @@
 h%22,%0A        
- 
- 
 %22annis/api/g
@@ -560,33 +560,54 @@
 e.h%22
-%7D, %0A        link=%7B
+%0A      %7D,%0A      link =%0A      %7B%0A        
 %22re2%22
- 
 ,
+ 
 %22boo
@@ -682,25 +682,29 @@
 nis%22
-%7D
 %0A     
+ %7D%0A
    
+ 
 )
-,
 %0A    
+,%0A
     
@@ -736,22 +736,210 @@
 s%22,%0A
-%09%09  link=%7B%22re2
+      link =%0A      %7B%0A        %22re2%22, %22humblelogging%22, %22annis%22%0A      %7D%0A    ),%0A    @Platform(value = %22macosx%22,%0A      link =%0A      %7B%0A        %22re2%22, %22boost_system-mt%22, %22boost_filesystem-mt%22, %22boost_thread-mt
 %22, %22
@@ -965,13 +965,25 @@
 nis%22
-%7D%0A%09%09)
+%0A      %7D%0A    )%0A  
 %7D)%0Ap
@@ -1031,16 +1031,17 @@
 apper%0A%7B%0A
+%0A
   @Overr
@@ -1087,9 +1087,10 @@
   %7B%0A
-%09
+  
   in

Use boost with "-mt" suffix on MacOS.