Avro C#
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
 NAvro
 NFile
 CCodecBase class for Avro-supported compression codecs for data files. Note that Codec objects may maintain internal state (e.g. buffers) and are not thread safe.
 CDataBlockEncapsulates a block of data read by the DataFileReader<T>. We will remove this class from the public API in a future version because it is only meant to be used internally.
 CDataFileConstantsConstants used in data files.
 CDataFileReaderProvides access to Avro data written using the DataFileWriter<T>.
 CDataFileWriterStores in a file a sequence of data conforming to a schema. The schema is stored in the file with the data. Each datum in a file is of the same schema. Data is written with a DatumWriter<T>. Data is grouped into blocks. A synchronization marker is written between blocks, so that files may be split. Blocks may be compressed. Extensible metadata is stored at the end of the file. Files may be appended to.
 CDeflateCodecImplements deflate compression and decompression.
 CHeaderHeader on an Avro data file.
 CIFileReaderDefines the interface for an object that reads data from a file.
 CIFileWriterDefines the interface for an object that stores in a file a sequence of data conforming to a schema.
 CNullCodecImplements a codec that does not perform any compression. This codec simply returns the bytes presented to it "as-is".
 NGeneric
 CDatumReaderDefines the interface for an object that reads data of a schema.
 CDatumWriterDefines the interface for an object that writes data of a schema.
 CDefaultReaderThe default implementation for the generic reader. It constructs new .NET objects for avro objects on the stream and returns the .NET object. Users can directly use this class or, if they want to customize the object types for differnt Avro schema types, can derive from this class. There are enough hooks in this class to allow customization.
 CDefaultWriterA General purpose writer for serializing objects into a Stream using Avro. This class implements a default way of serializing objects. But one can derive a class from this and override different methods to acheive results that are different from the default implementation.
 CGenericDatumReaderPreresolvingDatumReader<T> for reading data to GenericRecord classes or primitives. For more information about performance considerations for choosing this implementation.
 CGenericDatumWriterPreresolvingDatumWriter for writing data from GenericRecords or primitive types. For more information about performance considerations for choosing this implementation
 CGenericEnumThe default class to hold values for enum schema in GenericReader and GenericWriter.
 CGenericFixedThe default type used by GenericReader and GenericWriter for objects for FixedSchema
 CGenericReaderA general purpose reader of data from avro streams. This can optionally resolve if the reader's and writer's schemas are different. This class is a wrapper around DefaultReader and offers a little more type safety. The default reader has the flexibility to return any type of object for each read call because the Read() method is generic. This class on the other hand can only return a single type because the type is a parameter to the class. Any user defined extension should, however, be done to DefaultReader. This class is sealed.
 CGenericRecordThe default type used by GenericReader and GenericWriter for RecordSchema.
 CGenericWriterA typesafe wrapper around DefaultWriter. While a specific object of DefaultWriter allows the client to serialize a generic type, an object of this class allows only a single type of object to be serialized through it.
 CPreresolvingDatumReaderA general purpose reader of data from avro streams. This reader analyzes and resolves the reader and writer schemas when constructed so that reads can be more efficient. Once constructed, a reader can be reused or shared among threads to avoid incurring more resolution costs.
 CPreresolvingDatumWriterA general purpose writer of data from avro streams. This writer analyzes the writer schema when constructed so that writes can be more efficient. Once constructed, a writer can be reused or shared among threads to avoid incurring more resolution costs.
 NIO
 CBinaryDecoderDecoder for Avro binary format
 CBinaryEncoderWrite leaf values.
 CByteBufferInputStreamUtility to present MemoryStreams as an InputStream.
 CByteBufferOutputStreamUtility to collect data written to an OutputStream in MemoryStreams.
 CDecoderDecoder is used to decode Avro data on a stream. There are methods to read the Avro types on the stream. There are also methods to skip items, which are usually more efficient than reading, on the stream.
 CEncoderDefines the interface for a class that provies low-level support for serializing Avro values.
 CICallbackObsolete - This will be removed from the public API in a future version.
 CInputStreamBase class for an input stream.
 COutputStreamBase class for an output stream.
 NReflect
 CArrayHelperClass to help serialize and deserialize arrays. Arrays need the following methods Count(), Add(), Clear().true This class allows these methods to be specified externally to the collection.
 CAvroFieldAttributeAttribute that specifies the mapping between an Avro field and C# class property.
 CClassCacheClass holds a cache of C# classes and their properties. The key for the cache is the schema full name.
 CDateTimeOffsetToLongConverterConvert C# DateTimeOffset properties to long unix time
 CDotnetClassCollection of DotNetProperty objects to repre
 CFuncFieldConverterField converter using a Func
 CIAvroFieldConverterConverters can be added to properties with an AvroField attribute. Converters convert between the property type and the avro type.
 CReflectDefaultReaderReader class for reading data and storing into specific classes
 CReflectDefaultWriterClass for writing data from any specific objects
 CReflectReaderReader wrapper class for reading data and storing into specific classes
 CReflectWriterGeneric wrapper class for writing data from specific objects
 CTypedFieldConverterConstructor
 NSpecific
 CICallbackRequestorTODO: This interface needs better documentation.
 CISpecificProtocolDefines the interface for a class that implements a specific protocol. TODO: This interface needs better documentation.
 CISpecificRecordInterface class for generated classes
 CObjectCreatorResolves and creates types associated with a schema and/or name. You should generally use the shared Instance to take advantage caching.
 CSpecificDatumReaderPreresolvingDatumReader for reading data to ISpecificRecord classes.
 CSpecificDatumWriterPreresolvingDatumWriter for writing data from ISpecificRecord classes.
 CSpecificDefaultReaderReader class for reading data and storing into specific classes
 CSpecificDefaultWriterClass for writing data from any specific objects
 CSpecificExceptionBase class for specific exceptions.
 CSpecificFixedBase class for all generated classes
 CSpecificReaderReader wrapper class for reading data and storing into specific classes
 CSpecificWriterGeneric wrapper class for writing data from specific objects
 NUtil
 CDateThe 'date' logical type.
 CDecimalThe 'decimal' logical type.
 CLogicalTypeBase for all logical type implementations.
 CLogicalTypeFactoryA factory for logical type implementations.
 CLogicalUnixEpochTypeBase for all logical type implementations that are based on the Unix Epoch date/time.
 CTimeMicrosecondThe 'time-micros' logical type.
 CTimeMillisecondThe 'time-millis' logical type.
 CTimestampMicrosecondThe 'timestamp-micros' logical type.
 CTimestampMillisecondThe 'timestamp-millis' logical type.
 CUuidUUid logical type
 CArraySchemaClass for array type schemas
 CAvroDecimalRepresents a big decimal.
 CAvroExceptionA generic Avro exception.
 CAvroRuntimeExceptionA generic Avro exception.
 CAvroTypeExceptionUsed to communicate an exception associated with Avro typing.
 CCodeGenGenerates C# code from Avro schemas and protocols.
 CCodeGenException
 CCodeGenUtilA singleton class containing data used by codegen
 CEnumSchemaClass for enum type schemas
 CFieldClass for fields defined in a record
 CFixedSchemaClass for fixed schemas
 CJsonHelper
 CLogicalSchemaClass for logical type schemas.
 CMapSchemaClass for map schemas
 CMessageRepresents a message in an Avro protocol.
 CNamedSchemaBase class for all named schemas: fixed, enum, record
 CPrimitiveSchemaClass for schemas of primitive types
 CPropertyMapProvides access to custom properties (those not defined in the Avro spec) in a JSON object.
 CProtocolA set of messages forming an application protocol.
 CProtocolParseExceptionUsed to communicate an exception that occurred while parsing a protocol.
 CRecordSchemaClass for record schemas
 CSchemaBase class for all schema types
 CSchemaNameClass to store schema name, namespace and enclosing namespace
 CSchemaNamesA class that contains a list of named schemas. This is used when reading or writing a schema/protocol. This prevents reading and writing of duplicate schema definitions within a protocol or schema file
 CSchemaParseExceptionUsed to communicate an exception that occurred while parsing a schema.
 CUnionSchemaClass for union schemas
 CUnnamedSchemaBase class for all unnamed schemas