#include <LODConstraint.h>
◆ LODConstraint() [1/2]
dnac::LODConstraint::LODConstraint |
( |
std::uint16_t |
maxLOD, |
|
|
std::uint16_t |
minLOD, |
|
|
MemoryResource * |
memRes |
|
) |
| |
21 assert(maxLOD <= minLOD);
22 lods.resize(
static_cast<std::size_t
>(minLOD - maxLOD) + 1ul);
23 std::iota(
lods.begin(),
lods.end(), maxLOD);
24}
Vector< std::uint16_t > lods
Definition: dnacalib/dna/LODConstraint.h:25
References lods.
◆ LODConstraint() [2/2]
26 :
lods{lods_.begin(), lods_.end(),
27 memRes} {
29}
References lods.
◆ applyTo() [1/2]
void dnac::LODConstraint::applyTo |
( |
DynArray< std::uint16_t > & |
unconstrainedLODs | ) |
const |
61 {
63}
impl::LUTFilter< TLookUpTable, impl::LUTStrategy::ByPosition > byPosition(const TLookUpTable &lookUpTable)
Definition: utils/Extd.h:107
void filter(std::vector< T, Args... > &source, Predicate pred)
Definition: utils/Extd.h:55
References extd::byPosition(), extd::filter(), and lods.
◆ applyTo() [2/2]
void dnac::LODConstraint::applyTo |
( |
Vector< std::uint16_t > & |
unconstrainedLODs | ) |
const |
◆ clampTo()
void dnac::LODConstraint::clampTo |
( |
std::uint16_t |
lodCount | ) |
|
◆ getLODCount()
std::uint16_t dnac::LODConstraint::getLODCount |
( |
| ) |
const |
47 {
48 return static_cast<std::uint16_t
>(
lods.size());
49}
References lods.
◆ getMaxLOD()
std::uint16_t dnac::LODConstraint::getMaxLOD |
( |
| ) |
const |
39 {
40 return (
lods.empty() ? std::uint16_t{} :
lods.front());
41}
References lods.
◆ getMinLOD()
std::uint16_t dnac::LODConstraint::getMinLOD |
( |
| ) |
const |
43 {
44 return (
lods.empty() ? std::uint16_t{} :
lods.back());
45}
References lods.
◆ hasImpactOn()
bool dnac::LODConstraint::hasImpactOn |
( |
std::uint16_t |
lodCount | ) |
const |
31 {
32 std::uint16_t lod = {};
33 for (
auto it =
lods.begin(); (it !=
lods.end()) && (lod < lodCount); ++it) {
34 lod = static_cast<std::uint16_t>(lod + static_cast<std::uint16_t>(lod == *it));
35 }
36 return (lod != lodCount);
37}
References lods.
◆ lods
Vector<std::uint16_t> dnac::LODConstraint::lods |
|
private |
The documentation for this class was generated from the following files: