import (
  "time"
  datasets "github.com/tilebox/tilebox-go/datasets/v1"
	"github.com/tilebox/tilebox-go/query"
)

startDate := time.Date(2014, 10, 4, 0, 0, 0, 0, time.UTC) 
endDate := time.Date(2021, 2, 24, 0, 0, 0, 0, time.UTC) 
queryInterval := query.NewTimeInterval(startDate, endDate)

datapoints, err := datasets.CollectAs[*v1.Sentinel1Sar](
    client.Datapoints.Query(ctx, collectionID, datasets.WithTemporalExtent(queryInterval)),
)
func CollectAs[T proto.Message](seq iter.Seq2[[]byte, error]) ([]T, error)

Convert a sequence of bytes into a slice of proto.Message.

Useful to convert the output of Datapoints.Query into a slice of proto.Message.

This a convenience function for Collect(As[T](seq)).

Parameters

seq
iter.Seq2[[]byte, error]

The sequence of bytes to convert

Returns

A slice of proto.Message or an error if any.

import (
  "time"
  datasets "github.com/tilebox/tilebox-go/datasets/v1"
	"github.com/tilebox/tilebox-go/query"
)

startDate := time.Date(2014, 10, 4, 0, 0, 0, 0, time.UTC) 
endDate := time.Date(2021, 2, 24, 0, 0, 0, 0, time.UTC) 
queryInterval := query.NewTimeInterval(startDate, endDate)

datapoints, err := datasets.CollectAs[*v1.Sentinel1Sar](
    client.Datapoints.Query(ctx, collectionID, datasets.WithTemporalExtent(queryInterval)),
)