Interface ShadercIncludeResolveI

  • All Superinterfaces:
    CallbackI, CallbackI.P, Pointer
    All Known Implementing Classes:
    ShadercIncludeResolve
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface ShadercIncludeResolveI
    extends CallbackI.P
    Instances of this interface may be passed to the compile_options_set_include_callbacks function.

    Type

    
     shaderc_include_result * (*) (
         void *user_data,
         char const *requested_source,
         int type,
         char const *requesting_source,
         size_t include_depth
     )
    • Method Detail

      • getSignature

        default java.lang.String getSignature()
        Description copied from interface: CallbackI
        Returns the dyncall signature for this callback function. [INTERNAL API]
        Specified by:
        getSignature in interface CallbackI
        Returns:
        the dyncall signature
      • callback

        default long callback​(long args)
        Description copied from interface: CallbackI.P
        Will be called by native code.
        Specified by:
        callback in interface CallbackI.P
        Parameters:
        args - pointer to a DCArgs iterator
        Returns:
        the value to store to the result DCValue
      • invoke

        long invoke​(long user_data,
                    long requested_source,
                    int type,
                    long requesting_source,
                    long include_depth)
        An includer callback type for mapping an #include request to an include result.

        The user_data parameter specifies the client context. The requested_source parameter specifies the name of the source being requested. The type parameter specifies the kind of inclusion request being made. The requesting_source parameter specifies the name of the source containing the #include request. The includer owns the result object and its contents, and both must remain valid until the release callback is called on the result object.