hep: go-hep.org/x/hep/groot/rbytes Index | Files

package rbytes

import "go-hep.org/x/hep/groot/rbytes"

Package rbytes contains the definitions of types useful for serializing and deserializing ROOT data buffers.

rbytes also defines the interfaces to interact with ROOT's metadata classes such as StreamerInfo and StreamerElements.

Index

Package Files

consts.go rbuffer.go rbuffer_gen.go rbytes.go sliceops.go wbuffer.go

Constants

const (
    BypassStreamer                  uint32 = 1 << 12
    CannotHandleMemberWiseStreaming uint32 = 1 << 17
)
const (

    //baskets
    DisplacementMask = 0xFF000000
)
const (
    StreamedMemberWise = 0x4000
)

func ResizeBool Uses

func ResizeBool(sli []bool, n int) []bool

func ResizeD32 Uses

func ResizeD32(sli []root.Double32, n int) []root.Double32

func ResizeF16 Uses

func ResizeF16(sli []root.Float16, n int) []root.Float16

func ResizeF32 Uses

func ResizeF32(sli []float32, n int) []float32

func ResizeF64 Uses

func ResizeF64(sli []float64, n int) []float64

func ResizeI16 Uses

func ResizeI16(sli []int16, n int) []int16

func ResizeI32 Uses

func ResizeI32(sli []int32, n int) []int32

func ResizeI64 Uses

func ResizeI64(sli []int64, n int) []int64

func ResizeI8 Uses

func ResizeI8(sli []int8, n int) []int8

func ResizeStr Uses

func ResizeStr(sli []string, n int) []string

func ResizeU16 Uses

func ResizeU16(sli []uint16, n int) []uint16

func ResizeU32 Uses

func ResizeU32(sli []uint32, n int) []uint32

func ResizeU64 Uses

func ResizeU64(sli []uint64, n int) []uint64

func ResizeU8 Uses

func ResizeU8(sli []uint8, n int) []uint8

type Marshaler Uses

type Marshaler interface {
    MarshalROOT(w *WBuffer) (int, error)
}

Marshaler is the interface implemented by an object that can marshal itself into a ROOT buffer

type RBuffer Uses

type RBuffer struct {
    // contains filtered or unexported fields
}

RBuffer is a read-only ROOT buffer for streaming.

func NewRBuffer Uses

func NewRBuffer(data []byte, refs map[int64]interface{}, offset uint32, ctx StreamerInfoContext) *RBuffer

func (*RBuffer) CheckByteCount Uses

func (r *RBuffer) CheckByteCount(pos, count int32, start int64, class string)

func (*RBuffer) DumpHex Uses

func (r *RBuffer) DumpHex(n int)

func (*RBuffer) Err Uses

func (r *RBuffer) Err() error

func (*RBuffer) Len Uses

func (r *RBuffer) Len() int64

func (*RBuffer) Pos Uses

func (r *RBuffer) Pos() int64

func (*RBuffer) Read Uses

func (r *RBuffer) Read(p []byte) (int, error)

func (*RBuffer) ReadArrayBool Uses

func (r *RBuffer) ReadArrayBool(arr []bool)

func (*RBuffer) ReadArrayD32 Uses

func (r *RBuffer) ReadArrayD32(arr []root.Double32, elm StreamerElement)

func (*RBuffer) ReadArrayF16 Uses

func (r *RBuffer) ReadArrayF16(arr []root.Float16, elm StreamerElement)

func (*RBuffer) ReadArrayF32 Uses

func (r *RBuffer) ReadArrayF32(sli []float32)

func (*RBuffer) ReadArrayF64 Uses

func (r *RBuffer) ReadArrayF64(sli []float64)

func (*RBuffer) ReadArrayI16 Uses

func (r *RBuffer) ReadArrayI16(sli []int16)

func (*RBuffer) ReadArrayI32 Uses

func (r *RBuffer) ReadArrayI32(sli []int32)

func (*RBuffer) ReadArrayI64 Uses

func (r *RBuffer) ReadArrayI64(sli []int64)

func (*RBuffer) ReadArrayI8 Uses

func (r *RBuffer) ReadArrayI8(arr []int8)

func (*RBuffer) ReadArrayString Uses

func (r *RBuffer) ReadArrayString(arr []string)

func (*RBuffer) ReadArrayU16 Uses

func (r *RBuffer) ReadArrayU16(sli []uint16)

func (*RBuffer) ReadArrayU32 Uses

func (r *RBuffer) ReadArrayU32(sli []uint32)

func (*RBuffer) ReadArrayU64 Uses

func (r *RBuffer) ReadArrayU64(sli []uint64)

func (*RBuffer) ReadArrayU8 Uses

func (r *RBuffer) ReadArrayU8(arr []uint8)

func (*RBuffer) ReadBool Uses

func (r *RBuffer) ReadBool() bool

func (*RBuffer) ReadCString Uses

func (r *RBuffer) ReadCString(n int) string

func (*RBuffer) ReadD32 Uses

