diff --git a/Doxyfile b/Doxyfile index 2c62f22c..3a75a18e 100644 --- a/Doxyfile +++ b/Doxyfile @@ -1194,8 +1194,9 @@ HTML_COLORSTYLE_GAMMA = 75 # If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML # page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: YES. +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. HTML_TIMESTAMP = YES @@ -2323,7 +2324,7 @@ DIRECTORY_GRAPH = YES # The default value is: png. # This tag requires that the tag HAVE_DOT is set to YES. -DOT_IMAGE_FORMAT = svg +DOT_IMAGE_FORMAT = png # If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to # enable generation of interactive SVG images that allow zooming and panning. diff --git a/doc/examples/pichunkstream.cpp b/doc/examples/pichunkstream.cpp new file mode 100644 index 00000000..ec2048eb --- /dev/null +++ b/doc/examples/pichunkstream.cpp @@ -0,0 +1,49 @@ +#include "pip.h" + +//! [struct] +// Your struct +struct S { + int i; + float f; + PIString s; +}; + +// Operators +PIByteArray & operator <<(PIByteArray & b, const S & s) {b << s.i << s.f << s.s; return b;} +PIByteArray & operator >>(PIByteArray & b, S & s) {b >> s.i >> s.f >> s.s; return b;} +//! [struct] +//! [write] +// Write chunk stream +S s; +s.i = 99; +s.f = 0.01; +s.s = "SSS"; +PIVector f; +f << -1. << 2.5 << 11.; +// write some data to empty stream +PIChunkStream cs; +cs << cs.chunk(1, int(10)) + << cs.chunk(2, PIString("text")) + << cs.chunk(4, f) + << cs.chunk(3, s); +// now you can take cs.data() and send or place it somewhere ... +//! [write] +//! [read] +// create stream for read, cs from upper code +PIByteArray ba(cs.data()); +PIChunkStream cs2(ba); +int i(0); +PIString str; +S s; +PIVector f; +// read from stream +while (!cs2.atEnd()) { + switch (cs2.read()) { + case 1: i = cs2.getData(); break; + case 2: str = cs2.getData(); break; + case 3: s = cs2.getData(); break; + case 4: f = cs2.getData >(); break; + } +} +piCout << i << str << f << s.i << s.f << s.s; +//! [read] diff --git a/doc/html/annotated.html b/doc/html/annotated.html index d61093eb..9be80778 100644 --- a/doc/html/annotated.html +++ b/doc/html/annotated.html @@ -82,48 +82,49 @@ $(document).ready(function(){initNavTree('annotated.html','');});  CPIByteArrayByte array  CRawDataHelp struct to store/restore custom blocks of data to/from PIByteArray  CPICharUnicode char - CPICLICommand-line arguments parser - CPICollectionInterface to discover element groups - CPIConfigConfiguration file - CBranchBranch is a list of entries of configuration file - CEntryEntry of configuration file - CPIConnectionComplex Input/Output point - CPIConsoleConsole output class - CPICoutClass for formatted output similar std::cout - CPIDiagnosticsConnection quality diagnostics - CPIDirLocal directory - CPIEthernetEthernet device - CInterfaceNetwork interface descriptor - CInterfaceListArray of Interface with some features - CPIEvaluatorThis class provide mathematical evaluations of custom expression - CPIFileLocal file - CPIFlagsThis class used as container for bit flags - CPIIODeviceBase class for input/output classes - CPIIOStringPIIODevice wrapper around PIString - CPIKbdListenerKeyboard console input listener - CKeyEventThis struct contains information about pressed keyboard key - CPIMutexMutex - CPIObjectThis is base class for any classes which use events -> handlers mechanism - CPIPacketExtractorPackets extractor - CPIProcess - CPIProtocol - CPIScreenConsole output class - CPIScreenDrawerConsole output class - CPIScreenTileConsole output class - CPISerialSerial device - CPISetSet of any type - CPIStateMachineBase class for custom state machine - CRuleRule of transition between states of machine - CStateState of machine - CPIStringString class - CPIStringListStrings array class - CPISystemTimeSystem time - CPIThreadThread class - CPITimeMeasurerTime measurements - CPITimerTimer - CPIVariantVariant type - CPIVectorDynamic array of any type - CTransferFunctionDifferential evaluations + CPIChunkStreamClass for binary serialization + CPICLICommand-line arguments parser + CPICollectionInterface to discover element groups + CPIConfigConfiguration file + CBranchBranch is a list of entries of configuration file + CEntryEntry of configuration file + CPIConnectionComplex Input/Output point + CPIConsoleConsole output class + CPICoutClass for formatted output similar std::cout + CPIDiagnosticsConnection quality diagnostics + CPIDirLocal directory + CPIEthernetEthernet device + CInterfaceNetwork interface descriptor + CInterfaceListArray of Interface with some features + CPIEvaluatorThis class provide mathematical evaluations of custom expression + CPIFileLocal file + CPIFlagsThis class used as container for bit flags + CPIIODeviceBase class for input/output classes + CPIIOStringPIIODevice wrapper around PIString + CPIKbdListenerKeyboard console input listener + CKeyEventThis struct contains information about pressed keyboard key + CPIMutexMutex + CPIObjectThis is base class for any classes which use events -> handlers mechanism + CPIPacketExtractorPackets extractor + CPIProcess + CPIProtocol + CPIScreenConsole output class + CPIScreenDrawerConsole output class + CPIScreenTileConsole output class + CPISerialSerial device + CPISetSet of any type + CPIStateMachineBase class for custom state machine + CRuleRule of transition between states of machine + CStateState of machine + CPIStringString class + CPIStringListStrings array class + CPISystemTimeSystem time + CPIThreadThread class + CPITimeMeasurerTime measurements + CPITimerTimer + CPIVariantVariant type + CPIVectorDynamic array of any type + CTransferFunctionDifferential evaluations @@ -131,7 +132,7 @@ $(document).ready(function(){initNavTree('annotated.html','');});
- -

Function executed when thread read some data, default implementation execute external slot "ret_func_".

-

TODO: Sleep by steps (about 100ms)

- -

Reimplemented from PIIODevice.

-
@@ -1225,7 +1201,7 @@ Basic usage