Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

FP.C File Reference

#include <Basics.H>
#include <FS.H>
#include <VestaLog.H>
#include <Recovery.H>
#include "FP.H"
#include "Poly.H"
#include "ByteModTable.H"

Go to the source code of this file.

Defines

#define INLINE_POLYINC
#define UNROLL_LOOP
#define ORDER_WORD_BYTES(p_x)   Basics::swab64(p_x)

Functions

void FP::Tag::Init (const char *s, int len) throw ()
FP::TagFP::Tag::Extend (const char *s, int len) throw ()
FP::TagFP::Tag::Extend (char c) throw ()
void FP::Tag::ExtendRaw (RawFP &fp, const char *s, int len) throw ()
void FP::Tag::ExtendRaw (RawFP &fp, char c) throw ()
Word FP::Tag::Hash () const throw ()
void FP::Tag::ToBytes (unsigned char *buffer) const throw ()
void FP::Tag::FromBytes (const unsigned char *buffer) throw ()
bool FP::Tag::operator== (const FP::Tag &other) const throw ()
bool FP::Tag::operator!= (const FP::Tag &other) const throw ()
void FP::Tag::Print (ostream &os, const char *word_separator) const throw ()
int Compare (const FP::Tag &fp1, const FP::Tag &fp2) throw ()
void FP::Tag::Permute (const RawFP &f) throw ()
void FP::Tag::Unpermute (RawFP &res) const throw ()
void FP::List::Log (VestaLog &log) const throw (VestaLog::Error)
void FP::List::Recover (RecoveryReader &rd) throw (VestaLog::Error, VestaLog::Eof)
void FP::List::Write (ostream &ofs) const throw (FS::Failure)
void FP::List::Read (istream &ifs) throw (FS::EndOfFile, FS::Failure)
void FP::List::Send (SRPC &srpc) const throw (SRPC::failure)
void FP::List::Recv (SRPC &srpc) throw (SRPC::failure)
void Indent (ostream &os, int indent) throw ()
void FP::List::Print (ostream &os, int indent) const throw ()
void FP::FileContents (istream &ifs, FP::Tag &fp) throw (FS::Failure)

Variables

const int WordSize = sizeof(Word)
const int WordBits = WordSize * 8
const Word A [2][2]
const Word B [2][2]
const unsigned char perm [256]
const unsigned char perminv [256]


Define Documentation

#define INLINE_POLYINC
 

Definition at line 38 of file FP.C.

#define ORDER_WORD_BYTES p_x   )     Basics::swab64(p_x)
 

Definition at line 52 of file FP.C.

#define UNROLL_LOOP
 

Definition at line 42 of file FP.C.


Function Documentation

int Compare const FP::Tag fp1,
const FP::Tag fp2
throw ()
 

Definition at line 363 of file FP.C.

References FP::WordCnt.

Referenced by SPKFile::LookupCFPInSortedListV1(), and SMultiPKFile::SeekInSortedListV1().

void FP::FileContents istream &  ifs,
FP::Tag fp
throw (FS::Failure)
 

Definition at line 547 of file FP.C.

void FP::List::Log VestaLog log  )  const throw (VestaLog::Error)
 

Definition at line 465 of file FP.C.

void FP::List::Print ostream &  os,
int  indent
const throw ()
 

Definition at line 532 of file FP.C.

References Indent().

void FP::List::Read istream &  ifs  )  throw (FS::EndOfFile, FS::Failure)
 

Definition at line 495 of file FP.C.

References NEW_PTRFREE_ARRAY, and FS::Read().

void FP::List::Recover RecoveryReader rd  )  throw (VestaLog::Error, VestaLog::Eof)
 

Definition at line 473 of file FP.C.

References NEW_PTRFREE_ARRAY.

void FP::List::Recv SRPC srpc  )  throw (SRPC::failure)
 

Definition at line 517 of file FP.C.

References NEW_PTRFREE_ARRAY.

void FP::List::Send SRPC srpc  )  const throw (SRPC::failure)
 

Definition at line 508 of file FP.C.

void FP::List::Write ostream &  ofs  )  const throw (FS::Failure)
 

Definition at line 487 of file FP.C.

References FS::Write().

FP::Tag& FP::Tag::Extend char  c  )  throw ()
 

Definition at line 281 of file FP.C.

References RawFP.

FP::Tag& FP::Tag::Extend const char *  s,
int  len
throw ()
 

Definition at line 271 of file FP.C.

References RawFP.

void FP::Tag::ExtendRaw RawFP fp,
char  c
throw ()
 

Definition at line 297 of file FP.C.

void FP::Tag::ExtendRaw RawFP fp,
const char *  s,
int  len
throw ()
 

Definition at line 290 of file FP.C.

void FP::Tag::FromBytes const unsigned char *  buffer  )  throw ()
 

Definition at line 322 of file FP.C.

References FP::ByteCnt, WordBits, and FP::WordCnt.

Word FP::Tag::Hash  )  const throw ()
 

Definition at line 302 of file FP.C.

References FP::Tag::w, and FP::WordCnt.

void FP::Tag::Init const char *  s,
int  len
throw ()
 

Definition at line 264 of file FP.C.

References POLY_ONE, and RawFP.

bool FP::Tag::operator!= const FP::Tag other  )  const throw ()
 

Definition at line 344 of file FP.C.

References FP::WordCnt.

bool FP::Tag::operator== const FP::Tag other  )  const throw ()
 

Definition at line 336 of file FP.C.

References FP::WordCnt.

void FP::Tag::Permute const RawFP f  )  throw ()
 

Definition at line 434 of file FP.C.

References FP::ByteCnt.

void FP::Tag::Print ostream &  os,
const char *  word_separator
const throw ()
 

