DCCL v3
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
 NdcclDynamic Compact Control Language namespace
 NarithDCCL Arithmetic Encoder Library namespace
 NcompilerCompiler workarounds namespace
 NinternalNamespace for objects used internally by DCCL
 NlegacycclDCCL Implementation of the REMUS CCL Language Library namespace
 Nnative_protobufImplements the default Google Protocol Buffers encoder for a variety of numeric types
 NtestUnit test namespace
 Ntool'dccl' command line tool namespace
 Nv2Goby/DCCL version 2 default field codecs
 Nv3DCCL version 3 default field codecs
 CBitsetA variable size container of bits (subclassed from std::deque<bool>) with an optional hierarchy. Similar to set::bitset but can be resized at runtime and has the ability to have parent Bitsets that can give bits to their children
 CCodecThe Dynamic CCL enCODer/DECoder. This is the main class you will use to load, encode and decode DCCL messages. Many users will not need any other DCCL classes than this one
 CDCCLFieldOptions
 CDCCLFieldOptions_Units
 CDCCLMessageOptions
 CDefaultIdentifierCodecProvides the default 1 byte or 2 byte DCCL ID codec
 CDynamicProtobufManagerHelper class for creating google::protobuf::Message objects that are not statically compiled into the application
 CExceptionException class for DCCL
 CFieldCodecBaseProvides a base class for defining DCCL field encoders / decoders. Most users who wish to define custom encoders/decoders will use the RepeatedTypedFieldCodec, TypedFieldCodec or its children (e.g. TypedFixedFieldCodec) instead of directly inheriting from this class
 CFieldCodecManagerA class for managing the various field codecs. Here you can add and remove field codecs. The DCCL Codec and DefaultMessageCodec use the find() methods to locate the appropriate field codec
 CFieldCodecSelectorA class that goes between FieldCodecBase and TypedFieldCodec to determine if the pre_encode() and post_decode() methods (which convert between WireType and FieldType) must be implemented or not
 CFieldCodecSelector< WireType, FieldType, typename boost::enable_if< boost::is_same< WireType, FieldType > >::type >A class that goes between FieldCodecBase and TypedFieldCodec to determine if the pre_encode() and post_decode() methods must be implemented or not. The specialization is selected if WireType == FieldType and implements these functions as a pass-through
 CLoggerThe DCCL Logger class. Do not instantiate this class directly. Rather, use the dccl::dlog object
 CNullValueExceptionException used to signal null (non-existent) value within field codecs during decode
 COptionRepresents a command line option
 COutOfRangeException
 CRepeatedTypedFieldCodecBase class for "repeated" (multiple value) static-typed (no boost::any) field encoders/decoders. Use TypedFixedFieldCodec if your codec is fixed length (always uses the same number of bits on the wire). Use TypedFieldCodec if your fields are always singular ("optional" or "required"). Singular fields are default implemented in this codec by calls to the equivalent repeated function with an empty or single valued vector
 CTypedFieldCodecBase class for static-typed (no boost::any) field encoders/decoders. Most single-valued user defined variable length codecs will start with this class. Use TypedFixedFieldCodec if your codec is fixed length (always uses the same number of bits on the wire) or RepeatedTypedFieldCodec if your codec has special behavior for repeated (vector) fields
 CTypedFixedFieldCodecBase class for static-typed field encoders/decoders that use a fixed number of bits on the wire regardless of the value of the field. Use TypedFieldCodec if your encoder is variable length. See TypedFieldCodec for an explanation of the template parameters (FieldType and WireType)
 CDCCLGenerator
 CCodeGenerator
 CMultiFileErrorCollector
 CMessage
 CLATLON_COMPRESSED
 CLegacyCCLFieldOptions
 CLONG_AND_COMP
 CTIME_DATE
 CTIME_DATE_LONG