func (r *RBuffer) ReadD32(elm StreamerElement) root.Double32

func (*RBuffer) ReadF16 Uses

func (r *RBuffer) ReadF16(elm StreamerElement) root.Float16

func (*RBuffer) ReadF32 Uses

func (r *RBuffer) ReadF32() float32

func (*RBuffer) ReadF64 Uses

func (r *RBuffer) ReadF64() float64

func (*RBuffer) ReadI16 Uses

func (r *RBuffer) ReadI16() int16

func (*RBuffer) ReadI32 Uses

func (r *RBuffer) ReadI32() int32

func (*RBuffer) ReadI64 Uses

func (r *RBuffer) ReadI64() int64

func (*RBuffer) ReadI8 Uses

func (r *RBuffer) ReadI8() int8

func (*RBuffer) ReadObject Uses

func (r *RBuffer) ReadObject(class string) root.Object

func (*RBuffer) ReadObjectAny Uses

func (r *RBuffer) ReadObjectAny() (obj root.Object)

func (*RBuffer) ReadSTLString Uses

func (r *RBuffer) ReadSTLString() string

func (*RBuffer) ReadStaticArrayI32 Uses

func (r *RBuffer) ReadStaticArrayI32() []int32

func (*RBuffer) ReadString Uses

func (r *RBuffer) ReadString() string

func (*RBuffer) ReadU16 Uses

func (r *RBuffer) ReadU16() uint16

func (*RBuffer) ReadU32 Uses

func (r *RBuffer) ReadU32() uint32

func (*RBuffer) ReadU64 Uses

func (r *RBuffer) ReadU64() uint64

func (*RBuffer) ReadU8 Uses

func (r *RBuffer) ReadU8() uint8

func (*RBuffer) ReadVersion Uses

func (r *RBuffer) ReadVersion(class string) (vers int16, pos, n int32)

func (*RBuffer) Reset Uses

func (r *RBuffer) Reset(data []byte, refs map[int64]interface{}, offset uint32, ctx StreamerInfoContext) *RBuffer

func (*RBuffer) SetErr Uses

func (r *RBuffer) SetErr(err error)

func (*RBuffer) SetPos Uses

func (r *RBuffer) SetPos(pos int64)

func (*RBuffer) SkipObject Uses

func (r *RBuffer) SkipObject()

func (*RBuffer) SkipVersion Uses

func (r *RBuffer) SkipVersion(class string)

func (*RBuffer) StreamerInfo Uses

func (r *RBuffer) StreamerInfo(name string, version int) (StreamerInfo, error)

StreamerInfo returns the named StreamerInfo. If version is negative, the latest version should be returned.

type RStreamer Uses

type RStreamer interface {
    RStreamROOT(*RBuffer) error
}

RStreamer is the interface implemented by types that can stream themselves from a ROOT buffer.

type RVersioner Uses

type RVersioner interface {
    RVersion() int16
}

RVersioner is the interface implemented by an object that can tell the ROOT system what is its current version.

type Streamer Uses

type Streamer interface {
    WStreamer
    RStreamer
}

Streamer is the interface implemented by types that can stream themselves to and from a ROOT buffer.

type StreamerElement Uses

type StreamerElement interface {
    root.Named

    ArrayDim() int
    ArrayLen() int
    Type() rmeta.Enum
    Offset() uintptr
    Size() uintptr
    TypeName() string
    XMin() float64
    XMax() float64
    Factor() float64
}

StreamerElement describes a ROOT StreamerElement

type StreamerInfo Uses

type StreamerInfo interface {
    root.Named

    CheckSum() int
    ClassVersion() int
    Elements() []StreamerElement
}

StreamerInfo describes a ROOT Streamer.

type StreamerInfoContext Uses

type StreamerInfoContext interface {
    // StreamerInfo returns the named StreamerInfo.
    // If version is negative, the latest version should be returned.
    StreamerInfo(name string, version int) (StreamerInfo, error)
}

StreamerInfoContext defines the protocol to retrieve a ROOT StreamerInfo metadata type by name.

Implementations should make sure the protocol is goroutine safe.

type Unmarshaler Uses

type Unmarshaler interface {
    UnmarshalROOT(r *RBuffer) error
}

Unmarshaler is the interface implemented by an object that can unmarshal itself from a ROOT buffer

type WBuffer Uses

type WBuffer struct {
    // contains filtered or unexported fields
}

WBuffer is a write-only ROOT buffer for streaming.

func NewWBuffer Uses

func NewWBuffer(data []byte, refs map[interface{}]int64, offset uint32, ctx StreamerInfoContext) *WBuffer

func (*WBuffer) Bytes Uses

func (w *WBuffer) Bytes() []byte

func (*WBuffer) DumpHex Uses

func (w *WBuffer) DumpHex(n int)

func (*WBuffer) Err Uses

func (w *WBuffer) Err() error

func (*WBuffer) Grow Uses

func (w *WBuffer) Grow(n int)

func (*WBuffer) Len Uses

func (w *WBuffer) Len() int64

func (*WBuffer) Pos Uses