Definition at line 352 of file FP.C.

References FP::WordCnt.

void FP::Tag::ToBytes unsigned char *  buffer  )  const throw ()
 

Definition at line 309 of file FP.C.

References FP::ByteCnt, WordBits, and FP::WordCnt.

void FP::Tag::Unpermute RawFP res  )  const throw ()
 

Definition at line 449 of file FP.C.

References B, FP::ByteCnt, and perminv.

void Indent ostream &  os,
int  indent
throw () [inline]
 

Definition at line 527 of file FP.C.


Variable Documentation

const Word A[2][2]
 

Initial value:

 {{CONST_INT_64(0xce36f163f737a677),
              CONST_INT_64(0x431bf4ecc646b337)},
             {CONST_INT_64(0x1960326FA38D04D0),
              CONST_INT_64(0x10155F23A2F024F9)}}

Definition at line 387 of file FP.C.

const Word B[2][2]
 

Initial value:

 {{CONST_INT_64(0x94033a389a279d77),
              CONST_INT_64(0xd79f3b15576598a7)},
             {CONST_INT_64(0x67f2d59b2369b1d0),
              CONST_INT_64(0x63e096e4228c019)}}

Definition at line 391 of file FP.C.

Referenced by FP::Tag::Unpermute().

const unsigned char perm[256]
 

Initial value:

 {89, 171, 235, 183, 176, 181, 91, 54, 49,
    151, 11, 0, 73, 138, 118, 160, 172, 251, 255, 192, 102, 39, 15, 169,
    149, 110, 240, 133, 213, 196, 217, 199, 29, 43, 52, 153, 32, 2, 179,
    6, 211, 165, 161, 224, 194, 209, 8, 93, 197, 162, 207, 229, 83, 247,
    129, 188, 145, 186, 59, 147, 202, 109, 141, 78, 38, 92, 68, 190,
    252, 116, 85, 184, 34, 103, 88, 140, 123, 76, 131, 67, 26, 166, 185,
    63, 90, 86, 5, 246, 58, 238, 231, 232, 241, 106, 7, 225, 75, 45,
    146, 19, 23, 99, 9, 216, 96, 236, 95, 218, 182, 40, 124, 201, 82,
    230, 214, 206, 107, 137, 249, 212, 77, 119, 253, 1, 210, 35, 69,
    167, 79, 4, 198, 180, 226, 122, 128, 244, 163, 250, 121, 55, 135,
    14, 154, 100, 243, 187, 173, 3, 46, 33, 157, 42, 152, 51, 30, 142,
    98, 48, 148, 254, 223, 159, 41, 74, 155, 248, 205, 18, 175, 108, 56,
    228, 195, 17, 237, 104, 62, 47, 12, 72, 158, 25, 134, 234, 239, 242,
    80, 143, 101, 203, 81, 215, 10, 27, 204, 24, 37, 191, 105, 208, 132,
    126, 50, 156, 227, 125, 65, 130, 139, 136, 31, 44, 97, 94, 53, 127,
    233, 221, 84, 117, 220, 219, 200, 164, 120, 20, 113, 22, 168, 66,
    170, 87, 150, 70, 193, 189, 177, 28, 36, 114, 178, 13, 71, 64, 115,
    16, 144, 57, 245, 111, 222, 60, 174, 61, 112, 21}

Definition at line 397 of file FP.C.

const unsigned char perminv[256]
 

Initial value:

 {11, 123, 37, 147, 129, 86, 39, 94, 46, 102, 192, 10,
    178, 241, 141, 22, 245, 173, 167, 99, 225, 255, 227, 100, 195, 181,
    80, 193, 237, 32, 154, 210, 36, 149, 72, 125, 238, 196, 64, 21, 109,
    162, 151, 33, 211, 97, 148, 177, 157, 8, 202, 153, 34, 214, 7, 139,
    170, 247, 88, 58, 251, 253, 176, 83, 243, 206, 229, 79, 66, 126,
    233, 242, 179, 12, 163, 96, 77, 120, 63, 128, 186, 190, 112, 52,
    218, 70, 85, 231, 74, 0, 84, 6, 65, 47, 213, 106, 104, 212, 156,
    101, 143, 188, 20, 73, 175, 198, 93, 116, 169, 61, 25, 249, 254,
    226, 239, 244, 69, 219, 14, 121, 224, 138, 133, 76, 110, 205, 201,
    215, 134, 54, 207, 78, 200, 27, 182, 140, 209, 117, 13, 208, 75, 62,
    155, 187, 246, 56, 98, 59, 158, 24, 232, 9, 152, 35, 142, 164, 203,
    150, 180, 161, 15, 42, 49, 136, 223, 41, 81, 127, 228, 23, 230, 1,
    16, 146, 252, 168, 4, 236, 240, 38, 131, 5, 108, 3, 71, 82, 57, 145,
    55, 235, 67, 197, 19, 234, 44, 172, 29, 48, 130, 31, 222, 111, 60,
    189, 194, 166, 115, 50, 199, 45, 124, 40, 119, 28, 114, 191, 103,
    30, 107, 221, 220, 217, 250, 160, 43, 95, 132, 204, 171, 51, 113,
    90, 91, 216, 183, 2, 105, 174, 89, 184, 26, 92, 185, 144, 135, 248,
    87, 53, 165, 118, 137, 17, 68, 122, 159, 18}

Definition at line 415 of file FP.C.

Referenced by FP::Tag::Unpermute().

const int WordBits = WordSize * 8
 

Definition at line 45 of file FP.C.

const int WordSize = sizeof(Word)
 

Definition at line 44 of file FP.C.


Generated on Mon May 8 00:49:03 2006 for Vesta by  doxygen 1.4.2