summaryrefslogtreecommitdiff
path: root/rrdformat/format.go
diff options
context:
space:
mode:
Diffstat (limited to 'rrdformat/format.go')
-rw-r--r--rrdformat/format.go47
1 files changed, 16 insertions, 31 deletions
diff --git a/rrdformat/format.go b/rrdformat/format.go
index 8898ffd..f9b8504 100644
--- a/rrdformat/format.go
+++ b/rrdformat/format.go
@@ -1,9 +1,6 @@
package rrdformat
import (
- //"encoding"
- "encoding/xml"
-
"git.lukeshu.com/go/librrd/rrdformat/rrdbinary"
)
@@ -66,11 +63,16 @@ type RRADef struct {
PDPCnt rrdbinary.Uint
}
-type Time struct {
+type TimeWithUsec struct {
Sec rrdbinary.Time
Usec rrdbinary.Int // signed, but always >= 0
}
+type TimeWithoutUsec struct {
+ Sec rrdbinary.Time
+ Usec rrdbinary.Int `rrdbinary:"-"`
+}
+
type PDPPrep struct {
LastDS rrdbinary.String `rrdbinary:"size=30"`
Scratch [10]rrdbinary.Unival
@@ -91,11 +93,11 @@ type RRDv0003 struct {
Header Header
DSDefs []DSDef // .Header.DSCnt
RRADefs []RRADef // .Header.RRACnt
- LastUpdated Time
- PDPPrep []PDPPrep // .Header.DSCnt
- CDPPrep []CDPPrep // .Header.DSCnt * .Header.RRACnt
- RRAPtr []RRAPtr // .Header.RRACnt
- Values []RRDValue // Σ .RRADefs[i].RowCnt*.Header.DsCnt
+ LastUpdated TimeWithUsec
+ PDPPreps []PDPPrep // .Header.DSCnt
+ CDPPreps []CDPPrep // .Header.DSCnt * .Header.RRACnt
+ RRAPtrs []RRAPtr // .Header.RRACnt
+ Values []RRDValue // Σ .RRADefs[i].RowCnt*.Header.DSCnt
}
type RRDv0002 = RRDv0001
@@ -104,26 +106,9 @@ type RRDv0001 struct {
Header Header
DSDefs []DSDef // .Header.DSCnt
RRADefs []RRADef // .Header.RRACnt
- LastUpdated rrdbinary.Time
- PDPPrep []PDPPrep // .Header.DSCnt
- CDPPrep []CDPPrep // .Header.DSCnt * .Header.RRACnt
- RRAPtr []RRAPtr // .Header.RRACnt
- Values []RRDValue // Σ .RRADefs[i].RowCnt*.Header.DsCnt
+ LastUpdated TimeWithoutUsec
+ PDPPreps []PDPPrep // .Header.DSCnt
+ CDPPreps []CDPPrep // .Header.DSCnt * .Header.RRACnt
+ RRAPtrs []RRAPtr // .Header.RRACnt
+ Values []RRDValue // Σ .RRADefs[i].RowCnt*.Header.DSCnt
}
-
-func (h *Header) MarshalXML(e *xml.Encoder, start xml.StartElement) error {
- if err := e.EncodeElement(h.Version, xml.StartElement{Name: xml.Name{Local: "version", Space: XMLNS}}); err != nil {
- return err
- }
- if err := e.EncodeElement(h.PDPStep, xml.StartElement{Name: xml.Name{Local: "step", Space: XMLNS}}); err != nil {
- return err
- }
- return nil
-}
-
-//var _ encoding.BinaryMarshaler = &Header{}
-//var _ encoding.BinaryUnmarshaler = &Header{}
-
-var _ xml.Marshaler = &Header{}
-
-//var _ xml.Unmarshaler = &Header{}