-/**
- * \brief Calculate sum of all fragments length and return total
- * @return Total size of JPEG fragments length
- */
-size_t JPEGFragmentsInfo::GetFragmentsLength()
-{
- // Loop on the fragment[s] to get total length
- size_t totalLength = 0;
- JPEGFragmentsList::const_iterator it;
- for( it = Fragments.begin();
- it != Fragments.end();
- ++it )
- {
- totalLength += (*it)->GetLength();
- }
- return totalLength;
-}
-
-/**
- * \brief Read the all the JPEG Fragment into the input buffer
- */
-void JPEGFragmentsInfo::ReadAllFragments(std::ifstream *fp, JOCTET *buffer )
-{
- JOCTET *p = buffer;
-
- // Loop on the fragment[s]
- JPEGFragmentsList::const_iterator it;
- for( it = Fragments.begin();
- it != Fragments.end();
- ++it )
- {
- fp->seekg( (*it)->GetOffset(), std::ios::beg);
- size_t len = (*it)->GetLength();
- fp->read((char *)p,len);
- p += len;
- }
-
-}
-
-void JPEGFragmentsInfo::DecompressJPEGFramesFromFile(std::ifstream *fp, uint8_t *buffer, int nBits, int numBytes, int length)
-{
- // Pointer to the Raw image
- uint8_t *localRaw = buffer;
-
- // Loop on the fragment[s]
- JPEGFragmentsList::const_iterator it;
- for( it = Fragments.begin();
- it != Fragments.end();
- ++it )
- {
- //(*it)->pimage = localRaw;
- (*it)->DecompressJPEGFramesFromFile(fp, localRaw, nBits, StateSuspension);
- // update pointer to image after some scanlines read:
- localRaw = (*it)->GetImage();
- // Advance to next free location in Raw
- // for next fragment decompression (if any)
-
- //localRaw += length * numBytes;
- //std::cerr << "Used to increment by: " << length * numBytes << std::endl;
- }
-}
-
-void JPEGFragmentsInfo::AddFragment(JPEGFragment *fragment)
-{
- Fragments.push_back(fragment);
-}
-