Support more types
This commit is contained in:
@@ -309,7 +309,7 @@ pub async fn make_single_event_pipe(
|
|||||||
info!("file {} {}", ts1, ts1 + DAY * 27);
|
info!("file {} {}", ts1, ts1 + DAY * 27);
|
||||||
info!("range {} {}", evq.range.beg, evq.range.end);
|
info!("range {} {}", evq.range.beg, evq.range.end);
|
||||||
if evq.range.beg < ts1 + DAY * 27 && evq.range.end > ts1 {
|
if evq.range.beg < ts1 + DAY * 27 && evq.range.end > ts1 {
|
||||||
info!("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
info!("•••••••••••••••••••••••••• file matches requested range");
|
||||||
let f1 = File::open(de.path()).await?;
|
let f1 = File::open(de.path()).await?;
|
||||||
info!("opened {:?}", de.path());
|
info!("opened {:?}", de.path());
|
||||||
let mut pbr = PbFileReader::new(f1).await;
|
let mut pbr = PbFileReader::new(f1).await;
|
||||||
|
|||||||
+19
-10
@@ -136,6 +136,20 @@ fn tmp1() {
|
|||||||
//<EventValues<Vec<u8>> as SitemtyFrameType>::FRAME_TYPE_ID;
|
//<EventValues<Vec<u8>> as SitemtyFrameType>::FRAME_TYPE_ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
macro_rules! wagg1 {
|
||||||
|
($k:expr, $ak:expr, $shape:expr, $sty:ident) => {
|
||||||
|
match $ak {
|
||||||
|
AggKind::Plain => EventsItem::Plain(PlainEvents::Wave(WavePlainEvents::$sty($k))),
|
||||||
|
AggKind::DimXBins1 => {
|
||||||
|
let p = WaveXBinner::create($shape, $ak.clone());
|
||||||
|
let j = p.process($k);
|
||||||
|
EventsItem::XBinnedEvents(XBinnedEvents::SingleBinWave(SingleBinWaveEvents::$sty(j)))
|
||||||
|
}
|
||||||
|
AggKind::DimXBinsN(_) => EventsItem::Plain(PlainEvents::Wave(err::todoval())),
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
impl WavePlainEvents {
|
impl WavePlainEvents {
|
||||||
pub fn variant_name(&self) -> String {
|
pub fn variant_name(&self) -> String {
|
||||||
use WavePlainEvents::*;
|
use WavePlainEvents::*;
|
||||||
@@ -152,16 +166,11 @@ impl WavePlainEvents {
|
|||||||
use WavePlainEvents::*;
|
use WavePlainEvents::*;
|
||||||
let shape = self.shape();
|
let shape = self.shape();
|
||||||
match self {
|
match self {
|
||||||
Byte(k) => match ak {
|
Byte(k) => wagg1!(k, ak, shape, Byte),
|
||||||
AggKind::Plain => EventsItem::Plain(PlainEvents::Wave(WavePlainEvents::Byte(k))),
|
Short(k) => wagg1!(k, ak, shape, Short),
|
||||||
AggKind::DimXBins1 => {
|
Int(k) => wagg1!(k, ak, shape, Int),
|
||||||
let p = WaveXBinner::create(shape, ak.clone());
|
Float(k) => wagg1!(k, ak, shape, Float),
|
||||||
let j = p.process(k);
|
Double(k) => wagg1!(k, ak, shape, Double),
|
||||||
EventsItem::XBinnedEvents(XBinnedEvents::SingleBinWave(SingleBinWaveEvents::Byte(j)))
|
|
||||||
}
|
|
||||||
AggKind::DimXBinsN(_) => EventsItem::Plain(PlainEvents::Wave(err::todoval())),
|
|
||||||
},
|
|
||||||
_ => panic!(),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user