Class Buffer
Buffer armazena o array de bytes original, que pode ser usado para acessar dados de imagem.
Na API Java, você pode obter o buffer de Image e copiar os dados para um array de bytes Java.
Em todas as versões do EasyAR Sense, você pode acessar dados de imagem. Consulte Image.
Buffer
Métodos
wrap
Encapsula um bloco de memória bruta de comprimento especificado. Quando o Buffer é completamente liberado, o callback deleter é chamado para executar o comportamento personalizado de destruição de memória definido pelo usuário. O deleter deve ser seguro para threads.
void easyar_Buffer_wrap(void * ptr, int size, easyar_FunctorOfVoid deleter, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> wrap(void * ptr, int size, std::function<void()> deleter)
public static @Nonnull Buffer wrap(long ptr, int size, @Nonnull FunctorOfVoid deleter)
companion object fun wrap(ptr: Long, size: Int, deleter: FunctorOfVoid): Buffer
+ (easyar_Buffer *)wrap:(void *)ptr size:(int)size deleter:(void (^)())deleter
public static func wrap(_ ptr: OpaquePointer?, _ size: Int32, _ deleter: @escaping () -> Void) -> Buffer
public static Buffer wrap(IntPtr ptr, int size, Action deleter)
Parâmetros
| Nome |
Tipo |
Descrição |
| ptr |
IntPtr |
|
| size |
Int32 |
|
| deleter |
Action |
|
Retorna
create
Cria um Buffer com um comprimento de bytes especificado.
void easyar_Buffer_create(int size, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> create(int size)
public static @Nonnull Buffer create(int size)
companion object fun create(size: Int): Buffer
+ (easyar_Buffer *)create:(int)size
public static func create(_ size: Int32) -> Buffer
public static Buffer create(int size)
Parâmetros
| Nome |
Tipo |
Descrição |
| size |
Int32 |
|
Retorna
data
Retorna o endereço de memória bruta.
void * easyar_Buffer_data(const easyar_Buffer * This)
public func data() -> OpaquePointer?
public virtual IntPtr data()
Retorna
size
Comprimento em bytes do Buffer.
int easyar_Buffer_size(const easyar_Buffer * This)
public func size() -> Int32
public virtual int size()
Retorna
memoryCopy
Copia a memória bruta. Principalmente usado em linguagens ou ambientes onde a manipulação de memória não é perfeita.
void easyar_Buffer_memoryCopy(void * src, void * dest, int length)
static void memoryCopy(void * src, void * dest, int length)
public static void memoryCopy(long src, long dest, int length)
companion object fun memoryCopy(src: Long, dest: Long, length: Int): Unit
+ (void)memoryCopy:(void *)src dest:(void *)dest length:(int)length
public static func memoryCopy(_ src: OpaquePointer?, _ dest: OpaquePointer?, _ length: Int32) -> Void
public static void memoryCopy(IntPtr src, IntPtr dest, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| src |
IntPtr |
|
| dest |
IntPtr |
|
| length |
Int32 |
|
Retorna
tryCopyFrom
Tenta copiar dados de um endereço de memória bruta para o Buffer. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
bool easyar_Buffer_tryCopyFrom(easyar_Buffer * This, void * src, int srcIndex, int index, int length)
bool tryCopyFrom(void * src, int srcIndex, int index, int length)
public boolean tryCopyFrom(long src, int srcIndex, int index, int length)
fun tryCopyFrom(src: Long, srcIndex: Int, index: Int, length: Int): Boolean
- (bool)tryCopyFrom:(void *)src srcIndex:(int)srcIndex index:(int)index length:(int)length
public func tryCopyFrom(_ src: OpaquePointer?, _ srcIndex: Int32, _ index: Int32, _ length: Int32) -> Bool
public virtual bool tryCopyFrom(IntPtr src, int srcIndex, int index, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| src |
IntPtr |
|
| srcIndex |
Int32 |
|
| index |
Int32 |
|
| length |
Int32 |
|
Retorna
tryCopyTo
Tenta copiar dados do Buffer para um endereço de memória bruta. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
bool easyar_Buffer_tryCopyTo(easyar_Buffer * This, int index, void * dest, int destIndex, int length)
bool tryCopyTo(int index, void * dest, int destIndex, int length)
public boolean tryCopyTo(int index, long dest, int destIndex, int length)
fun tryCopyTo(index: Int, dest: Long, destIndex: Int, length: Int): Boolean
- (bool)tryCopyTo:(int)index dest:(void *)dest destIndex:(int)destIndex length:(int)length
public func tryCopyTo(_ index: Int32, _ dest: OpaquePointer?, _ destIndex: Int32, _ length: Int32) -> Bool
public virtual bool tryCopyTo(int index, IntPtr dest, int destIndex, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| index |
Int32 |
|
| dest |
IntPtr |
|
| destIndex |
Int32 |
|
| length |
Int32 |
|
Retorna
partition
Cria um sub-Buffer que referencia o Buffer original. Um Buffer só será liberado após todos os seus sub-Buffers serem liberados.
void easyar_Buffer_partition(easyar_Buffer * This, int index, int length, easyar_Buffer * * Return)
std::shared_ptr<Buffer> partition(int index, int length)
public @Nonnull Buffer partition(int index, int length)
fun partition(index: Int, length: Int): Buffer
- (easyar_Buffer *)partition:(int)index length:(int)length
public func partition(_ index: Int32, _ length: Int32) -> Buffer
public virtual Buffer partition(int index, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| index |
Int32 |
|
| length |
Int32 |
|
Retorna
wrapByteArray
Encapsula um array de bytes.
public static @Nonnull Buffer wrapByteArray(byte @Nonnull[] bytes)
companion object fun wrapByteArray(bytes: Array<Byte>): Buffer
public static Buffer wrapByteArray(byte[] bytes)
Parâmetros
| Nome |
Tipo |
Descrição |
| bytes |
|
|
Retorna
wrapByteArray
Encapsula um array de bytes. Pode-se especificar a posição inicial e o comprimento, pode-se especificar se o Buffer é somente leitura ou leitura/escrita (Buffers somente leitura podem ser liberados mais rapidamente). Pode-se especificar um callback deleter, que é chamado quando o Buffer é completamente liberado para executar o comportamento personalizado de destruição de memória definido pelo usuário. O deleter deve ser seguro para threads.
public static @Nonnull Buffer wrapByteArray(byte @Nonnull[] bytes, int index, int length, boolean readOnly, @Nonnull FunctorOfVoid deleter)
companion object fun wrapByteArray(bytes: Array<Byte>, index: Int, length: Int, readOnly: Boolean, deleter: FunctorOfVoid): Buffer
Parâmetros
| Nome |
Tipo |
Descrição |
| bytes |
|
|
| index |
Int32 |
|
| length |
Int32 |
|
| readOnly |
Boolean |
|
| deleter |
Action |
|
Retorna
wrapByteArray
Encapsula um array de bytes. Pode-se especificar a posição inicial e o comprimento.
public static Buffer wrapByteArray(byte[] bytes, int index, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| bytes |
|
|
| index |
Int32 |
|
| length |
Int32 |
|
Retorna
wrapByteArray
Encapsula um array de bytes. Pode-se especificar a posição inicial e o comprimento. Pode-se especificar um callback deleter, que é chamado quando o Buffer é completamente liberado para executar o comportamento personalizado de destruição de memória definido pelo usuário. O deleter deve ser seguro para threads.
public static Buffer wrapByteArray(byte[] bytes, int index, int length, Action deleter)
Parâmetros
| Nome |
Tipo |
Descrição |
| bytes |
|
|
| index |
Int32 |
|
| length |
Int32 |
|
| deleter |
Action |
|
Retorna
wrapBuffer
Encapsula um java.nio.Buffer.
public static @Nonnull Buffer wrapBuffer(java.nio.@Nonnull Buffer directBuffer)
companion object fun wrapBuffer(directBuffer: java.nio.Buffer): Buffer
Parâmetros
| Nome |
Tipo |
Descrição |
| directBuffer |
|
|
Retorna
wrapBuffer
Encapsula um java.nio.Buffer. Pode-se especificar um callback deleter, que é chamado quando o Buffer é completamente liberado para executar o comportamento personalizado de destruição de memória definido pelo usuário. O deleter deve ser seguro para threads.
public static @Nonnull Buffer wrapBuffer(java.nio.@Nonnull Buffer directBuffer, @Nonnull FunctorOfVoid deleter)
companion object fun wrapBuffer(directBuffer: java.nio.Buffer, deleter: Action): Buffer
Parâmetros
| Nome |
Tipo |
Descrição |
| directBuffer |
|
|
| deleter |
Action |
|
Retorna
copyFromByteArray
Copia dados de um array de bytes para o Buffer. Se a cópia falhar, uma exceção é lançada. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public void copyFromByteArray(byte @Nonnull[] src)
fun copyFromByteArray(src: Array<Byte>): Unit
public void copyFromByteArray(byte[] src)
Parâmetros
copyFromByteArray
Copia dados de um array de bytes para o Buffer. Se a cópia falhar, uma exceção é lançada. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public void copyFromByteArray(byte @Nonnull[] src, int srcIndex, int index, int length)
fun copyFromByteArray(src: Array<Byte>, srcIndex: Int, index: Int, length: Int): Unit
public void copyFromByteArray(byte[] src, int srcIndex, int index, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| src |
|
|
| srcIndex |
Int32 |
|
| index |
Int32 |
|
| length |
Int32 |
|
copyToByteArray
Copia dados do Buffer para um array de bytes. Se a cópia falhar, uma exceção é lançada. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public void copyToByteArray(byte @Nonnull[] dest)
fun copyToByteArray(dest: Array<Byte>): Unit
public void copyToByteArray(byte[] dest)
Parâmetros
copyToByteArray
Copia dados do Buffer para um array de bytes. Se a cópia falhar, uma exceção é lançada. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public void copyToByteArray(int index, byte @Nonnull[] dest, int destIndex, int length)
fun copyToByteArray(index: Int, dest: Array<Byte>, destIndex: Int, length: Int): Unit
public void copyToByteArray(int index, byte[] dest, int destIndex, int length)
Parâmetros
| Nome |
Tipo |
Descrição |
| index |
Int32 |
|
| dest |
|
|
| destIndex |
Int32 |
|
| length |
Int32 |
|
tryCopyFromByteArray
Copia dados de um array de bytes para o Buffer. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public func tryCopyFromByteArray(_ src: [UInt8]) -> Bool
Parâmetros
Retorna
tryCopyFromByteArray
Copia dados de um array de bytes para o Buffer. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public func tryCopyFromByteArray(_ src: [UInt8], _ srcIndex: Int32, _ index: Int32, _ length: Int32) -> Bool
Parâmetros
| Nome |
Tipo |
Descrição |
| src |
|
|
| srcIndex |
Int32 |
|
| index |
Int32 |
|
| length |
Int32 |
|
Retorna
tryCopyToByteArray
Copia dados do Buffer para um array de bytes. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public func tryCopyToByteArray(_ dest: [UInt8]) -> Bool
Parâmetros
Retorna
tryCopyToByteArray
Copia dados do Buffer para um array de bytes. Se a cópia for bem-sucedida, retorna true; caso contrário, retorna false. Os motivos de falha incluem: o intervalo de dados de origem ou destino está fora do intervalo disponível.
public func tryCopyToByteArray(_ index: Int32, _ dest: [UInt8], _ destIndex: Int32, _ length: Int32) -> Bool
Parâmetros
| Nome |
Tipo |
Descrição |
| index |
Int32 |
|
| dest |
|
|
| destIndex |
Int32 |
|
| length |
Int32 |
|
Retorna