private void loadSSPage(int PageNo) throws IOException, DBException {
   // LOADs a page into memory:
   xBufferChannel.clear();
   xBufferChannel = bufMngr.getPage(PageNo);
   xBufferChannel.position(Settings.freeOffsetPos); // 5
   freeOffset = xBufferChannel.getInt();
   xBufferChannel.position(Settings.numOfKeysPos);
   numOfKeys = xBufferChannel.getInt();
   unTakenNodes = numOfKeys;
 }
 //    public StructuralSummaryIndex(String indexName,int numOfKeys)
 //    {
 //        //this.qNameList=qNamelist;
 //        //this.nodeList=nodeList;
 //        this.indexName=indexName;
 //        this.numOfKeys=numOfKeys;
 //        logicFileMgr = LogicalFileManager.Instance;
 //        bufMngr = BufferManager.getInstance();
 //        XBufferChannel=new XBufferChannel();//vasl bshe b buf mgr:getfreepage()
 //        XBufferChannel.clear();
 //    }
 public StructuralSummaryIndex(int indexPage, String indexName) throws IOException, DBException {
   // usage: openning of existing SSIndex object.
   this.indexName = indexName;
   this.indexPage = indexPage; // always the same
   this.workingPage = indexPage; // may change
   logicFileMgr = LogicalFileManager.Instance;
   bufMngr = BufferManager.getInstance();
   xBufferChannel = new XBufferChannel(); // new ham lazem nis //vasl bshe b buf mgr:getfreepage()
   // xBufferChannel.clear(); //LaZEM NIs
   xBufferChannel = bufMngr.getPage(indexPage); // may change
   xBufferChannel.position(Settings.freeOffsetPos); // 5
   freeOffset = xBufferChannel.getInt(); // init
   xBufferChannel.position(Settings.numOfKeysPos);
   numOfKeys = xBufferChannel.getInt(); // init
   unTakenNodes = numOfKeys;
 }