#include <BitVector.h>
◆ BitVector() [1/6]
| inet::BitVector::BitVector |
( |
| ) |
|
17 bytes.push_back(uint8_t(0));
◆ BitVector() [2/6]
| inet::BitVector::BitVector |
( |
const char * |
bits | ) |
|
◆ BitVector() [3/6]
| inet::BitVector::BitVector |
( |
unsigned int |
bits | ) |
|
◆ BitVector() [4/6]
| inet::BitVector::BitVector |
( |
unsigned int |
bits, |
|
|
unsigned int |
fixedSize |
|
) |
| |
◆ BitVector() [5/6]
| inet::BitVector::BitVector |
( |
const BitVector & |
other | ) |
|
|
inline |
◆ BitVector() [6/6]
| inet::BitVector::BitVector |
( |
const std::vector< uint8_t > & |
bytes | ) |
|
|
inline |
◆ appendBit() [1/2]
| void inet::BitVector::appendBit |
( |
bool |
value | ) |
|
Referenced by appendBit(), appendByte(), BitVector(), copy(), inet::physicallayer::Ieee80211LayeredOfdmTransmitter::createBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createCompleteBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createDataFieldBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createSignalFieldBitModel(), inet::physicallayer::ApskDemodulator::demodulate(), inet::physicallayer::Ieee80211OfdmDemodulator::demodulate(), inet::physicallayer::Ieee80211OfdmDemodulator::demodulateSymbol(), inet::physicallayer::ConvolutionalCoder::depuncturing(), inet::physicallayer::Ieee80211OfdmEncoder::encode(), inet::physicallayer::ApskEncoder::encode(), inet::physicallayer::ConvolutionalCoder::encode(), inet::physicallayer::AdditiveScrambler::generateScramblingSequence(), inet::physicallayer::ConvolutionalCoder::getPuncturedIndices(), inet::physicallayer::ConvolutionalCoder::puncturing(), inet::physicallayer::AdditiveScrambler::scramble(), stringToBitVector(), and inet::physicallayer::ConvolutionalCoder::traversePath().
◆ appendBit() [2/2]
| void inet::BitVector::appendBit |
( |
bool |
value, |
|
|
int |
n |
|
) |
| |
◆ appendByte()
| void inet::BitVector::appendByte |
( |
uint8_t |
value | ) |
|
107 for (
unsigned int i = 0; i < 8; i++)
◆ computeHammingDistance()
| int inet::BitVector::computeHammingDistance |
( |
const BitVector & |
u | ) |
const |
163 throw cRuntimeError(
"You can't compute Hamming distance between two vectors with different sizes");
164 int hammingDistance = 0;
165 for (
unsigned int i = 0; i <
getSize(); i++)
166 if (u.getBit(i) !=
getBit(i))
168 return hammingDistance;
◆ containerSize()
| int inet::BitVector::containerSize |
( |
| ) |
const |
|
inlineprivate |
◆ copy()
| void inet::BitVector::copy |
( |
const BitVector & |
other | ) |
|
|
private |
198 for (
unsigned int i = 0; i < other.getSize(); i++)
Referenced by operator=().
◆ getBit()
| bool inet::BitVector::getBit |
( |
int |
pos | ) |
const |
74 throw cRuntimeError(
"Out of range with bit position %d", pos);
Referenced by computeHammingDistance(), copy(), inet::physicallayer::Ieee80211LayeredOfdmTransmitter::createBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createCompleteBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createDataFieldBitModel(), inet::physicallayer::Ieee80211OfdmDecoder::createPacketModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createSignalFieldBitModel(), inet::physicallayer::ApskDecoder::decode(), inet::physicallayer::Ieee80211OfdmInterleaver::deinterleave(), inet::physicallayer::Ieee80211OfdmDemodulator::demodulate(), inet::physicallayer::ConvolutionalCoder::depuncturing(), inet::physicallayer::ConvolutionalCoder::encode(), inet::physicallayer::Ieee80211OfdmDecoder::getSignalFieldLength(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::getSignalFieldLength(), inet::physicallayer::Ieee80211OfdmDecoder::getSignalFieldRate(), inet::physicallayer::ConvolutionalCoder::giveNextOutputSymbol(), inet::physicallayer::Ieee80211OfdmInterleaver::interleave(), inet::physicallayer::ApskModulator::modulate(), inet::physicallayer::Ieee80211OfdmModulator::modulate(), inet::operator<<(), operator==(), inet::ieee80211::QosAckHandler::processReceivedBlockAck(), inet::physicallayer::ConvolutionalCoder::puncturing(), reverseToDecimal(), inet::physicallayer::AdditiveScrambler::scramble(), toDecimal(), toString(), and inet::physicallayer::ConvolutionalCoder::traversePath().
◆ getBytes()
| const std::vector<uint8_t>& inet::BitVector::getBytes |
( |
| ) |
const |
|
inline |
◆ getNumberOfBytes()
| unsigned int inet::BitVector::getNumberOfBytes |
( |
| ) |
const |
|
inline |
45 {
return bytes.size(); }
◆ getSize()
| unsigned int inet::BitVector::getSize |
( |
| ) |
const |
|
inline |
Referenced by BitVector(), inet::physicallayer::LayeredErrorModelBase::computeBitModel(), inet::physicallayer::Ieee80211OfdmErrorModel::computeBitModel(), computeHammingDistance(), copy(), inet::physicallayer::Ieee80211LayeredOfdmTransmitter::createBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createCompleteBitModel(), inet::physicallayer::Ieee80211LayeredOfdmReceiver::createDataFieldBitModel(), inet::physicallayer::Ieee80211OfdmDecoder::createPacketModel(), inet::physicallayer::ApskDecoder::decode(), inet::physicallayer::ConvolutionalCoder::decode(), inet::physicallayer::Ieee80211OfdmInterleaver::deinterleave(), inet::physicallayer::Ieee80211OfdmDemodulator::demodulate(), inet::physicallayer::ConvolutionalCoder::depuncturing(), inet::physicallayer::ConvolutionalCoder::encode(), inet::physicallayer::ConvolutionalCoder::giveNextOutputSymbol(), inet::physicallayer::Ieee80211OfdmInterleaver::interleave(), inet::physicallayer::ApskModulator::modulate(), inet::physicallayer::Ieee80211OfdmModulator::modulate(), operator==(), inet::physicallayer::ConvolutionalCoder::puncturing(), reverseToDecimal(), inet::physicallayer::AdditiveScrambler::scramble(), toDecimal(), toString(), and inet::physicallayer::ConvolutionalCoder::traversePath().
◆ operator!=()
| bool inet::BitVector::operator!= |
( |
const BitVector & |
rhs | ) |
const |
191 return !(rhs == *
this);
◆ operator=()
◆ operator==()
| bool inet::BitVector::operator== |
( |
const BitVector & |
rhs | ) |
const |
181 if (rhs.getSize() !=
getSize())
183 for (
unsigned int i = 0; i <
getSize(); i++)
184 if (
getBit(i) != rhs.getBit(i))
◆ reverseToDecimal()
| unsigned int inet::BitVector::reverseToDecimal |
( |
| ) |
const |
150 unsigned int dec = 0;
151 unsigned int powerOfTwo = 1;
152 for (
int i =
getSize() - 1; i >= 0; i--) {
◆ setBit()
| void inet::BitVector::setBit |
( |
int |
pos, |
|
|
bool |
value |
|
) |
| |
◆ stringToBitVector()
| void inet::BitVector::stringToBitVector |
( |
const char * |
str | ) |
|
|
private |
125 int strSize = strlen(str);
126 for (
int i = 0; i < strSize; i++) {
129 else if (str[i] ==
'0')
132 throw cRuntimeError(
"str must represent a binary number");
Referenced by BitVector().
◆ toDecimal()
| unsigned int inet::BitVector::toDecimal |
( |
| ) |
const |
138 unsigned int dec = 0;
139 unsigned int powerOfTwo = 1;
140 for (
unsigned int i = 0; i <
getSize(); i++) {
◆ toggleBit()
| void inet::BitVector::toggleBit |
( |
int |
pos | ) |
|
◆ toString()
| std::string inet::BitVector::toString |
( |
| ) |
const |
114 for (
unsigned int i = 0; i <
getSize(); i++) {
◆ operator<<
| std::ostream& operator<< |
( |
std::ostream & |
out, |
|
|
const BitVector & |
bitVector |
|
) |
| |
|
friend |
81 if (bitVector.getBit(0))
85 for (
int i = 1; i < bitVector.size; i++) {
86 if (bitVector.getBit(i))
◆ bytes
| std::vector<uint8_t> inet::BitVector::bytes |
|
private |
◆ size
| int inet::BitVector::size |
|
private |
The documentation for this class was generated from the following files: