本文整理汇总了Golang中protocol.Point类的典型用法代码示例。如果您正苦于以下问题:Golang Point类的具体用法?Golang Point怎么用?Golang Point使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Point类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: UpdateRange
func (self *PointRange) UpdateRange(point *protocol.Point) {
timestamp := *point.GetTimestampInMicroseconds()
if timestamp < self.startTime {
self.startTime = timestamp
}
if timestamp > self.endTime {
self.endTime = timestamp
}
}
示例2: AggregatePoint
func (self *TimestampAggregator) AggregatePoint(series string, group interface{}, p *protocol.Point) error {
timestamps := self.timestamps[series]
if timestamps == nil {
timestamps = make(map[interface{}]int64)
self.timestamps[series] = timestamps
}
if self.duration != nil {
timestamps[group] = *p.GetTimestampInMicroseconds() / *self.duration * *self.duration
} else {
timestamps[group] = *p.GetTimestampInMicroseconds()
}
return nil
}
示例3: getPoint
// set the fields of the other time series to null making sure that
// the order of the null values match the order of the field
// definitions, i.e. left timeseries first followed by values from the
// right timeseries
func (self *mergeState) getPoint(fields []string, p *protocol.Point) *protocol.Point {
if !self.modifyValues {
return p
}
newValues := make([]*protocol.FieldValue, len(self.fields))
oldValues := p.Values
for idx, f := range fields {
newIdx := self.fields[f]
newValues[newIdx] = oldValues[idx]
}
p.Values = newValues
return p
}
示例4: normalizePointAndAppend
func (self *CoordinatorImpl) normalizePointAndAppend(fieldNames map[string]int, result *protocol.Series, fields []string, point *protocol.Point) {
oldValues := point.Values
point.Values = make([]*protocol.FieldValue, len(fieldNames), len(fieldNames))
for index, field := range fields {
indexForField, ok := fieldNames[field]
// drop this point on the floor if the unexpected happens
if !ok {
log.Error("Couldn't lookup field: ", field, fields, fieldNames)
return
}
point.Values[indexForField] = oldValues[index]
}
result.Points = append(result.Points, point)
}
示例5: filterColumns
func filterColumns(columns map[string]bool, fields []string, point *protocol.Point) {
if columns["*"] {
return
}
newValues := []*protocol.FieldValue{}
newFields := []string{}
for idx, f := range fields {
if _, ok := columns[f]; !ok {
continue
}
newValues = append(newValues, point.Values[idx])
newFields = append(newFields, f)
}
point.Values = newValues
}
示例6: getTimestampFromPoint
func (self *QueryEngine) getTimestampFromPoint(point *protocol.Point) int64 {
return self.getTimestampBucket(uint64(*point.GetTimestampInMicroseconds()))
}
示例7: getTimestampFromPoint
func getTimestampFromPoint(window time.Duration, point *protocol.Point) int64 {
multiplier := int64(window / time.Microsecond)
return *point.GetTimestampInMicroseconds() / int64(multiplier) * int64(multiplier)
}
示例8: getTimestampFromPoint
func (self *QueryEngine) getTimestampFromPoint(point *protocol.Point) int64 {
multiplier := uint64(*self.duration)
timestampNanoseconds := uint64(*point.GetTimestampInMicroseconds() * 1000)
return int64(timestampNanoseconds / multiplier * multiplier / 1000)
}