> StringSource src(...); > Base64Decoder b64d(...); > NullFilter null(...); > StreamTransformationFilter stf(...); > StringSync sink(...); > > AttachmentChain c; // theoretical class > c.link(src); > if (srcEncoding == "base64") > c.link(src); > c.link(stf); > c.link(sink); > c..execute(); > > or > AttachmentChain chain(src).link(b64d).link(stf).link(sink).execute(); >
Your link() function appears to be nearly equivalent to Attach(). See http://www.cryptopp.com/docs/ref/class_buffered_transformation.html . > So that these pipelines can be created in code. There seems to be a bias > towards a static pipeline configuration. ( ex: > https://www.cryptopp.com/wiki/Advanced_Encryption_Standard#Encrypting_a_string_using_AES > > ) > > Aside from that the docs don't really cover in a simple way what the > sources are, the intermediate transforms and the outputs. It's be cool to > have some kind of reference (or interactive guide, where you could select > from dropdowns the source, add steps to the pipeline, and select the > destination). > I think the best we have is the inheritance diagrams at from the Manual (linked on the Homepage): Source: http://www.cryptopp.com/docs/ref/class_source.html Filter: http://www.cryptopp.com/docs/ref/class_filter.html Sink: https://www.cryptopp.com/docs/ref/class_sink.html For something more complex, check out the sources for the tests and benchmarks. Folks sometimes complain they are too complex, but they may be what you are looking for :) There may be a way to programmatically set up the pipeline dynamically, but > I haven't seen it yet. Is there a way to more dynamically structure the > pipeline? > If you want to allocate your objects on the stack and use them in a pipeline, then check out Redirector (https://www.cryptopp.com/wiki/Redirector). Otherwise, you can create them dynamically with 'new'. Jeff -- -- You received this message because you are subscribed to the "Crypto++ Users" Google Group. To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com. 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 cryptopp-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.