* Key: {@code -dbc.seed} *
*/ public static final OptionID SEED_ID = OptionID.getOrCreateOptionID("dbc.genseed", "Seed for randomly generating vectors"); /** * Database to specify the random vector dimensionality ** Key: {@code -dbc.dim} *
*/ public static final OptionID DIM_ID = OptionID.getOrCreateOptionID("dbc.dim", "Dimensionality of the vectors to generate."); /** * Parameter to specify the database size to generate. ** Key: {@code -dbc.size} *
*/ public static final OptionID SIZE_ID = OptionID.getOrCreateOptionID("dbc.size", "Database size to generate."); int dim = -1; int size = -1; Long seed = null; @Override protected void makeOptions(Parameterization config) { super.makeOptions(config); configFilters(config); configDimensionality(config); configSize(config); configSeed(config); } protected void configSeed(Parameterization config) { LongParameter seedParam = new LongParameter(SEED_ID, true); if(config.grab(seedParam)) { seed = seedParam.getValue(); } } protected void configDimensionality(Parameterization config) { IntParameter dimParam = new IntParameter(DIM_ID); if(config.grab(dimParam)) { dim = dimParam.getValue(); } } protected void configSize(Parameterization config) { IntParameter sizeParam = new IntParameter(SIZE_ID); if(config.grab(sizeParam)) { size = sizeParam.getValue(); } } @Override protected RandomDoubleVectorDatabaseConnection makeInstance() { return new RandomDoubleVectorDatabaseConnection(dim, size, seed, filters); } } }