private void print_file(RECORD_TYPE type, DEDUP_SORT_ORDER order, string fpath, string txtfile)
        {
            Item record = null;

            switch (type)
            {
            case RECORD_TYPE.FINGERPRINT_RECORD_CLOG:
                record = new fingerprintCLOG(order);
                break;

            case RECORD_TYPE.FINGERPRINT_RECORD_FPDB:
                record = new fingerprintFPDB(order);
                break;

            case RECORD_TYPE.FINGERPRINT_RECORD_MSG:
                record = new fingerprintDMSG(order);
                break;
            }

            FileStream   fsrc  = new FileStream(fpath, FileMode.Open);
            FileStream   fdest = new FileStream(txtfile, FileMode.Create);
            StreamWriter log   = new StreamWriter(fdest);

            int count = (int)(fsrc.Length / record.get_size());

            byte[] buffer = new byte[record.get_size()];

            for (int i = 0; i < count; i++)
            {
                fsrc.Read(buffer, 0, record.get_size());
                record.parse_bytes(buffer, 0);
                log.WriteLine(record.get_string_rep());
            }
            log.Flush();
            log.Close();
            fsrc.Close();
        }
        /*
         * Send the messages and get work done.
         */
        private void ACTUAL_DEDUPE(string script)
        {
            FileStream fsrc   = new FileStream(script, FileMode.Open);
            Item       record = new fingerprintDMSG(DEDUP_SORT_ORDER.UNDEFINED_PLACEHOLDER);

            int count = (int)(fsrc.Length / record.get_size());

            byte[] buffer = new byte[record.get_size()];

            for (int i = 0; i < count; i++)
            {
                fsrc.Read(buffer, 0, record.get_size());
                record.parse_bytes(buffer, 0);

                fingerprintDMSG msg = (fingerprintDMSG)record;
                //REDDY.ptrIFSDMux.DoDedupe(msg.fsid, msg.inode, msg.fbn, msg.sourcedbn, msg.destinationdbn);
                MSG_AGGREGATE(msg);

                int progress = (i * 100) / count;
                ui.Update_DedupeUI(m_stage, progress);
            }
            MSG_AGGREGATE(null);
            fsrc.Close();
        }