# PMessageDigest Class Reference

`#include <cypher.h>`

Inheritance diagram for PMessageDigest:

List of all members.

## Public Member Functions

| PMessageDigest ()
| Create a new message digestor.
virtual void | Start ()=0
| Begin a Message Digest operation, initialising the object instance.
virtual void | Process (const void *dataBlock, PINDEX length)
virtual void | Process (const PString &str)
| Incorporate the specified data into the message digest.
virtual void | Process (const char *cstr)
| Incorporate the specified data into the message digest.
virtual void | Process (const PBYTEArray &data)
| Incorporate the specified data into the message digest.
virtual PString | CompleteDigest ()
| Complete the message digest and return the magic number result.
virtual void | CompleteDigest (Result &result)

## Protected Member Functions

virtual void | InternalProcess (const void *dataBlock, PINDEX length)=0
virtual void | InternalCompleteDigest (Result &result)=0

## Classes

class | Result

## Constructor & Destructor Documentation

PMessageDigest::PMessageDigest | ( |  | ) |

Create a new message digestor.

## Member Function Documentation

virtual void PMessageDigest::CompleteDigest | ( | Result & | result | ) | `[virtual]`

Parameters:

  result | The resultant 128 bit MD5 code

virtual PString PMessageDigest::CompleteDigest | ( |  | ) | `[virtual]`

Complete the message digest and return the magic number result.

The parameterless form returns the MD5 code as a Base64 string.

Returns:
  Base64 encoded MD5 code for the processed data.

virtual void PMessageDigest::InternalCompleteDigest | ( | Result & | result | ) | `[protected, pure virtual]`

Parameters:

  result | The resultant 128 bit MD5 code

virtual void PMessageDigest::InternalProcess | ( | const void * | dataBlock,
|  | PINDEX | length |
| ) |  |  | `[protected, pure virtual]`

Parameters:

  dataBlock | Pointer to data to be part of the MD5
  length | Length of the data block.

Implemented in PMessageDigest5.

virtual void PMessageDigest::Process | ( | const PBYTEArray & | data | ) | `[virtual]`

Incorporate the specified data into the message digest.

Parameters:

  data | Data block to be part of the MD5

virtual void PMessageDigest::Process | ( | const char * | cstr | ) | `[virtual]`

Incorporate the specified data into the message digest.

Parameters:

  cstr | C String to be part of the MD5

virtual void PMessageDigest::Process | ( | const PString & | str | ) | `[virtual]`

Incorporate the specified data into the message digest.

Parameters:

  str | String to be part of the MD5

virtual void PMessageDigest::Process | ( | const void * | dataBlock,
|  | PINDEX | length |
| ) |  |  | `[virtual]`

Parameters:

  dataBlock | Pointer to data to be part of the MD5
  length | Length of the data block.

virtual void PMessageDigest::Start | ( |  | ) | `[pure virtual]`

Begin a Message Digest operation, initialising the object instance.

Implemented in PMessageDigest5.

The documentation for this class was generated from the following file:

- cypher.h