public void configure()

in src/main/java/org/apache/datasketches/characterization/theta/ThetaUnionAccuracyProfile2.java [45:79]


  public void configure() {
    final Family family = Family.stringToFamily(prop.mustGet("THETA_famName"));
    final float p = Float.parseFloat(prop.mustGet("THETA_p"));
    final ResizeFactor rf = ResizeFactor.getRF(Integer.parseInt(prop.mustGet("THETA_lgRF")));
    final boolean direct = Boolean.parseBoolean(prop.mustGet("THETA_direct"));
    rebuild = Boolean.parseBoolean(prop.mustGet("THETA_rebuild"));
    final int k = 1 << lgK;

    //Configure Union
    final SetOperationBuilder bldr = new SetOperationBuilder();
    bldr.setNominalEntries(k);
    bldr.setP(p);
    bldr.setResizeFactor(rf);
    if (direct) {
      final int bytes = Sketches.getMaxUnionBytes(k);
      final WritableMemory wmem = WritableMemory.allocate(bytes);
      union = bldr.buildUnion(wmem);
    } else {
      union = bldr.buildUnion();
    }

    //Configure Sketch
    final UpdateSketchBuilder bldr2 =  new UpdateSketchBuilder();
    bldr2.setFamily(family);
    bldr2.setP(p);
    bldr2.setResizeFactor(rf);
    bldr2.setNominalEntries(k);
    if (direct) {
      final int bytes = Sketches.getMaxUpdateSketchBytes(k);
      final WritableMemory wmem = WritableMemory.allocate(bytes);
      sketch = bldr2.build(wmem);
    } else {
      sketch = bldr2.build();
    }
  }