GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - GitMoDu/BitTracker: Bit wise, memory efficient tracker.

BranchesTags
Open more actions menu

Latest commit

 

History

86 Commits
86 Commits

Folders and files

NameName
Last commit message
Last commit date
examples
examples
 
 
src
src
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
library.properties
library.properties
 
 

Repository files navigation

BitTracker

Bit wise, memory efficient tracker.

Pack your indivdual bits as tightly as possible in a byte array, abstracted by the IBitTracker interface, and constructed using the templated class BitTracker.

Bit Tracker Example

Bit Tracker 8

Clear all: [0 0 0 0 0 0 0 0]

Set all: [1 1 1 1 1 1 1 0]

Reading 7 bits took 6 us per bit.

Writing 7 bits took 5 us per bit.

Linear clear walk...

1 bytes for: 7 bits.

[1 1 1 1 1 1 1 0]

[0 1 1 1 1 1 1 0]

[0 0 1 1 1 1 1 0]

[0 0 0 1 1 1 1 0]

[0 0 0 0 1 1 1 0]

[0 0 0 0 0 1 1 0]

[0 0 0 0 0 0 1 0]

[0 0 0 0 0 0 0 0]

... done.

Bit Tracker Template 16 Clear all: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

Set all: [1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

Reading 16 bits took 6 us per bit.

Writing 16 bits took 6 us per bit.

Linear clear walk...

2 bytes for: 16 bits.

[1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

[0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

[0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1]

[0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1]

[0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1]

[0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1]

[0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1]

[0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1]

[0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1]

[0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1]

[0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1]

[0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1]

[0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1]

[0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1]

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1]

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]

[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

... done.

Bit Tracker Template 30

Clear all: [_ _ _ _]

Set all: [# # # #]

Reading 30 bits took 6 us per bit.

Writing 30 bits took 6 us per bit.

Linear clear walk...

4 bytes for: 30 bits.

[# # # #]

[_ # # #]

[_ _ # #]

[_ _ _ #]

[_ _ _ _]

... done.

Bit Tracker Template 63

Clear all: [_ _ _ _ _ _ _ _]

Set all: [# # # # # # # #]

Reading 63 bits took 5 us per bit.

Writing 63 bits took 6 us per bit.

Linear clear walk...

8 bytes for: 63 bits.

[# # # # # # # #]

[_ # # # # # # #]

[_ _ # # # # # #]

[_ _ _ # # # # #]

[_ _ _ _ # # # #]

[_ _ _ _ _ # # #]

[_ _ _ _ _ _ # #]

[_ _ _ _ _ _ _ #]

[_ _ _ _ _ _ _ _]

... done.

Bit Tracker Template 257

Clear all: [_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _]

Set all: [# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

Reading 257 bits took 5 us per bit.

Writing 257 bits took 6 us per bit.

Linear clear walk...

33 bytes for: 257 bits.

[# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ # #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ #]

[_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _]

... done.

Bit Tracker Test Complete

About

Bit wise, memory efficient tracker.

Topics

arduino-librarybit-twiddlinginterfacesoptimized-memorytemplate

Resources

Readme
MIT license
Activity

Stars

0 stars

Watchers

1 watching

Forks

0 forks
Report repository

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.