mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-09-10 07:01:01 +00:00
setting time quantum value on date tiles
This commit is contained in:
parent
d6510791ca
commit
7b0681136a
1 changed files with 11 additions and 7 deletions
|
|
@ -1,21 +1,25 @@
|
|||
package index
|
||||
|
||||
import "time"
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
type TimeQuantum uint
|
||||
|
||||
const (
|
||||
Y TimeQuantum = 0
|
||||
YM
|
||||
YMD
|
||||
YMDH
|
||||
Y TimeQuantum = 3
|
||||
YM TimeQuantum = 2
|
||||
YMD TimeQuantum = 1
|
||||
YMDH TimeQuantum = 0
|
||||
)
|
||||
|
||||
func GetTimeID(t TimeQuantum, year uint, month uint, day uint, hour uint, tile_id uint64) uint64 {
|
||||
y := year - 1970 //config.startyear
|
||||
time_stamp := uint64((uint(t) << 30) | (y << 23) | (month << 19) | (day << 14) | (hour << 9))
|
||||
time_stamp = time_stamp << 32
|
||||
return time_stamp | tile_id
|
||||
result := time_stamp | tile_id
|
||||
|
||||
return result
|
||||
}
|
||||
|
||||
func GetTimeIds(tile_id uint64, atime time.Time, min_quantum TimeQuantum) []uint64 {
|
||||
|
|
@ -41,7 +45,7 @@ func GetTimeIds(tile_id uint64, atime time.Time, min_quantum TimeQuantum) []uint
|
|||
}
|
||||
|
||||
if min_quantum <= YMDH {
|
||||
id := GetTimeID(Y, year, uint(month), uint(day), uint(hour), tile_id)
|
||||
id := GetTimeID(YMDH, year, uint(month), uint(day), uint(hour), tile_id)
|
||||
results = append(results, id)
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue