]> git.llucax.com Git - z.facultad/75.52/treemulator.git/blobdiff - src/clave_variable.h
Recuperacion de nodos eliminados.
[z.facultad/75.52/treemulator.git] / src / clave_variable.h
index 75cecfd3a5157caa4569bc7f25b1dc2e571704ef..b92448b333c42d6e34dadccf06863a343956064b 100644 (file)
@@ -8,25 +8,31 @@
 
 /** Representa una clave de longitud variable.
  *
- *  \TODO Usar abreviaciones
+ *  \todo Usar abreviaciones
  */
 class ClaveVariable : public Clave {
        public :
                ClaveVariable (uchar *n);
-               ClaveVariable (const std::string &s);
+               ClaveVariable (const std::string &s, uint bd);
                virtual ~ClaveVariable () {}
 
                uint Size () const;
                uchar *ToArray () const;
+               uchar *ToRaw (uint &size) const;
                Clave *Clone () const;
 
+               bool Abrev (ClaveVariable *c);
+               bool DesAbrev (ClaveVariable *c);
+
                virtual bool operator < (const Clave &c) const;
                virtual bool operator == (const Clave &c) const;
                virtual operator std::string () const {
                        return data;
                }
        private:
+               std::string abreviar(std::string &primera, std::string &actual, int &iguales);
                std::string data;
+               std::string raw_data;
 };
 
 #endif