public function addCounter(
        string $name,
        int $counter
    ) {
        if (0 == $counter) {
            return;
        }

        $counterInstance = Counter::createByActiveElements(
            $name,
            $counter,
            $this->activeElements
        );

        if (!$counterInstance instanceof Counter) {
            return;
        }

        /*
         * The entry is used.
         * This block should take in account when the filter is of type
         * levels, but only levels.
         */
        if (
            $this->applicationType & Filter::MUST_ALL_WITH_LEVELS &&
            $this->applicationType & ~Filter::MUST_ALL &&
            $counterInstance->isUsed()
        ) {
            $this->activeElements[$counterInstance->getId()] = $counterInstance;
            $this->highestActiveLevel = max(
                $counterInstance->getLevel(),
                $this->highestActiveLevel
            );

            return;
        }

        $this->counters[$counterInstance->getId()] = $counterInstance;
    }