func (w *WBuffer) Pos() int64

func (*WBuffer) SetByteCount Uses

func (w *WBuffer) SetByteCount(beg int64, class string) (int, error)

func (*WBuffer) SetErr Uses

func (w *WBuffer) SetErr(err error)

func (*WBuffer) SetPos Uses

func (w *WBuffer) SetPos(pos int64)

func (*WBuffer) StreamerInfo Uses

func (w *WBuffer) StreamerInfo(name string, version int) (StreamerInfo, error)

StreamerInfo returns the named StreamerInfo. If version is negative, the latest version should be returned.

func (*WBuffer) Write Uses

func (w *WBuffer) Write(p []byte) (int, error)

func (*WBuffer) WriteBool Uses

func (w *WBuffer) WriteBool(v bool)

func (*WBuffer) WriteCString Uses

func (w *WBuffer) WriteCString(v string)

func (*WBuffer) WriteClass Uses

func (w *WBuffer) WriteClass(beg int64, obj root.Object) (uint32, error)

func (*WBuffer) WriteD32 Uses

func (w *WBuffer) WriteD32(v root.Double32, elm StreamerElement)

func (*WBuffer) WriteF16 Uses

func (w *WBuffer) WriteF16(v root.Float16, elm StreamerElement)

func (*WBuffer) WriteF32 Uses

func (w *WBuffer) WriteF32(v float32)

func (*WBuffer) WriteF64 Uses

func (w *WBuffer) WriteF64(v float64)

func (*WBuffer) WriteFastArrayBool Uses

func (w *WBuffer) WriteFastArrayBool(v []bool)

func (*WBuffer) WriteFastArrayD32 Uses

func (w *WBuffer) WriteFastArrayD32(v []root.Double32, elm StreamerElement)

func (*WBuffer) WriteFastArrayF16 Uses

func (w *WBuffer) WriteFastArrayF16(v []root.Float16, elm StreamerElement)

func (*WBuffer) WriteFastArrayF32 Uses

func (w *WBuffer) WriteFastArrayF32(v []float32)

func (*WBuffer) WriteFastArrayF64 Uses

func (w *WBuffer) WriteFastArrayF64(v []float64)

func (*WBuffer) WriteFastArrayI16 Uses

func (w *WBuffer) WriteFastArrayI16(v []int16)

func (*WBuffer) WriteFastArrayI32 Uses

func (w *WBuffer) WriteFastArrayI32(v []int32)

func (*WBuffer) WriteFastArrayI64 Uses

func (w *WBuffer) WriteFastArrayI64(v []int64)

func (*WBuffer) WriteFastArrayI8 Uses

func (w *WBuffer) WriteFastArrayI8(v []int8)

func (*WBuffer) WriteFastArrayString Uses

func (w *WBuffer) WriteFastArrayString(v []string)

func (*WBuffer) WriteFastArrayU16 Uses

func (w *WBuffer) WriteFastArrayU16(v []uint16)

func (*WBuffer) WriteFastArrayU32 Uses

func (w *WBuffer) WriteFastArrayU32(v []uint32)

func (*WBuffer) WriteFastArrayU64 Uses

func (w *WBuffer) WriteFastArrayU64(v []uint64)

func (*WBuffer) WriteFastArrayU8 Uses

func (w *WBuffer) WriteFastArrayU8(v []uint8)

func (*WBuffer) WriteI16 Uses

func (w *WBuffer) WriteI16(v int16)

func (*WBuffer) WriteI32 Uses

func (w *WBuffer) WriteI32(v int32)

func (*WBuffer) WriteI64 Uses

func (w *WBuffer) WriteI64(v int64)

func (*WBuffer) WriteI8 Uses

func (w *WBuffer) WriteI8(v int8)

func (*WBuffer) WriteObjectAny Uses

func (w *WBuffer) WriteObjectAny(obj root.Object) error

func (*WBuffer) WriteSTLString Uses

func (w *WBuffer) WriteSTLString(v string)

func (*WBuffer) WriteStaticArrayI32 Uses

func (w *WBuffer) WriteStaticArrayI32(v []int32)

func (*WBuffer) WriteString Uses

func (w *WBuffer) WriteString(v string)

func (*WBuffer) WriteU16 Uses

func (w *WBuffer) WriteU16(v uint16)

func (*WBuffer) WriteU32 Uses

func (w *WBuffer) WriteU32(v uint32)

func (*WBuffer) WriteU64 Uses

func (w *WBuffer) WriteU64(v uint64)

func (*WBuffer) WriteU8 Uses

func (w *WBuffer) WriteU8(v uint8)

func (*WBuffer) WriteVersion Uses

func (w *WBuffer) WriteVersion(vers int16) int64

type WStreamer Uses

type WStreamer interface {
    WStreamROOT(*WBuffer) error
}

WStreamer is the interface implemented by types that can stream themselves to a ROOT buffer.

Package rbytes imports 11 packages (graph) and is imported by 11 packages. Updated 2020-07-15. Refresh now. Tools for package owners.