8 #include "clave_fija.h"
10 /** Dato a guardar en los nodos */
14 BTreeData (uchar *node);
15 BTreeData (Clave *k, uint child);
16 virtual ~BTreeData ();
18 virtual uint Size () const;
19 virtual uchar *ToArray () const;
21 Clave* getClave () { return clave; }
23 bool operator < (const BTreeData &data) const;
24 virtual operator std::string () const {
25 std::string out = (*clave);
27 ss << "(" << out << ") ";
28 ss << "[" << hijo << "]";
37 /** Dato a guardar en las hojas */
38 class BTreeLeafData:public BTreeData {
40 BTreeLeafData (Clave *k) { clave = k; }
41 BTreeLeafData (uchar *node) { clave = new ClaveFija (node); }
42 virtual ~BTreeLeafData ();
44 virtual uint Size () const;
45 virtual uchar *ToArray () const;
46 virtual operator std::string () const {
54 class BTreeChildData:public BTreeData {
56 BTreeChildData (uint child):BTreeData () { hijo = child; }
57 BTreeChildData (uchar *node);
58 virtual ~BTreeChildData ();
60 virtual uint Size () const;
61 virtual uchar *ToArray () const;
62 virtual operator std::string () const {
65 ss << "|" << hijo << "|";