X-Git-Url: https://git.llucax.com/z.facultad/75.52/treemulator.git/blobdiff_plain/58f5f2e6ba6f33bc457e98ec883f2834c9a5fe6f..57dbb7df8973a3e0c0c570c1eae9d84802e02bd9:/src/clave.h?ds=sidebyside diff --git a/src/clave.h b/src/clave.h index e609bb0..c0f3a30 100644 --- a/src/clave.h +++ b/src/clave.h @@ -2,23 +2,26 @@ #ifndef _CLAVE_H_ #define _CLAVE_H_ -/* Clave para agregar a un arbol B */ #include "common.h" #include -/** Clave abstracta para manejo de Claves */ +/** Clase abstracta para manejo de Claves */ class Clave { public: virtual ~Clave () {} - /** Retorna el tamaño en bytes que ocupa la clave */ + /** Retorna el tamaño en bytes que ocupa la clave */ virtual uint Size () const = 0; /** Retorna un array de bytes de Size() de longitud. * * El contenido del array es la clave en formato RAW * para guardar en disco. + * + * El array debe ser liberado por el llamador. */ virtual uchar *ToArray () const = 0; + virtual uchar *ToRaw (uint &size) const = 0; + /** Retorna un clon de la clave actual */ virtual Clave *Clone () const = 0;