#include <iostream>
#include <string>
+#include <list>
#include "common.h"
#include "clave.h"
+#include "clave_fija.h"
/* alias para codear menos :) */
BTree (const std::string &filename, unsigned int block_size, bool create_new_file = false);
~BTree ();
- void AddKey (Clave &k);
- void DelKey (Clave &k);
+ void AddKey (const Clave &k);
+ void DelKey (const Clave &k);
private:
- void write_tree_header ();
- void write_block (uchar *block, uint num);
+ void WriteFileHeader ();
+ void WriteBlock (uchar *block, uint num);
uchar *ReadBlock (uint num);
void ReadNodoHeader (uchar *node, BTreeNodeHeader *header);
void WriteNodoHeader (uchar *node, BTreeNodeHeader *header);
+ std::list<Clave *> ReadKeys (uchar *node, BTreeNodeHeader &node_header);
+ void WriteKeys (uchar *node, BTreeNodeHeader &node_header, std::list<Clave *> &keys);
+
std::string filename;
BTreeFileHeader header;