MCPcopy Create free account
hub / github.com/TombEngine/TombEngine / operator ^

Method operator ^

TombEngine/Specific/Structures/BitField.cpp:358–379  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

356 }
357
358 BitField BitField::operator ^(const BitField& bitField) const
359 {
360 auto chunks = std::vector<ChunkType>(std::max(_chunks.size(), bitField.GetChunks().size()));
361
362 for (unsigned int chunkID = 0; chunkID < chunks.size(); chunkID++)
363 {
364 if (chunkID < _chunks.size() && chunkID < bitField.GetChunks().size())
365 {
366 chunks[chunkID] = _chunks[chunkID] ^ bitField.GetChunks()[chunkID];
367 }
368 else if (chunkID < _chunks.size())
369 {
370 chunks[chunkID] = _chunks[chunkID];
371 }
372 else if (chunkID < bitField.GetChunks().size())
373 {
374 chunks[chunkID] = bitField.GetChunks()[chunkID];
375 }
376 }
377
378 return BitField(chunks, std::max(_size, bitField.GetSize()));
379 }
380
381 BitField BitField::operator ~() const
382 {

Callers

nothing calls this directly

Calls 3

BitFieldClass · 0.85
sizeMethod · 0.45
GetSizeMethod · 0.45

Tested by

no test coverage detected