On Thursday, July 31, 2014 4:57:28 AM UTC-4, Jing Bai wrote: > > ... > > So I wonder what is the right way to do it. Can I tell cryptoPP to jump > over the big data segment without loading it? > I think you can use Skip() to skip the bytes you are not interested in. I'm not sure if it jumps over a chunk of bytes intelligently.
For the FileSource, make sure pumpAll is false [1]. Then, throttle it into your parser or skip it as desired. > Can I use StringSource with dynamic content and control the "cursor" > inside CryptoPP? > Perhaps, but we'd need to see more details. > Any advice/hint is appreciated. If you have some code segment I can refer > to that would be great. > With large files, you usually use the OS to map a view of the file into memory. On Windows, that's MapViewOfFile [2] and on Linux that's mmap [3]. As the memory is mapped in, wrap it in a StringSource. then use the StringSource's to TransferTo() to move it to the BufferedTransformation that's parsing things. Jeff [1] http://www.cryptopp.com/docs/ref/class_file_source.html [2] http://msdn.microsoft.com/en-us/library/windows/desktop/aa366761%28v=vs.85%29.aspx [3] http://linux.die.net/man/2/mmap -- -- You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to [email protected]. More information about Crypto++ and this group is available at http://www.cryptopp.com. --- You received this message because you are subscribed to the Google Groups "Crypto++ Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
