diff --git a/include/codeMarkerItem.h b/include/codeMarkerItem.h
index 02c353d766b0fb1c18eadf2291d484211af63ef7..c5d23739122aed940fb1ac27c892ee33fb72c4e9 100644
--- a/include/codeMarkerItem.h
+++ b/include/codeMarkerItem.h
@@ -49,16 +49,17 @@ private:
     Vec2F mUlc;  // upper left corner to draw
 
 public:
-    CodeMarkerItem(QWidget *wParent, QGraphicsItem * parent = NULL);
-    QRectF boundingRect() const;
+    CodeMarkerItem(QWidget *wParent, QGraphicsItem * parent = nullptr);
+    QRectF boundingRect() const override;
     void setRect(Vec2F& v);
-    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
+    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override;
     void addDetectedMarkers(std::vector<std::vector<cv::Point2f> > corners, std::vector<int> ids, Vec2F offset = Vec2F(0,0));
     void addRejectedMarkers(std::vector<std::vector<cv::Point2f> > rejected, Vec2F offset = Vec2F(0,0));
     void resetSavedMarkers();
 
 private:
     void drawMarker(const OffsetMarker& currentMarker, int id, const QColor& borderColor, QPainter *painter);
+    static constexpr int numCorners = 4;
 };
 
 #endif
diff --git a/src/codeMarkerItem.cpp b/src/codeMarkerItem.cpp
index 41981d6b61ac14ce8ed3287a0a5261cb0d0cf6ea..7fe31d9d966cdc01c207da8d4dcf5cadcbcc93cc 100644
--- a/src/codeMarkerItem.cpp
+++ b/src/codeMarkerItem.cpp
@@ -129,14 +129,23 @@ void CodeMarkerItem::paint(QPainter *painter, const QStyleOptionGraphicsItem */*
 
 }
 
-inline void CodeMarkerItem::drawMarker(const OffsetMarker& currentMarker, int id, const QColor& borderColor, QPainter *painter)
+/**
+ * @brief Draws a aruco code marker
+ *
+ * Draws a rect with the corners of the marker, the id, and the upper left corner.
+ *
+ * @param currentMarker
+ * @param id
+ * @param borderColor
+ * @param painter
+ */
+void CodeMarkerItem::drawMarker(const OffsetMarker& currentMarker, int id, const QColor& borderColor, QPainter *painter)
 {
     Vec2F offset = currentMarker.offset;
     // draw marker sides
-    for(int j = 0; j < 4; j++) {
+    for(int j = 0; j < numCorners; j++) {
         Vec2F p0 = currentMarker.corners.at(j);
-        Vec2F p1 = currentMarker.corners.at((j + 1) % 4);
-        //                debout << "p0: " << p0 << " p1: " << p1 << endl;
+        Vec2F p1 = currentMarker.corners.at((j + 1) % numCorners);
         painter->setPen(borderColor);
         painter->drawLine((mUlc + p0 + offset).toQPointF(), (mUlc + p1 + offset).toQPointF());
     }
@@ -148,6 +157,15 @@ inline void CodeMarkerItem::drawMarker(const OffsetMarker& currentMarker, int id
     painter->drawRect(QRectF((mUlc + topLeftCorner + offset - Vec2F(3,3)).toQPointF(), QSize(6.0,6.0)));
 }
 
+/**
+ * @brief Adds given markers as detected markers to visualization
+ *
+ * @pre ids[i] is the id of corners[i]
+ *
+ * @param corners corners of the markers
+ * @param ids ids of the detected markers
+ * @param offset offset from marker-coords to recognition ROI
+ */
 void CodeMarkerItem::addDetectedMarkers(vector<vector<Point2f> > corners, vector<int> ids, Vec2F offset /* = (0,0)*/)
 {
     for(std::vector<Point2f> singleMarkerCorners : corners)
@@ -157,6 +175,12 @@ void CodeMarkerItem::addDetectedMarkers(vector<vector<Point2f> > corners, vector
     mIds.insert(mIds.end(), ids.begin(), ids.end());
 }
 
+/**
+ * @brief Adds given markers as rejected markers to visualization
+ *
+ * @param rejected corners of the rejected markers
+ * @param offset offset from marker-coords to recognition ROI
+ */
 void CodeMarkerItem::addRejectedMarkers(vector<vector<Point2f> > rejected, Vec2F offset /* = (0,0)*/)
 {
     for(std::vector<Point2f> singleMarkerCorners : rejected)
@@ -165,6 +189,9 @@ void CodeMarkerItem::addRejectedMarkers(vector<vector<Point2f> > rejected, Vec2F
     }
 }
 
+/**
+ * @brief Resets detected and rejected markers for visualization
+ */
 void CodeMarkerItem::resetSavedMarkers()
 {
     mCorners.clear();