Skip navigation links
JNA API 5.3.1
com.sun.jna.win32

Class StdCallFunctionMapper

  • All Implemented Interfaces:
    FunctionMapper


    public class StdCallFunctionMapper
    extends java.lang.Object
    implements FunctionMapper
    Provides mapping from simple method names to w32 stdcall-decorated names where the name suffix is "@" followed by the number of bytes popped by the called function.

    NOTE: if you use custom type mapping for primitive types, you may need to override getArgumentNativeStackSize(Class).

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected int getArgumentNativeStackSize(java.lang.Class<?> cls)
      Override this to handle any custom class mappings.
      java.lang.String getFunctionName(NativeLibrary library, java.lang.reflect.Method method)
      Convert the given Java method into a decorated stdcall name, if possible.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • StdCallFunctionMapper

        public StdCallFunctionMapper()
    • Method Detail

      • getArgumentNativeStackSize

        protected int getArgumentNativeStackSize(java.lang.Class<?> cls)
        Override this to handle any custom class mappings.
        Parameters:
        cls - Java class of a parameter
        Returns:
        number of native bytes used for this class on the stack
      • getFunctionName

        public java.lang.String getFunctionName(NativeLibrary library,
                                                java.lang.reflect.Method method)
        Convert the given Java method into a decorated stdcall name, if possible.
        Specified by:
        getFunctionName in interface FunctionMapper
        Parameters:
        library - The NativeLibrary instance
        method - The invoked Method
        Returns:
        The decorated name
JNA API 5.3.1

Copyright © 2007-2018 Timothy Wall. All Rights Reserved.