---
name: "__gnu_parallel::_LoserTreeUnguardedBase"
section: "3cxx"
platform: "linux"
package: "libstdc++-12-doc"
version: "12.4.0-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_parallel::_LoserTreeUnguardedBase/3cxx"
---

# \_\_gnu\_parallel::\_LoserTreeUnguardedBase(3cxx)

Base class for unguarded \_LoserTree implementation.

## NAME

\_\_gnu\_parallel::\_LoserTreeUnguardedBase\< \_Tp, \_Compare \> - Base class for unguarded \_LoserTree implementation.

## SYNOPSIS

`#include <losertree.h>`

Inherited by **\_\_gnu\_parallel::\_LoserTreeUnguarded\< \_\_stable, \_Tp, \_Compare \>**, and **\_\_gnu\_parallel::\_LoserTreeUnguarded\< false, \_Tp, \_Compare \>**.

### Public Member Functions

**\_LoserTreeUnguardedBase** (unsigned int \_\_k, const \_Tp &\_\_sentinel, \_Compare \_\_comp=**std::less**\< \_Tp \>())\
 int **\_\_get\_min\_source** ()\
 void **\_\_insert\_start** (const \_Tp &\_\_key, int \_\_source, bool)\

### Protected Attributes

\_Compare **\_M\_comp**\
 unsigned int **\_M\_ik**\
 unsigned int **\_M\_k**\
 \_Loser \* **\_M\_losers**\
 unsigned int **\_M\_offset**\

## Detailed Description

### template\<typename \_Tp, typename \_Compare\>

class \_\_gnu\_parallel::\_LoserTreeUnguardedBase\< \_Tp, \_Compare \>"Base class for unguarded \_LoserTree implementation.

The whole element is copied into the tree structure.

No guarding is done, therefore not a single input sequence must run empty. Unused \_\_sequence heads are marked with a sentinel which is \> all elements that are to be merged.

This is a very fast variant.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
