package dbo import ( "math" ) type DboFloat struct { k string v float64 dbo *Dbo isGL bool } func newFloat(dbo *Dbo, k string, v float64, isGL bool) *DboFloat { s := &DboFloat{dbo: dbo, k: k, v: v, isGL: isGL} s.init() return s } func (s *DboFloat) init() { } func (s *DboFloat) Get() float64 { return s.v } func (s *DboFloat) GetNewest() float64 { return s.v } func (s *DboFloat) Set(v float64) { nv := math.Round(v*1e9) / 1e9 if s.v == nv { return } s.v = nv } func (s *DboFloat) Add(add float64) { v := s.v + add s.Set(v) }