commit ffb481f4e04d573cfd08ec0300d018acbd68b1b9
Author: David Sorber <david.sorber@gmail.com>
Date:   Wed Sep 5 19:13:16 2018 -0400

    Move includes to source file and add forward declarations in their place
    so that the packjpg.h header can be used externally.

diff --git a/software/libpackjpg/lib_src/packjpg.cpp b/software/libpackjpg/lib_src/packjpg.cpp
index b44279d..2806667 100644
--- a/software/libpackjpg/lib_src/packjpg.cpp
+++ b/software/libpackjpg/lib_src/packjpg.cpp
@@ -279,6 +279,11 @@ packJPG by Matthias Stirner, 01/2016
 #include <stdexcept>
 #include <vector>
 
+#include "bitops.h"
+#include "aricoder.h"
+#include "pjpgtbl.h"
+#include "dct8x8.h"
+
 #include "packjpg.h"
 
 
diff --git a/software/libpackjpg/lib_src/packjpg.h b/software/libpackjpg/lib_src/packjpg.h
index fad9c2e..818663a 100644
--- a/software/libpackjpg/lib_src/packjpg.h
+++ b/software/libpackjpg/lib_src/packjpg.h
@@ -1,17 +1,21 @@
 #ifndef PACKJPG_H
 #define PACKJPG_H
 
-#include "bitops.h"
-#include "aricoder.h"
-#include "pjpgtbl.h"
-#include "dct8x8.h"
-
 #define MEM_ERRMSG  "out of memory error"
 #define FRD_ERRMSG  "could not read file / file not found: %s"
 #define FWR_ERRMSG  "could not write file / file write-protected: %s"
 #define MSG_SIZE    128
 #define BARLEN      36
 
+// Forward declarations -- real includes are in the source file so we can use 
+//                         this header externally
+class ArithmeticDecoder;
+class ArithmeticEncoder;
+class BitReader;
+class BitWriter;
+class Reader;
+class Writer;
+
 /* -----------------------------------------------
     struct declarations
     ----------------------------------------------- */
