Crypto++ 8.2 Free C++ class library of cryptographic schemes

Public Member Functions | List of all members
PutBlock< T, B, A > Class Template Reference

Access a block of memory. More...

## Public Member Functions
| PutBlock (const void *xorBlock, void *block)
| Construct a PutBlock. More...
template<class U >
PutBlock< T, B, A > & | operator() (U x)
| Access a block of memory. More...

## Detailed Description

### template<class T, class B, bool A = false>
class PutBlock< T, B, A >

Access a block of memory.

Template Parameters

  T | class or type
  B | enumeration indicating endianness
  A | flag indicating alignment

PutBlock() provides alternate write access to a block of memory. The enumeration B is BigEndian or LittleEndian. The flag A indicates if the memory block is aligned for class or type T. Repeatedly applying operator() results in advancing in the block of memory.

An example of writing two word32 values from a block of memory is shown below. After the code executes, the byte buffer will be `{0,1,2,3,4,5,6,7}`.

      word32 w1=0x03020100, w2=0x07060504;
      byte buffer[8];
      PutBlock<word32, LittleEndian> block(NULLPTR, buffer);
      block(w1)(w2);

Definition at line 2550 of file misc.h.

## Constructor & Destructor Documentation

## ◆ PutBlock()

template<class T, class B, bool A = false>

PutBlock< T, B, A >::PutBlock | ( | const void * | xorBlock,
|  | void * | block
| ) |  |
| inline

Construct a PutBlock.

Parameters

  block | the memory block
  xorBlock | optional mask

Definition at line 2556 of file misc.h.

## Member Function Documentation

## ◆ operator()()

template<class T, class B, bool A = false>
template<class U >

PutBlock<T, B, A>& PutBlock< T, B, A >::operator() | ( | U | x | ) |
| inline

Access a block of memory.

Template Parameters

  U | class or type

Parameters

  x | the value to write

Returns
  pointer to the remainder of the block after writing x

Definition at line 2564 of file misc.h.

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

- misc.h