# bm::random_subset< BV > Class Template Reference
[Set algorithms]

`#include <bmrandom.h>`

## Public Member Functions

| random_subset ()
| ~random_subset ()
void | sample (BV &bv_out, const BV &bv_in, unsigned count)
| Get random subset of input vector.

## Detailed Description

### template<class BV>
class bm::random_subset< BV >

Class implements algorithm for random subset generation.

Implemented method tries to be fair, but doesn't guarantee true randomeness.

Performace note: Class holds temporary buffers and variables, so it is recommended to re-use instances over multiple calls.

Examples:

  sample10.cpp.

Definition at line 53 of file bmrandom.h.

## Constructor & Destructor Documentation

template<class BV >

bm::random_subset< BV >::random_subset | ( |  | ) | `[inline]`

Definition at line 115 of file bmrandom.h.

template<class BV >

bm::random_subset< BV >::~random_subset | ( |  | ) | `[inline]`

Definition at line 125 of file bmrandom.h.

## Member Function Documentation

template<class BV >

void bm::random_subset< BV >::sample | ( | BV & | bv_out,
|  | const BV & | bv_in,
|  | unsigned | count |
| ) |  |  | `[inline]`

Get random subset of input vector.

Parameters:

  | bv_out | - destination vector
  | bv_in | - input vector
  | count | - number of bits to pick

Definition at line 134 of file bmrandom.h.

Referenced by main().

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

- bmrandom.h