Class CBuffer

java.lang.Object
com.sun.jna.Structure
org.logolith.kzgo.CBuffer
Direct Known Subclasses:
CBuffer.ByReference, CBuffer.ByValue

public class CBuffer extends com.sun.jna.Structure
JNA Structure mapping for the C buffer struct. struct buffer { unsigned char* data; int len; };
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Marker interface for passing/returning CBuffer struct by reference (pointer).
    static class 
    Marker interface for passing/returning CBuffer struct by value.

    Nested classes/interfaces inherited from class com.sun.jna.Structure

    com.sun.jna.Structure.FieldOrder, com.sun.jna.Structure.StructField
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    com.sun.jna.Pointer
     
    int
     

    Fields inherited from class com.sun.jna.Structure

    ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    CBuffer(com.sun.jna.Pointer data, int len)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Helper to create a ByValue copy for passing to free_buffer
    protected List<String>
     
    byte[]
    Helper method to read bytes from the buffer, handling null pointers.

    Methods inherited from class com.sun.jna.Structure

    allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, cacheTypeInfo, calculateSize, clear, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, getAutoRead, getAutoWrite, getFieldList, getFields, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, hashCode, newInstance, newInstance, read, readField, readField, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setStringEncoding, size, sortFields, toArray, toArray, toString, toString, useMemory, useMemory, write, writeField, writeField, writeField

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • data

      public com.sun.jna.Pointer data
    • len

      public int len
  • Constructor Details

    • CBuffer

      public CBuffer()
    • CBuffer

      public CBuffer(com.sun.jna.Pointer data, int len)
  • Method Details

    • getFieldOrder

      protected List<String> getFieldOrder()
      Overrides:
      getFieldOrder in class com.sun.jna.Structure
    • readBytes

      public byte[] readBytes()
      Helper method to read bytes from the buffer, handling null pointers.
    • asByValue

      public CBuffer.ByValue asByValue()
      Helper to create a ByValue copy for passing to free_buffer