aboutsummaryrefslogblamecommitdiffstats
path: root/library/cpp/histogram/adaptive/protos/histo.proto
blob: 8961fef022725ddbd039208d93a4a8c4cc93a2e1 (plain) (tree)
1
2
3
4
5
6
7
8





                                                                
                                                                                                                                  




                                     



                                                                     
                                   
 

                                 



                                                                                                   



                                      
 
package NKiwiAggr;


// THistoRec represents a value record added to a multihistogram
message THistoRec {
    optional uint64 Id = 1; // Current histogram identifier
    optional double Value = 2;
    optional double Weight = 3 [default = 1.0]; // You can set a certain weight to each record or just skip records using Weight=0
}

message THistoRecs {
    repeated THistoRec HistoRecs = 1;
}

enum EHistogramType {
    HT_FIXED_BIN_HISTOGRAM = 1;
    HT_ADAPTIVE_DISTANCE_HISTOGRAM = 2;
    HT_ADAPTIVE_WEIGHT_HISTOGRAM = 3;
    HT_ADAPTIVE_HISTOGRAM = 4;  // if the quality function is unknown
    HT_ADAPTIVE_WARD_HISTOGRAM = 5;
}

message THistogram {
    optional uint64 Id = 1;
    optional double MinValue = 2;
    optional double BinRange = 4; // for FIXED_BIN_HISTOGRAM only. And it's OK that it is 4 after 2
    repeated float Freq = 5;
    repeated float Position = 6;  // for ADAPTIVE histograms only
    optional double MaxValue = 7;
    optional EHistogramType Type = 8;  // Empty field means FIXED_BIN_HISTOGRAM
}

// Multihistogam
message THistograms {
    repeated THistogram HistoRecs = 1;
}