uk.ac.sussex.gdsc.smlm.data.config.FitProtos Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gdsc-smlm Show documentation
Show all versions of gdsc-smlm Show documentation
Genome Damage and Stability Centre SMLM Package
Software for single molecule localisation microscopy (SMLM)
The newest version!
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: uk/ac/sussex/gdsc/smlm/data/config/fit.proto
package uk.ac.sussex.gdsc.smlm.data.config;
public final class FitProtos {
private FitProtos() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
/**
*
* Define the fitting solver.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.FitSolver}
*/
public enum FitSolver
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Custom Levenberg-Marquardt least-squares estimation.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
*
*
* LVM_LSE = 0;
*/
LVM_LSE(0),
/**
*
* Custom Levenberg-Marquardt maximum-likelihood estimation for Poisson data using the method of Laurence & Chromy (2010) Nature Methods 7, 338-339.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
* Parameters are bounded using a hard-stop limit to prevent negative function values being produced.
*
*
* LVM_MLE = 1;
*/
LVM_MLE(1),
/**
*
* Custom Levenberg-Marquardt weighted least-squares estimation for Poisson data using the method of Ruisheng, et al (2017) Optical Express 25, Issue 10, pp 11701-11716.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
*
*
* LVM_WLSE = 2;
*/
LVM_WLSE(2),
/**
*
* Maximum Likelihood Estimator.
* Uses a configurable noise model for the probability density function of the data.
*
*
* MLE = 3;
*/
MLE(3),
/**
*
* Maximum Likelihood Estimator for Poisson data using the method of Smith et al, (2010) Nature Methods 7, 373-375.
* Uses a Newton-Raphson update step for fast convergence close to the optimum. The algorithm is unstable when the initial parameter estimate is poor.
*
*
* FAST_MLE = 4;
*/
FAST_MLE(4),
/**
*
* Maximum Likelihood Estimator for Poisson data using the method of Smith et al, (2010) Nature Methods 7, 373-375.
* Uses a Newton-Raphson (NR) update step for fast convergence close to the optimum. The algorithm uses a backtracking algorithm to choose an appropriate step in the search direction when the NR step results in a worse estimation.
*
*
* BACKTRACKING_FAST_MLE = 5 [deprecated = true];
*/
@java.lang.Deprecated
BACKTRACKING_FAST_MLE(5),
UNRECOGNIZED(-1),
;
/**
*
* Custom Levenberg-Marquardt least-squares estimation.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
*
*
* LVM_LSE = 0;
*/
public static final int LVM_LSE_VALUE = 0;
/**
*
* Custom Levenberg-Marquardt maximum-likelihood estimation for Poisson data using the method of Laurence & Chromy (2010) Nature Methods 7, 338-339.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
* Parameters are bounded using a hard-stop limit to prevent negative function values being produced.
*
*
* LVM_MLE = 1;
*/
public static final int LVM_MLE_VALUE = 1;
/**
*
* Custom Levenberg-Marquardt weighted least-squares estimation for Poisson data using the method of Ruisheng, et al (2017) Optical Express 25, Issue 10, pp 11701-11716.
* Uses the Hessian matrix with a Newton optimisation method that requires inversion of the Hessian.
*
*
* LVM_WLSE = 2;
*/
public static final int LVM_WLSE_VALUE = 2;
/**
*
* Maximum Likelihood Estimator.
* Uses a configurable noise model for the probability density function of the data.
*
*
* MLE = 3;
*/
public static final int MLE_VALUE = 3;
/**
*
* Maximum Likelihood Estimator for Poisson data using the method of Smith et al, (2010) Nature Methods 7, 373-375.
* Uses a Newton-Raphson update step for fast convergence close to the optimum. The algorithm is unstable when the initial parameter estimate is poor.
*
*
* FAST_MLE = 4;
*/
public static final int FAST_MLE_VALUE = 4;
/**
*
* Maximum Likelihood Estimator for Poisson data using the method of Smith et al, (2010) Nature Methods 7, 373-375.
* Uses a Newton-Raphson (NR) update step for fast convergence close to the optimum. The algorithm uses a backtracking algorithm to choose an appropriate step in the search direction when the NR step results in a worse estimation.
*
*
* BACKTRACKING_FAST_MLE = 5 [deprecated = true];
*/
@java.lang.Deprecated public static final int BACKTRACKING_FAST_MLE_VALUE = 5;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static FitSolver valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static FitSolver forNumber(int value) {
switch (value) {
case 0: return LVM_LSE;
case 1: return LVM_MLE;
case 2: return LVM_WLSE;
case 3: return MLE;
case 4: return FAST_MLE;
case 5: return BACKTRACKING_FAST_MLE;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
FitSolver> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public FitSolver findValueByNumber(int number) {
return FitSolver.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(0);
}
private static final FitSolver[] VALUES = values();
public static FitSolver valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private FitSolver(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.FitSolver)
}
/**
*
* Define the search method for the configurable maximum likelihood estimator.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.SearchMethod}
*/
public enum SearchMethod
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Search using Powell's conjugate direction method using hard limits to ensure a bounded search
*
*
* POWELL_BOUNDED = 0;
*/
POWELL_BOUNDED(0),
/**
*
* Search using Powell's conjugate direction method
*
*
* POWELL = 1;
*/
POWELL(1),
/**
*
* Search using Powell's conjugate direction method using a mapping adapter to ensure a bounded search
*
*
* POWELL_ADAPTER = 2;
*/
POWELL_ADAPTER(2),
/**
*
* Search using Powell's Bound Optimization BY Quadratic Approximation (BOBYQA) algorithm.
* BOBYQA could also be considered as a replacement of any derivative-based optimizer when the derivatives are
* approximated by finite differences. This is a bounded search.
*
*
* BOBYQA = 3;
*/
BOBYQA(3),
/**
*
* Search using active Covariance Matrix Adaptation Evolution Strategy (CMA-ES).
* The CMA-ES is a reliable stochastic optimization method which should be applied if derivative-based methods,
* e.g. conjugate gradient, fail due to a rugged search landscape. This is a bounded search.
*
*
* CMAES = 4;
*/
CMAES(4),
/**
*
* Search using a non-linear conjugate gradient optimiser. Use the Fletcher-Reeves update formulas for the
* conjugate search directions.
* This is a bounded search using simple truncation of coordinates at the bounds of the search space.
*
*
* CONJUGATE_GRADIENT_FR = 5;
*/
CONJUGATE_GRADIENT_FR(5),
/**
*
* Search using a non-linear conjugate gradient optimiser. Use the Polak-Ribière update formulas for the
* conjugate search directions.
* This is a bounded search using simple truncation of coordinates at the bounds of the search space.
*
*
* CONJUGATE_GRADIENT_PR = 6;
*/
CONJUGATE_GRADIENT_PR(6),
/**
*
* Search using a Broyden-Fletcher-Goldfarb-Shanno (BFGS) gradient optimiser.
*
*
* BFGS = 7 [deprecated = true];
*/
@java.lang.Deprecated
BFGS(7),
UNRECOGNIZED(-1),
;
/**
*
* Search using Powell's conjugate direction method using hard limits to ensure a bounded search
*
*
* POWELL_BOUNDED = 0;
*/
public static final int POWELL_BOUNDED_VALUE = 0;
/**
*
* Search using Powell's conjugate direction method
*
*
* POWELL = 1;
*/
public static final int POWELL_VALUE = 1;
/**
*
* Search using Powell's conjugate direction method using a mapping adapter to ensure a bounded search
*
*
* POWELL_ADAPTER = 2;
*/
public static final int POWELL_ADAPTER_VALUE = 2;
/**
*
* Search using Powell's Bound Optimization BY Quadratic Approximation (BOBYQA) algorithm.
* BOBYQA could also be considered as a replacement of any derivative-based optimizer when the derivatives are
* approximated by finite differences. This is a bounded search.
*
*
* BOBYQA = 3;
*/
public static final int BOBYQA_VALUE = 3;
/**
*
* Search using active Covariance Matrix Adaptation Evolution Strategy (CMA-ES).
* The CMA-ES is a reliable stochastic optimization method which should be applied if derivative-based methods,
* e.g. conjugate gradient, fail due to a rugged search landscape. This is a bounded search.
*
*
* CMAES = 4;
*/
public static final int CMAES_VALUE = 4;
/**
*
* Search using a non-linear conjugate gradient optimiser. Use the Fletcher-Reeves update formulas for the
* conjugate search directions.
* This is a bounded search using simple truncation of coordinates at the bounds of the search space.
*
*
* CONJUGATE_GRADIENT_FR = 5;
*/
public static final int CONJUGATE_GRADIENT_FR_VALUE = 5;
/**
*
* Search using a non-linear conjugate gradient optimiser. Use the Polak-Ribière update formulas for the
* conjugate search directions.
* This is a bounded search using simple truncation of coordinates at the bounds of the search space.
*
*
* CONJUGATE_GRADIENT_PR = 6;
*/
public static final int CONJUGATE_GRADIENT_PR_VALUE = 6;
/**
*
* Search using a Broyden-Fletcher-Goldfarb-Shanno (BFGS) gradient optimiser.
*
*
* BFGS = 7 [deprecated = true];
*/
@java.lang.Deprecated public static final int BFGS_VALUE = 7;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static SearchMethod valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static SearchMethod forNumber(int value) {
switch (value) {
case 0: return POWELL_BOUNDED;
case 1: return POWELL;
case 2: return POWELL_ADAPTER;
case 3: return BOBYQA;
case 4: return CMAES;
case 5: return CONJUGATE_GRADIENT_FR;
case 6: return CONJUGATE_GRADIENT_PR;
case 7: return BFGS;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
SearchMethod> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public SearchMethod findValueByNumber(int number) {
return SearchMethod.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(1);
}
private static final SearchMethod[] VALUES = values();
public static SearchMethod valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private SearchMethod(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.SearchMethod)
}
/**
*
* Define the method to use when the Fast MLE line search direction is not in the same direction as
* that defined by the first derivative gradient.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod}
*/
public enum LineSearchMethod
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Do nothing to handle the incorrect orientation. The default solver action is taken.
* This may cause the search to take an invalid move or it may error.
*
*
* NONE = 0;
*/
NONE(0),
/**
*
* Ignore any search direction that is in the opposite direction to the first derivative gradient.
*
*
* IGNORE = 1;
*/
IGNORE(1),
/**
*
* Progressively ignore any search direction that is in the opposite direction to the
* first derivative gradient. Do this in order of the magnitude of the error.
*
*
* PARTIAL_IGNORE = 2;
*/
PARTIAL_IGNORE(2),
UNRECOGNIZED(-1),
;
/**
*
* Do nothing to handle the incorrect orientation. The default solver action is taken.
* This may cause the search to take an invalid move or it may error.
*
*
* NONE = 0;
*/
public static final int NONE_VALUE = 0;
/**
*
* Ignore any search direction that is in the opposite direction to the first derivative gradient.
*
*
* IGNORE = 1;
*/
public static final int IGNORE_VALUE = 1;
/**
*
* Progressively ignore any search direction that is in the opposite direction to the
* first derivative gradient. Do this in order of the magnitude of the error.
*
*
* PARTIAL_IGNORE = 2;
*/
public static final int PARTIAL_IGNORE_VALUE = 2;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static LineSearchMethod valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static LineSearchMethod forNumber(int value) {
switch (value) {
case 0: return NONE;
case 1: return IGNORE;
case 2: return PARTIAL_IGNORE;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
LineSearchMethod> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public LineSearchMethod findValueByNumber(int number) {
return LineSearchMethod.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(2);
}
private static final LineSearchMethod[] VALUES = values();
public static LineSearchMethod valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private LineSearchMethod(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod)
}
/**
*
* Define the method to use for precision calculation.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod}
*/
public enum PrecisionMethod
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Not available. The results may have been loaded from a source where the precision was computed
* using another method, or the results may have no precision.
*
*
* PRECISION_METHOD_NA = 0;
*/
PRECISION_METHOD_NA(0),
/**
*
* Estimate using the formula of Mortensen, et al (2010) Nature Methods 7, 377-383.
* The background noise component (b2) is computed using the variance of the fit region.
* Note that computation of precision using this formula is relevant only for (EM-)CCD cameras
* with a single Gaussian 2D PSF in the region. The formula is exact if the data is a 2D Gaussian
* but can be used to approximate localisation precision on any spot-type PSF. There are formulas
* for least squares or maximum likelihood estimators.
*
*
* MORTENSEN = 1;
*/
MORTENSEN(1),
/**
*
* Estimate using the formula of Mortensen, et al (2010) Nature Methods 7, 377-383.
* The background noise component (b2) is computed using the fitted background of the fit region.
* Note that computation of precision using this formula is relevant only for (EM-)CCD cameras
* with a single Gaussian 2D PSF in the region. The formula is exact if the data is a 2D Gaussian
* but can be used to approximate localisation precision on any spot-type PSF. There are formulas
* for least squares or maximum likelihood estimators.
*
*
* MORTENSEN_LOCAL_BACKGROUND = 2;
*/
MORTENSEN_LOCAL_BACKGROUND(2),
/**
*
* Compute the Cramér-Rao lower bound (CRLB) assuming a Poisson process. This uses the method of
* Smith et al, (2010). Fast, single-molecule localisation that achieves theoretically minimum
* uncertainty. Nature Methods 7, 373-375 (supplementary note), Eq. 9. It has been extended
* to a per-pixel noise component in Huang et al, (2015). Video-rate nanoscopy using sCMOS
* camera–specific single-molecule localization algorithms. Nature Methods 10, 653–658.
* Note that this formula is good when the number of photons is high. Due to the approximation
* of Gaussian noise as a Poisson distribution the likelihood function used to generate the
* Fisher information is poor when the number of photons is low, leading to an approximation
* of the true CRLB of a Poisson-Gaussian distribution.
* This method is suitable for a CCD or sCMOS camera. The Poisson noise model is less suitable
* for an EMCCD camera (since the EM component modelled by a Gamma distribution is neglected)
* but may still be used as an approximation.
*
*
* POISSON_CRLB = 3;
*/
POISSON_CRLB(3),
UNRECOGNIZED(-1),
;
/**
*
* Not available. The results may have been loaded from a source where the precision was computed
* using another method, or the results may have no precision.
*
*
* PRECISION_METHOD_NA = 0;
*/
public static final int PRECISION_METHOD_NA_VALUE = 0;
/**
*
* Estimate using the formula of Mortensen, et al (2010) Nature Methods 7, 377-383.
* The background noise component (b2) is computed using the variance of the fit region.
* Note that computation of precision using this formula is relevant only for (EM-)CCD cameras
* with a single Gaussian 2D PSF in the region. The formula is exact if the data is a 2D Gaussian
* but can be used to approximate localisation precision on any spot-type PSF. There are formulas
* for least squares or maximum likelihood estimators.
*
*
* MORTENSEN = 1;
*/
public static final int MORTENSEN_VALUE = 1;
/**
*
* Estimate using the formula of Mortensen, et al (2010) Nature Methods 7, 377-383.
* The background noise component (b2) is computed using the fitted background of the fit region.
* Note that computation of precision using this formula is relevant only for (EM-)CCD cameras
* with a single Gaussian 2D PSF in the region. The formula is exact if the data is a 2D Gaussian
* but can be used to approximate localisation precision on any spot-type PSF. There are formulas
* for least squares or maximum likelihood estimators.
*
*
* MORTENSEN_LOCAL_BACKGROUND = 2;
*/
public static final int MORTENSEN_LOCAL_BACKGROUND_VALUE = 2;
/**
*
* Compute the Cramér-Rao lower bound (CRLB) assuming a Poisson process. This uses the method of
* Smith et al, (2010). Fast, single-molecule localisation that achieves theoretically minimum
* uncertainty. Nature Methods 7, 373-375 (supplementary note), Eq. 9. It has been extended
* to a per-pixel noise component in Huang et al, (2015). Video-rate nanoscopy using sCMOS
* camera–specific single-molecule localization algorithms. Nature Methods 10, 653–658.
* Note that this formula is good when the number of photons is high. Due to the approximation
* of Gaussian noise as a Poisson distribution the likelihood function used to generate the
* Fisher information is poor when the number of photons is low, leading to an approximation
* of the true CRLB of a Poisson-Gaussian distribution.
* This method is suitable for a CCD or sCMOS camera. The Poisson noise model is less suitable
* for an EMCCD camera (since the EM component modelled by a Gamma distribution is neglected)
* but may still be used as an approximation.
*
*
* POISSON_CRLB = 3;
*/
public static final int POISSON_CRLB_VALUE = 3;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static PrecisionMethod valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static PrecisionMethod forNumber(int value) {
switch (value) {
case 0: return PRECISION_METHOD_NA;
case 1: return MORTENSEN;
case 2: return MORTENSEN_LOCAL_BACKGROUND;
case 3: return POISSON_CRLB;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
PrecisionMethod> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public PrecisionMethod findValueByNumber(int number) {
return PrecisionMethod.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(3);
}
private static final PrecisionMethod[] VALUES = values();
public static PrecisionMethod valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private PrecisionMethod(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod)
}
/**
*
* Define the type of filter used for identifying candidate peaks.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilterType}
*/
public enum DataFilterType
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Use a single filter
*
*
* SINGLE = 0;
*/
SINGLE(0),
/**
*
* Use a difference filter (the second subtracted from the first)
*
*
* DIFFERENCE = 1;
*/
DIFFERENCE(1),
/**
*
* Use a jury of multiple filters
*
*
* JURY = 2;
*/
JURY(2),
UNRECOGNIZED(-1),
;
/**
*
* Use a single filter
*
*
* SINGLE = 0;
*/
public static final int SINGLE_VALUE = 0;
/**
*
* Use a difference filter (the second subtracted from the first)
*
*
* DIFFERENCE = 1;
*/
public static final int DIFFERENCE_VALUE = 1;
/**
*
* Use a jury of multiple filters
*
*
* JURY = 2;
*/
public static final int JURY_VALUE = 2;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static DataFilterType valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static DataFilterType forNumber(int value) {
switch (value) {
case 0: return SINGLE;
case 1: return DIFFERENCE;
case 2: return JURY;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
DataFilterType> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public DataFilterType findValueByNumber(int number) {
return DataFilterType.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(4);
}
private static final DataFilterType[] VALUES = values();
public static DataFilterType valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private DataFilterType(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilterType)
}
/**
*
* Define the method used to filter the input data before identifying candidate peaks
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod}
*/
public enum DataFilterMethod
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Use a mean within a specified area
*
*
* MEAN = 0;
*/
MEAN(0),
/**
*
* Use a mean within a specified box area. The box has integer size.
*
*
* BLOCK_MEAN = 1;
*/
BLOCK_MEAN(1),
/**
*
* Use a mean within a specified circle area
*
*
* CIRCULAR_MEAN = 2;
*/
CIRCULAR_MEAN(2),
/**
*
* Use a Gaussian with a specified radius
*
*
* GAUSSIAN = 3;
*/
GAUSSIAN(3),
/**
*
* Use a median within a specified box area. The box has integer size.
*
*
* MEDIAN = 4;
*/
MEDIAN(4),
UNRECOGNIZED(-1),
;
/**
*
* Use a mean within a specified area
*
*
* MEAN = 0;
*/
public static final int MEAN_VALUE = 0;
/**
*
* Use a mean within a specified box area. The box has integer size.
*
*
* BLOCK_MEAN = 1;
*/
public static final int BLOCK_MEAN_VALUE = 1;
/**
*
* Use a mean within a specified circle area
*
*
* CIRCULAR_MEAN = 2;
*/
public static final int CIRCULAR_MEAN_VALUE = 2;
/**
*
* Use a Gaussian with a specified radius
*
*
* GAUSSIAN = 3;
*/
public static final int GAUSSIAN_VALUE = 3;
/**
*
* Use a median within a specified box area. The box has integer size.
*
*
* MEDIAN = 4;
*/
public static final int MEDIAN_VALUE = 4;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static DataFilterMethod valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static DataFilterMethod forNumber(int value) {
switch (value) {
case 0: return MEAN;
case 1: return BLOCK_MEAN;
case 2: return CIRCULAR_MEAN;
case 3: return GAUSSIAN;
case 4: return MEDIAN;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
DataFilterMethod> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public DataFilterMethod findValueByNumber(int number) {
return DataFilterMethod.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(5);
}
private static final DataFilterMethod[] VALUES = values();
public static DataFilterMethod valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private DataFilterMethod(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod)
}
/**
*
* Define the methods for noise estimation.
*
*
* Protobuf enum {@code uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod}
*/
public enum NoiseEstimatorMethod
implements com.google.protobuf.ProtocolMessageEnum {
/**
*
* Use all pixels
*
*
* ALL_PIXELS = 0;
*/
ALL_PIXELS(0),
/**
*
* Use a range around the lowest pixel in the image
*
*
* LOWEST_PIXELS = 1;
*/
LOWEST_PIXELS(1),
/**
*
* Use the psuedo-residuals and calculate the least median of squares
*
*
* RESIDUALS_LEAST_MEDIAN_OF_SQUARES = 2;
*/
RESIDUALS_LEAST_MEDIAN_OF_SQUARES(2),
/**
*
* Use the psuedo-residuals and calculate the least trimmed of squares
*
*
* RESIDUALS_LEAST_TRIMMED_OF_SQUARES = 3;
*/
RESIDUALS_LEAST_TRIMMED_OF_SQUARES(3),
/**
*
* Use the psuedo-residuals and calculate the least mean of squares
*
*
* RESIDUALS_LEAST_MEAN_OF_SQUARES = 4;
*/
RESIDUALS_LEAST_MEAN_OF_SQUARES(4),
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least median of squares
*
*
* QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES = 5;
*/
QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES(5),
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least trimmed of squares
*
*
* QUICK_RESIDUALS_LEAST_TRIMMED_OF_SQUARES = 6;
*/
QUICK_RESIDUALS_LEAST_TRIMMED_OF_SQUARES(6),
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least mean of squares
*
*
* QUICK_RESIDUALS_LEAST_MEAN_OF_SQUARES = 7;
*/
QUICK_RESIDUALS_LEAST_MEAN_OF_SQUARES(7),
UNRECOGNIZED(-1),
;
/**
*
* Use all pixels
*
*
* ALL_PIXELS = 0;
*/
public static final int ALL_PIXELS_VALUE = 0;
/**
*
* Use a range around the lowest pixel in the image
*
*
* LOWEST_PIXELS = 1;
*/
public static final int LOWEST_PIXELS_VALUE = 1;
/**
*
* Use the psuedo-residuals and calculate the least median of squares
*
*
* RESIDUALS_LEAST_MEDIAN_OF_SQUARES = 2;
*/
public static final int RESIDUALS_LEAST_MEDIAN_OF_SQUARES_VALUE = 2;
/**
*
* Use the psuedo-residuals and calculate the least trimmed of squares
*
*
* RESIDUALS_LEAST_TRIMMED_OF_SQUARES = 3;
*/
public static final int RESIDUALS_LEAST_TRIMMED_OF_SQUARES_VALUE = 3;
/**
*
* Use the psuedo-residuals and calculate the least mean of squares
*
*
* RESIDUALS_LEAST_MEAN_OF_SQUARES = 4;
*/
public static final int RESIDUALS_LEAST_MEAN_OF_SQUARES_VALUE = 4;
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least median of squares
*
*
* QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES = 5;
*/
public static final int QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES_VALUE = 5;
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least trimmed of squares
*
*
* QUICK_RESIDUALS_LEAST_TRIMMED_OF_SQUARES = 6;
*/
public static final int QUICK_RESIDUALS_LEAST_TRIMMED_OF_SQUARES_VALUE = 6;
/**
*
* Use the psuedo-residuals ignoring image border and calculate the least mean of squares
*
*
* QUICK_RESIDUALS_LEAST_MEAN_OF_SQUARES = 7;
*/
public static final int QUICK_RESIDUALS_LEAST_MEAN_OF_SQUARES_VALUE = 7;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static NoiseEstimatorMethod valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static NoiseEstimatorMethod forNumber(int value) {
switch (value) {
case 0: return ALL_PIXELS;
case 1: return LOWEST_PIXELS;
case 2: return RESIDUALS_LEAST_MEDIAN_OF_SQUARES;
case 3: return RESIDUALS_LEAST_TRIMMED_OF_SQUARES;
case 4: return RESIDUALS_LEAST_MEAN_OF_SQUARES;
case 5: return QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES;
case 6: return QUICK_RESIDUALS_LEAST_TRIMMED_OF_SQUARES;
case 7: return QUICK_RESIDUALS_LEAST_MEAN_OF_SQUARES;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
NoiseEstimatorMethod> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap() {
public NoiseEstimatorMethod findValueByNumber(int number) {
return NoiseEstimatorMethod.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.getDescriptor().getEnumTypes().get(6);
}
private static final NoiseEstimatorMethod[] VALUES = values();
public static NoiseEstimatorMethod valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private NoiseEstimatorMethod(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod)
}
public interface FitSolverSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* Set to true to fix the PSF using the initial parameters
*
*
* bool fixed_psf = 1;
* @return The fixedPsf.
*/
boolean getFixedPsf();
/**
*
* Set to true to disable background fitting
*
*
* bool disable_background_fitting = 2;
* @return The disableBackgroundFitting.
*/
boolean getDisableBackgroundFitting();
/**
*
* Set to true to disable signal intensity fitting
*
*
* bool disable_signal_fitting = 3;
* @return The disableSignalFitting.
*/
boolean getDisableSignalFitting();
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The enum numeric value on the wire for fitSolver.
*/
int getFitSolverValue();
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The fitSolver.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver getFitSolver();
/**
*
* Set to true to use a fixed number of iterations during fitting
*
*
* bool fixed_iterations = 5;
* @return The fixedIterations.
*/
boolean getFixedIterations();
/**
*
* The maximum/fixed iterations to use during fitting.
* If not using fixed iterations then fitting will fail if this limit is reached.
*
*
* int32 max_iterations = 6;
* @return The maxIterations.
*/
int getMaxIterations();
/**
*
* The relative threshold for convergence on the function score. Set to negative to disable.
*
*
* double relative_threshold = 7;
* @return The relativeThreshold.
*/
double getRelativeThreshold();
/**
*
* The absolute threshold for convergence on the function score. Set to negative to disable.
*
*
* double absolute_threshold = 8;
* @return The absoluteThreshold.
*/
double getAbsoluteThreshold();
/**
*
* The relative threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_relative_threshold = 9;
* @return The parameterRelativeThreshold.
*/
double getParameterRelativeThreshold();
/**
*
* The absolute threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_absolute_threshold = 10;
* @return The parameterAbsoluteThreshold.
*/
double getParameterAbsoluteThreshold();
/**
*
* The initial lambda parameter for the Levenberg-Marquardt algorithm
*
*
* double lambda = 11;
* @return The lambda.
*/
double getLambda();
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The enum numeric value on the wire for searchMethod.
*/
int getSearchMethodValue();
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The searchMethod.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod getSearchMethod();
/**
*
* Set to true to use the function gradient during line minimisation, i.e. find the
* parameters where the gradient is zero. The default is the to minimise the function value.
*
*
* bool gradient_line_minimisation = 13;
* @return The gradientLineMinimisation.
*/
boolean getGradientLineMinimisation();
/**
*
* Set to true to model the camera noise in the configurable maximum likelihood estimator.
*
*
* bool model_camera = 14;
* @return The modelCamera.
*/
boolean getModelCamera();
/**
*
* The maximum number of function evaluations in the configurable maximum likelihood estimator.
*
*
* int32 max_function_evaluations = 15;
* @return The maxFunctionEvaluations.
*/
int getMaxFunctionEvaluations();
/**
*
* Set to true to use parameter clamping
*
*
* bool use_clamping = 16;
* @return The useClamping.
*/
boolean getUseClamping();
/**
*
* Set to true to use dynamic parameter clamping, i.e. update the clamp values when the step direction changes
*
*
* bool use_dynamic_clamping = 17;
* @return The useDynamicClamping.
*/
boolean getUseDynamicClamping();
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return A list containing the clampValues.
*/
java.util.List getClampValuesList();
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return The count of clampValues.
*/
int getClampValuesCount();
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param index The index of the element to return.
* @return The clampValues at the given index.
*/
double getClampValues(int index);
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The enum numeric value on the wire for lineSearchMethod.
*/
int getLineSearchMethodValue();
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The lineSearchMethod.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod getLineSearchMethod();
}
/**
*
* Define settings for the fit solver.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings}
*/
public static final class FitSolverSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings)
FitSolverSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use FitSolverSettings.newBuilder() to construct.
private FitSolverSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private FitSolverSettings() {
fitSolver_ = 0;
searchMethod_ = 0;
clampValues_ = emptyDoubleList();
lineSearchMethod_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new FitSolverSettings();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder.class);
}
public static final int FIXED_PSF_FIELD_NUMBER = 1;
private boolean fixedPsf_ = false;
/**
*
* Set to true to fix the PSF using the initial parameters
*
*
* bool fixed_psf = 1;
* @return The fixedPsf.
*/
@java.lang.Override
public boolean getFixedPsf() {
return fixedPsf_;
}
public static final int DISABLE_BACKGROUND_FITTING_FIELD_NUMBER = 2;
private boolean disableBackgroundFitting_ = false;
/**
*
* Set to true to disable background fitting
*
*
* bool disable_background_fitting = 2;
* @return The disableBackgroundFitting.
*/
@java.lang.Override
public boolean getDisableBackgroundFitting() {
return disableBackgroundFitting_;
}
public static final int DISABLE_SIGNAL_FITTING_FIELD_NUMBER = 3;
private boolean disableSignalFitting_ = false;
/**
*
* Set to true to disable signal intensity fitting
*
*
* bool disable_signal_fitting = 3;
* @return The disableSignalFitting.
*/
@java.lang.Override
public boolean getDisableSignalFitting() {
return disableSignalFitting_;
}
public static final int FIT_SOLVER_FIELD_NUMBER = 4;
private int fitSolver_ = 0;
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The enum numeric value on the wire for fitSolver.
*/
@java.lang.Override public int getFitSolverValue() {
return fitSolver_;
}
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The fitSolver.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver getFitSolver() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.forNumber(fitSolver_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.UNRECOGNIZED : result;
}
public static final int FIXED_ITERATIONS_FIELD_NUMBER = 5;
private boolean fixedIterations_ = false;
/**
*
* Set to true to use a fixed number of iterations during fitting
*
*
* bool fixed_iterations = 5;
* @return The fixedIterations.
*/
@java.lang.Override
public boolean getFixedIterations() {
return fixedIterations_;
}
public static final int MAX_ITERATIONS_FIELD_NUMBER = 6;
private int maxIterations_ = 0;
/**
*
* The maximum/fixed iterations to use during fitting.
* If not using fixed iterations then fitting will fail if this limit is reached.
*
*
* int32 max_iterations = 6;
* @return The maxIterations.
*/
@java.lang.Override
public int getMaxIterations() {
return maxIterations_;
}
public static final int RELATIVE_THRESHOLD_FIELD_NUMBER = 7;
private double relativeThreshold_ = 0D;
/**
*
* The relative threshold for convergence on the function score. Set to negative to disable.
*
*
* double relative_threshold = 7;
* @return The relativeThreshold.
*/
@java.lang.Override
public double getRelativeThreshold() {
return relativeThreshold_;
}
public static final int ABSOLUTE_THRESHOLD_FIELD_NUMBER = 8;
private double absoluteThreshold_ = 0D;
/**
*
* The absolute threshold for convergence on the function score. Set to negative to disable.
*
*
* double absolute_threshold = 8;
* @return The absoluteThreshold.
*/
@java.lang.Override
public double getAbsoluteThreshold() {
return absoluteThreshold_;
}
public static final int PARAMETER_RELATIVE_THRESHOLD_FIELD_NUMBER = 9;
private double parameterRelativeThreshold_ = 0D;
/**
*
* The relative threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_relative_threshold = 9;
* @return The parameterRelativeThreshold.
*/
@java.lang.Override
public double getParameterRelativeThreshold() {
return parameterRelativeThreshold_;
}
public static final int PARAMETER_ABSOLUTE_THRESHOLD_FIELD_NUMBER = 10;
private double parameterAbsoluteThreshold_ = 0D;
/**
*
* The absolute threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_absolute_threshold = 10;
* @return The parameterAbsoluteThreshold.
*/
@java.lang.Override
public double getParameterAbsoluteThreshold() {
return parameterAbsoluteThreshold_;
}
public static final int LAMBDA_FIELD_NUMBER = 11;
private double lambda_ = 0D;
/**
*
* The initial lambda parameter for the Levenberg-Marquardt algorithm
*
*
* double lambda = 11;
* @return The lambda.
*/
@java.lang.Override
public double getLambda() {
return lambda_;
}
public static final int SEARCH_METHOD_FIELD_NUMBER = 12;
private int searchMethod_ = 0;
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The enum numeric value on the wire for searchMethod.
*/
@java.lang.Override public int getSearchMethodValue() {
return searchMethod_;
}
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The searchMethod.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod getSearchMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.forNumber(searchMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.UNRECOGNIZED : result;
}
public static final int GRADIENT_LINE_MINIMISATION_FIELD_NUMBER = 13;
private boolean gradientLineMinimisation_ = false;
/**
*
* Set to true to use the function gradient during line minimisation, i.e. find the
* parameters where the gradient is zero. The default is the to minimise the function value.
*
*
* bool gradient_line_minimisation = 13;
* @return The gradientLineMinimisation.
*/
@java.lang.Override
public boolean getGradientLineMinimisation() {
return gradientLineMinimisation_;
}
public static final int MODEL_CAMERA_FIELD_NUMBER = 14;
private boolean modelCamera_ = false;
/**
*
* Set to true to model the camera noise in the configurable maximum likelihood estimator.
*
*
* bool model_camera = 14;
* @return The modelCamera.
*/
@java.lang.Override
public boolean getModelCamera() {
return modelCamera_;
}
public static final int MAX_FUNCTION_EVALUATIONS_FIELD_NUMBER = 15;
private int maxFunctionEvaluations_ = 0;
/**
*
* The maximum number of function evaluations in the configurable maximum likelihood estimator.
*
*
* int32 max_function_evaluations = 15;
* @return The maxFunctionEvaluations.
*/
@java.lang.Override
public int getMaxFunctionEvaluations() {
return maxFunctionEvaluations_;
}
public static final int USE_CLAMPING_FIELD_NUMBER = 16;
private boolean useClamping_ = false;
/**
*
* Set to true to use parameter clamping
*
*
* bool use_clamping = 16;
* @return The useClamping.
*/
@java.lang.Override
public boolean getUseClamping() {
return useClamping_;
}
public static final int USE_DYNAMIC_CLAMPING_FIELD_NUMBER = 17;
private boolean useDynamicClamping_ = false;
/**
*
* Set to true to use dynamic parameter clamping, i.e. update the clamp values when the step direction changes
*
*
* bool use_dynamic_clamping = 17;
* @return The useDynamicClamping.
*/
@java.lang.Override
public boolean getUseDynamicClamping() {
return useDynamicClamping_;
}
public static final int CLAMP_VALUES_FIELD_NUMBER = 18;
@SuppressWarnings("serial")
private com.google.protobuf.Internal.DoubleList clampValues_;
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return A list containing the clampValues.
*/
@java.lang.Override
public java.util.List
getClampValuesList() {
return clampValues_;
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return The count of clampValues.
*/
public int getClampValuesCount() {
return clampValues_.size();
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param index The index of the element to return.
* @return The clampValues at the given index.
*/
public double getClampValues(int index) {
return clampValues_.getDouble(index);
}
private int clampValuesMemoizedSerializedSize = -1;
public static final int LINE_SEARCH_METHOD_FIELD_NUMBER = 19;
private int lineSearchMethod_ = 0;
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The enum numeric value on the wire for lineSearchMethod.
*/
@java.lang.Override public int getLineSearchMethodValue() {
return lineSearchMethod_;
}
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The lineSearchMethod.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod getLineSearchMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.forNumber(lineSearchMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.UNRECOGNIZED : result;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
if (fixedPsf_ != false) {
output.writeBool(1, fixedPsf_);
}
if (disableBackgroundFitting_ != false) {
output.writeBool(2, disableBackgroundFitting_);
}
if (disableSignalFitting_ != false) {
output.writeBool(3, disableSignalFitting_);
}
if (fitSolver_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.LVM_LSE.getNumber()) {
output.writeEnum(4, fitSolver_);
}
if (fixedIterations_ != false) {
output.writeBool(5, fixedIterations_);
}
if (maxIterations_ != 0) {
output.writeInt32(6, maxIterations_);
}
if (java.lang.Double.doubleToRawLongBits(relativeThreshold_) != 0) {
output.writeDouble(7, relativeThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(absoluteThreshold_) != 0) {
output.writeDouble(8, absoluteThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(parameterRelativeThreshold_) != 0) {
output.writeDouble(9, parameterRelativeThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(parameterAbsoluteThreshold_) != 0) {
output.writeDouble(10, parameterAbsoluteThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(lambda_) != 0) {
output.writeDouble(11, lambda_);
}
if (searchMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.POWELL_BOUNDED.getNumber()) {
output.writeEnum(12, searchMethod_);
}
if (gradientLineMinimisation_ != false) {
output.writeBool(13, gradientLineMinimisation_);
}
if (modelCamera_ != false) {
output.writeBool(14, modelCamera_);
}
if (maxFunctionEvaluations_ != 0) {
output.writeInt32(15, maxFunctionEvaluations_);
}
if (useClamping_ != false) {
output.writeBool(16, useClamping_);
}
if (useDynamicClamping_ != false) {
output.writeBool(17, useDynamicClamping_);
}
if (getClampValuesList().size() > 0) {
output.writeUInt32NoTag(146);
output.writeUInt32NoTag(clampValuesMemoizedSerializedSize);
}
for (int i = 0; i < clampValues_.size(); i++) {
output.writeDoubleNoTag(clampValues_.getDouble(i));
}
if (lineSearchMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.NONE.getNumber()) {
output.writeEnum(19, lineSearchMethod_);
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (fixedPsf_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(1, fixedPsf_);
}
if (disableBackgroundFitting_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(2, disableBackgroundFitting_);
}
if (disableSignalFitting_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(3, disableSignalFitting_);
}
if (fitSolver_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.LVM_LSE.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(4, fitSolver_);
}
if (fixedIterations_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(5, fixedIterations_);
}
if (maxIterations_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(6, maxIterations_);
}
if (java.lang.Double.doubleToRawLongBits(relativeThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(7, relativeThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(absoluteThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(8, absoluteThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(parameterRelativeThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(9, parameterRelativeThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(parameterAbsoluteThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(10, parameterAbsoluteThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(lambda_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(11, lambda_);
}
if (searchMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.POWELL_BOUNDED.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(12, searchMethod_);
}
if (gradientLineMinimisation_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(13, gradientLineMinimisation_);
}
if (modelCamera_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(14, modelCamera_);
}
if (maxFunctionEvaluations_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(15, maxFunctionEvaluations_);
}
if (useClamping_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(16, useClamping_);
}
if (useDynamicClamping_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(17, useDynamicClamping_);
}
{
int dataSize = 0;
dataSize = 8 * getClampValuesList().size();
size += dataSize;
if (!getClampValuesList().isEmpty()) {
size += 2;
size += com.google.protobuf.CodedOutputStream
.computeInt32SizeNoTag(dataSize);
}
clampValuesMemoizedSerializedSize = dataSize;
}
if (lineSearchMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.NONE.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(19, lineSearchMethod_);
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings) obj;
if (getFixedPsf()
!= other.getFixedPsf()) return false;
if (getDisableBackgroundFitting()
!= other.getDisableBackgroundFitting()) return false;
if (getDisableSignalFitting()
!= other.getDisableSignalFitting()) return false;
if (fitSolver_ != other.fitSolver_) return false;
if (getFixedIterations()
!= other.getFixedIterations()) return false;
if (getMaxIterations()
!= other.getMaxIterations()) return false;
if (java.lang.Double.doubleToLongBits(getRelativeThreshold())
!= java.lang.Double.doubleToLongBits(
other.getRelativeThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getAbsoluteThreshold())
!= java.lang.Double.doubleToLongBits(
other.getAbsoluteThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getParameterRelativeThreshold())
!= java.lang.Double.doubleToLongBits(
other.getParameterRelativeThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getParameterAbsoluteThreshold())
!= java.lang.Double.doubleToLongBits(
other.getParameterAbsoluteThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getLambda())
!= java.lang.Double.doubleToLongBits(
other.getLambda())) return false;
if (searchMethod_ != other.searchMethod_) return false;
if (getGradientLineMinimisation()
!= other.getGradientLineMinimisation()) return false;
if (getModelCamera()
!= other.getModelCamera()) return false;
if (getMaxFunctionEvaluations()
!= other.getMaxFunctionEvaluations()) return false;
if (getUseClamping()
!= other.getUseClamping()) return false;
if (getUseDynamicClamping()
!= other.getUseDynamicClamping()) return false;
if (!getClampValuesList()
.equals(other.getClampValuesList())) return false;
if (lineSearchMethod_ != other.lineSearchMethod_) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + FIXED_PSF_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getFixedPsf());
hash = (37 * hash) + DISABLE_BACKGROUND_FITTING_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getDisableBackgroundFitting());
hash = (37 * hash) + DISABLE_SIGNAL_FITTING_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getDisableSignalFitting());
hash = (37 * hash) + FIT_SOLVER_FIELD_NUMBER;
hash = (53 * hash) + fitSolver_;
hash = (37 * hash) + FIXED_ITERATIONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getFixedIterations());
hash = (37 * hash) + MAX_ITERATIONS_FIELD_NUMBER;
hash = (53 * hash) + getMaxIterations();
hash = (37 * hash) + RELATIVE_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getRelativeThreshold()));
hash = (37 * hash) + ABSOLUTE_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getAbsoluteThreshold()));
hash = (37 * hash) + PARAMETER_RELATIVE_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getParameterRelativeThreshold()));
hash = (37 * hash) + PARAMETER_ABSOLUTE_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getParameterAbsoluteThreshold()));
hash = (37 * hash) + LAMBDA_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getLambda()));
hash = (37 * hash) + SEARCH_METHOD_FIELD_NUMBER;
hash = (53 * hash) + searchMethod_;
hash = (37 * hash) + GRADIENT_LINE_MINIMISATION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getGradientLineMinimisation());
hash = (37 * hash) + MODEL_CAMERA_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getModelCamera());
hash = (37 * hash) + MAX_FUNCTION_EVALUATIONS_FIELD_NUMBER;
hash = (53 * hash) + getMaxFunctionEvaluations();
hash = (37 * hash) + USE_CLAMPING_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getUseClamping());
hash = (37 * hash) + USE_DYNAMIC_CLAMPING_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getUseDynamicClamping());
if (getClampValuesCount() > 0) {
hash = (37 * hash) + CLAMP_VALUES_FIELD_NUMBER;
hash = (53 * hash) + getClampValuesList().hashCode();
}
hash = (37 * hash) + LINE_SEARCH_METHOD_FIELD_NUMBER;
hash = (53 * hash) + lineSearchMethod_;
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define settings for the fit solver.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
fixedPsf_ = false;
disableBackgroundFitting_ = false;
disableSignalFitting_ = false;
fitSolver_ = 0;
fixedIterations_ = false;
maxIterations_ = 0;
relativeThreshold_ = 0D;
absoluteThreshold_ = 0D;
parameterRelativeThreshold_ = 0D;
parameterAbsoluteThreshold_ = 0D;
lambda_ = 0D;
searchMethod_ = 0;
gradientLineMinimisation_ = false;
modelCamera_ = false;
maxFunctionEvaluations_ = 0;
useClamping_ = false;
useDynamicClamping_ = false;
clampValues_ = emptyDoubleList();
lineSearchMethod_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings(this);
buildPartialRepeatedFields(result);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartialRepeatedFields(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings result) {
if (((bitField0_ & 0x00020000) != 0)) {
clampValues_.makeImmutable();
bitField0_ = (bitField0_ & ~0x00020000);
}
result.clampValues_ = clampValues_;
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.fixedPsf_ = fixedPsf_;
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.disableBackgroundFitting_ = disableBackgroundFitting_;
}
if (((from_bitField0_ & 0x00000004) != 0)) {
result.disableSignalFitting_ = disableSignalFitting_;
}
if (((from_bitField0_ & 0x00000008) != 0)) {
result.fitSolver_ = fitSolver_;
}
if (((from_bitField0_ & 0x00000010) != 0)) {
result.fixedIterations_ = fixedIterations_;
}
if (((from_bitField0_ & 0x00000020) != 0)) {
result.maxIterations_ = maxIterations_;
}
if (((from_bitField0_ & 0x00000040) != 0)) {
result.relativeThreshold_ = relativeThreshold_;
}
if (((from_bitField0_ & 0x00000080) != 0)) {
result.absoluteThreshold_ = absoluteThreshold_;
}
if (((from_bitField0_ & 0x00000100) != 0)) {
result.parameterRelativeThreshold_ = parameterRelativeThreshold_;
}
if (((from_bitField0_ & 0x00000200) != 0)) {
result.parameterAbsoluteThreshold_ = parameterAbsoluteThreshold_;
}
if (((from_bitField0_ & 0x00000400) != 0)) {
result.lambda_ = lambda_;
}
if (((from_bitField0_ & 0x00000800) != 0)) {
result.searchMethod_ = searchMethod_;
}
if (((from_bitField0_ & 0x00001000) != 0)) {
result.gradientLineMinimisation_ = gradientLineMinimisation_;
}
if (((from_bitField0_ & 0x00002000) != 0)) {
result.modelCamera_ = modelCamera_;
}
if (((from_bitField0_ & 0x00004000) != 0)) {
result.maxFunctionEvaluations_ = maxFunctionEvaluations_;
}
if (((from_bitField0_ & 0x00008000) != 0)) {
result.useClamping_ = useClamping_;
}
if (((from_bitField0_ & 0x00010000) != 0)) {
result.useDynamicClamping_ = useDynamicClamping_;
}
if (((from_bitField0_ & 0x00040000) != 0)) {
result.lineSearchMethod_ = lineSearchMethod_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance()) return this;
if (other.getFixedPsf() != false) {
setFixedPsf(other.getFixedPsf());
}
if (other.getDisableBackgroundFitting() != false) {
setDisableBackgroundFitting(other.getDisableBackgroundFitting());
}
if (other.getDisableSignalFitting() != false) {
setDisableSignalFitting(other.getDisableSignalFitting());
}
if (other.fitSolver_ != 0) {
setFitSolverValue(other.getFitSolverValue());
}
if (other.getFixedIterations() != false) {
setFixedIterations(other.getFixedIterations());
}
if (other.getMaxIterations() != 0) {
setMaxIterations(other.getMaxIterations());
}
if (other.getRelativeThreshold() != 0D) {
setRelativeThreshold(other.getRelativeThreshold());
}
if (other.getAbsoluteThreshold() != 0D) {
setAbsoluteThreshold(other.getAbsoluteThreshold());
}
if (other.getParameterRelativeThreshold() != 0D) {
setParameterRelativeThreshold(other.getParameterRelativeThreshold());
}
if (other.getParameterAbsoluteThreshold() != 0D) {
setParameterAbsoluteThreshold(other.getParameterAbsoluteThreshold());
}
if (other.getLambda() != 0D) {
setLambda(other.getLambda());
}
if (other.searchMethod_ != 0) {
setSearchMethodValue(other.getSearchMethodValue());
}
if (other.getGradientLineMinimisation() != false) {
setGradientLineMinimisation(other.getGradientLineMinimisation());
}
if (other.getModelCamera() != false) {
setModelCamera(other.getModelCamera());
}
if (other.getMaxFunctionEvaluations() != 0) {
setMaxFunctionEvaluations(other.getMaxFunctionEvaluations());
}
if (other.getUseClamping() != false) {
setUseClamping(other.getUseClamping());
}
if (other.getUseDynamicClamping() != false) {
setUseDynamicClamping(other.getUseDynamicClamping());
}
if (!other.clampValues_.isEmpty()) {
if (clampValues_.isEmpty()) {
clampValues_ = other.clampValues_;
bitField0_ = (bitField0_ & ~0x00020000);
} else {
ensureClampValuesIsMutable();
clampValues_.addAll(other.clampValues_);
}
onChanged();
}
if (other.lineSearchMethod_ != 0) {
setLineSearchMethodValue(other.getLineSearchMethodValue());
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
fixedPsf_ = input.readBool();
bitField0_ |= 0x00000001;
break;
} // case 8
case 16: {
disableBackgroundFitting_ = input.readBool();
bitField0_ |= 0x00000002;
break;
} // case 16
case 24: {
disableSignalFitting_ = input.readBool();
bitField0_ |= 0x00000004;
break;
} // case 24
case 32: {
fitSolver_ = input.readEnum();
bitField0_ |= 0x00000008;
break;
} // case 32
case 40: {
fixedIterations_ = input.readBool();
bitField0_ |= 0x00000010;
break;
} // case 40
case 48: {
maxIterations_ = input.readInt32();
bitField0_ |= 0x00000020;
break;
} // case 48
case 57: {
relativeThreshold_ = input.readDouble();
bitField0_ |= 0x00000040;
break;
} // case 57
case 65: {
absoluteThreshold_ = input.readDouble();
bitField0_ |= 0x00000080;
break;
} // case 65
case 73: {
parameterRelativeThreshold_ = input.readDouble();
bitField0_ |= 0x00000100;
break;
} // case 73
case 81: {
parameterAbsoluteThreshold_ = input.readDouble();
bitField0_ |= 0x00000200;
break;
} // case 81
case 89: {
lambda_ = input.readDouble();
bitField0_ |= 0x00000400;
break;
} // case 89
case 96: {
searchMethod_ = input.readEnum();
bitField0_ |= 0x00000800;
break;
} // case 96
case 104: {
gradientLineMinimisation_ = input.readBool();
bitField0_ |= 0x00001000;
break;
} // case 104
case 112: {
modelCamera_ = input.readBool();
bitField0_ |= 0x00002000;
break;
} // case 112
case 120: {
maxFunctionEvaluations_ = input.readInt32();
bitField0_ |= 0x00004000;
break;
} // case 120
case 128: {
useClamping_ = input.readBool();
bitField0_ |= 0x00008000;
break;
} // case 128
case 136: {
useDynamicClamping_ = input.readBool();
bitField0_ |= 0x00010000;
break;
} // case 136
case 145: {
double v = input.readDouble();
ensureClampValuesIsMutable();
clampValues_.addDouble(v);
break;
} // case 145
case 146: {
int length = input.readRawVarint32();
int limit = input.pushLimit(length);
ensureClampValuesIsMutable();
while (input.getBytesUntilLimit() > 0) {
clampValues_.addDouble(input.readDouble());
}
input.popLimit(limit);
break;
} // case 146
case 152: {
lineSearchMethod_ = input.readEnum();
bitField0_ |= 0x00040000;
break;
} // case 152
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private boolean fixedPsf_ ;
/**
*
* Set to true to fix the PSF using the initial parameters
*
*
* bool fixed_psf = 1;
* @return The fixedPsf.
*/
@java.lang.Override
public boolean getFixedPsf() {
return fixedPsf_;
}
/**
*
* Set to true to fix the PSF using the initial parameters
*
*
* bool fixed_psf = 1;
* @param value The fixedPsf to set.
* @return This builder for chaining.
*/
public Builder setFixedPsf(boolean value) {
fixedPsf_ = value;
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* Set to true to fix the PSF using the initial parameters
*
*
* bool fixed_psf = 1;
* @return This builder for chaining.
*/
public Builder clearFixedPsf() {
bitField0_ = (bitField0_ & ~0x00000001);
fixedPsf_ = false;
onChanged();
return this;
}
private boolean disableBackgroundFitting_ ;
/**
*
* Set to true to disable background fitting
*
*
* bool disable_background_fitting = 2;
* @return The disableBackgroundFitting.
*/
@java.lang.Override
public boolean getDisableBackgroundFitting() {
return disableBackgroundFitting_;
}
/**
*
* Set to true to disable background fitting
*
*
* bool disable_background_fitting = 2;
* @param value The disableBackgroundFitting to set.
* @return This builder for chaining.
*/
public Builder setDisableBackgroundFitting(boolean value) {
disableBackgroundFitting_ = value;
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* Set to true to disable background fitting
*
*
* bool disable_background_fitting = 2;
* @return This builder for chaining.
*/
public Builder clearDisableBackgroundFitting() {
bitField0_ = (bitField0_ & ~0x00000002);
disableBackgroundFitting_ = false;
onChanged();
return this;
}
private boolean disableSignalFitting_ ;
/**
*
* Set to true to disable signal intensity fitting
*
*
* bool disable_signal_fitting = 3;
* @return The disableSignalFitting.
*/
@java.lang.Override
public boolean getDisableSignalFitting() {
return disableSignalFitting_;
}
/**
*
* Set to true to disable signal intensity fitting
*
*
* bool disable_signal_fitting = 3;
* @param value The disableSignalFitting to set.
* @return This builder for chaining.
*/
public Builder setDisableSignalFitting(boolean value) {
disableSignalFitting_ = value;
bitField0_ |= 0x00000004;
onChanged();
return this;
}
/**
*
* Set to true to disable signal intensity fitting
*
*
* bool disable_signal_fitting = 3;
* @return This builder for chaining.
*/
public Builder clearDisableSignalFitting() {
bitField0_ = (bitField0_ & ~0x00000004);
disableSignalFitting_ = false;
onChanged();
return this;
}
private int fitSolver_ = 0;
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The enum numeric value on the wire for fitSolver.
*/
@java.lang.Override public int getFitSolverValue() {
return fitSolver_;
}
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @param value The enum numeric value on the wire for fitSolver to set.
* @return This builder for chaining.
*/
public Builder setFitSolverValue(int value) {
fitSolver_ = value;
bitField0_ |= 0x00000008;
onChanged();
return this;
}
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return The fitSolver.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver getFitSolver() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.forNumber(fitSolver_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver.UNRECOGNIZED : result;
}
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @param value The fitSolver to set.
* @return This builder for chaining.
*/
public Builder setFitSolver(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolver value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000008;
fitSolver_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The type of fit solver
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolver fit_solver = 4;
* @return This builder for chaining.
*/
public Builder clearFitSolver() {
bitField0_ = (bitField0_ & ~0x00000008);
fitSolver_ = 0;
onChanged();
return this;
}
private boolean fixedIterations_ ;
/**
*
* Set to true to use a fixed number of iterations during fitting
*
*
* bool fixed_iterations = 5;
* @return The fixedIterations.
*/
@java.lang.Override
public boolean getFixedIterations() {
return fixedIterations_;
}
/**
*
* Set to true to use a fixed number of iterations during fitting
*
*
* bool fixed_iterations = 5;
* @param value The fixedIterations to set.
* @return This builder for chaining.
*/
public Builder setFixedIterations(boolean value) {
fixedIterations_ = value;
bitField0_ |= 0x00000010;
onChanged();
return this;
}
/**
*
* Set to true to use a fixed number of iterations during fitting
*
*
* bool fixed_iterations = 5;
* @return This builder for chaining.
*/
public Builder clearFixedIterations() {
bitField0_ = (bitField0_ & ~0x00000010);
fixedIterations_ = false;
onChanged();
return this;
}
private int maxIterations_ ;
/**
*
* The maximum/fixed iterations to use during fitting.
* If not using fixed iterations then fitting will fail if this limit is reached.
*
*
* int32 max_iterations = 6;
* @return The maxIterations.
*/
@java.lang.Override
public int getMaxIterations() {
return maxIterations_;
}
/**
*
* The maximum/fixed iterations to use during fitting.
* If not using fixed iterations then fitting will fail if this limit is reached.
*
*
* int32 max_iterations = 6;
* @param value The maxIterations to set.
* @return This builder for chaining.
*/
public Builder setMaxIterations(int value) {
maxIterations_ = value;
bitField0_ |= 0x00000020;
onChanged();
return this;
}
/**
*
* The maximum/fixed iterations to use during fitting.
* If not using fixed iterations then fitting will fail if this limit is reached.
*
*
* int32 max_iterations = 6;
* @return This builder for chaining.
*/
public Builder clearMaxIterations() {
bitField0_ = (bitField0_ & ~0x00000020);
maxIterations_ = 0;
onChanged();
return this;
}
private double relativeThreshold_ ;
/**
*
* The relative threshold for convergence on the function score. Set to negative to disable.
*
*
* double relative_threshold = 7;
* @return The relativeThreshold.
*/
@java.lang.Override
public double getRelativeThreshold() {
return relativeThreshold_;
}
/**
*
* The relative threshold for convergence on the function score. Set to negative to disable.
*
*
* double relative_threshold = 7;
* @param value The relativeThreshold to set.
* @return This builder for chaining.
*/
public Builder setRelativeThreshold(double value) {
relativeThreshold_ = value;
bitField0_ |= 0x00000040;
onChanged();
return this;
}
/**
*
* The relative threshold for convergence on the function score. Set to negative to disable.
*
*
* double relative_threshold = 7;
* @return This builder for chaining.
*/
public Builder clearRelativeThreshold() {
bitField0_ = (bitField0_ & ~0x00000040);
relativeThreshold_ = 0D;
onChanged();
return this;
}
private double absoluteThreshold_ ;
/**
*
* The absolute threshold for convergence on the function score. Set to negative to disable.
*
*
* double absolute_threshold = 8;
* @return The absoluteThreshold.
*/
@java.lang.Override
public double getAbsoluteThreshold() {
return absoluteThreshold_;
}
/**
*
* The absolute threshold for convergence on the function score. Set to negative to disable.
*
*
* double absolute_threshold = 8;
* @param value The absoluteThreshold to set.
* @return This builder for chaining.
*/
public Builder setAbsoluteThreshold(double value) {
absoluteThreshold_ = value;
bitField0_ |= 0x00000080;
onChanged();
return this;
}
/**
*
* The absolute threshold for convergence on the function score. Set to negative to disable.
*
*
* double absolute_threshold = 8;
* @return This builder for chaining.
*/
public Builder clearAbsoluteThreshold() {
bitField0_ = (bitField0_ & ~0x00000080);
absoluteThreshold_ = 0D;
onChanged();
return this;
}
private double parameterRelativeThreshold_ ;
/**
*
* The relative threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_relative_threshold = 9;
* @return The parameterRelativeThreshold.
*/
@java.lang.Override
public double getParameterRelativeThreshold() {
return parameterRelativeThreshold_;
}
/**
*
* The relative threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_relative_threshold = 9;
* @param value The parameterRelativeThreshold to set.
* @return This builder for chaining.
*/
public Builder setParameterRelativeThreshold(double value) {
parameterRelativeThreshold_ = value;
bitField0_ |= 0x00000100;
onChanged();
return this;
}
/**
*
* The relative threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_relative_threshold = 9;
* @return This builder for chaining.
*/
public Builder clearParameterRelativeThreshold() {
bitField0_ = (bitField0_ & ~0x00000100);
parameterRelativeThreshold_ = 0D;
onChanged();
return this;
}
private double parameterAbsoluteThreshold_ ;
/**
*
* The absolute threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_absolute_threshold = 10;
* @return The parameterAbsoluteThreshold.
*/
@java.lang.Override
public double getParameterAbsoluteThreshold() {
return parameterAbsoluteThreshold_;
}
/**
*
* The absolute threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_absolute_threshold = 10;
* @param value The parameterAbsoluteThreshold to set.
* @return This builder for chaining.
*/
public Builder setParameterAbsoluteThreshold(double value) {
parameterAbsoluteThreshold_ = value;
bitField0_ |= 0x00000200;
onChanged();
return this;
}
/**
*
* The absolute threshold for convergence on the function parameters. Set to negative to disable.
*
*
* double parameter_absolute_threshold = 10;
* @return This builder for chaining.
*/
public Builder clearParameterAbsoluteThreshold() {
bitField0_ = (bitField0_ & ~0x00000200);
parameterAbsoluteThreshold_ = 0D;
onChanged();
return this;
}
private double lambda_ ;
/**
*
* The initial lambda parameter for the Levenberg-Marquardt algorithm
*
*
* double lambda = 11;
* @return The lambda.
*/
@java.lang.Override
public double getLambda() {
return lambda_;
}
/**
*
* The initial lambda parameter for the Levenberg-Marquardt algorithm
*
*
* double lambda = 11;
* @param value The lambda to set.
* @return This builder for chaining.
*/
public Builder setLambda(double value) {
lambda_ = value;
bitField0_ |= 0x00000400;
onChanged();
return this;
}
/**
*
* The initial lambda parameter for the Levenberg-Marquardt algorithm
*
*
* double lambda = 11;
* @return This builder for chaining.
*/
public Builder clearLambda() {
bitField0_ = (bitField0_ & ~0x00000400);
lambda_ = 0D;
onChanged();
return this;
}
private int searchMethod_ = 0;
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The enum numeric value on the wire for searchMethod.
*/
@java.lang.Override public int getSearchMethodValue() {
return searchMethod_;
}
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @param value The enum numeric value on the wire for searchMethod to set.
* @return This builder for chaining.
*/
public Builder setSearchMethodValue(int value) {
searchMethod_ = value;
bitField0_ |= 0x00000800;
onChanged();
return this;
}
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return The searchMethod.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod getSearchMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.forNumber(searchMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod.UNRECOGNIZED : result;
}
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @param value The searchMethod to set.
* @return This builder for chaining.
*/
public Builder setSearchMethod(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.SearchMethod value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000800;
searchMethod_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The search method to use for the configurable maximum likelihood estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.SearchMethod search_method = 12;
* @return This builder for chaining.
*/
public Builder clearSearchMethod() {
bitField0_ = (bitField0_ & ~0x00000800);
searchMethod_ = 0;
onChanged();
return this;
}
private boolean gradientLineMinimisation_ ;
/**
*
* Set to true to use the function gradient during line minimisation, i.e. find the
* parameters where the gradient is zero. The default is the to minimise the function value.
*
*
* bool gradient_line_minimisation = 13;
* @return The gradientLineMinimisation.
*/
@java.lang.Override
public boolean getGradientLineMinimisation() {
return gradientLineMinimisation_;
}
/**
*
* Set to true to use the function gradient during line minimisation, i.e. find the
* parameters where the gradient is zero. The default is the to minimise the function value.
*
*
* bool gradient_line_minimisation = 13;
* @param value The gradientLineMinimisation to set.
* @return This builder for chaining.
*/
public Builder setGradientLineMinimisation(boolean value) {
gradientLineMinimisation_ = value;
bitField0_ |= 0x00001000;
onChanged();
return this;
}
/**
*
* Set to true to use the function gradient during line minimisation, i.e. find the
* parameters where the gradient is zero. The default is the to minimise the function value.
*
*
* bool gradient_line_minimisation = 13;
* @return This builder for chaining.
*/
public Builder clearGradientLineMinimisation() {
bitField0_ = (bitField0_ & ~0x00001000);
gradientLineMinimisation_ = false;
onChanged();
return this;
}
private boolean modelCamera_ ;
/**
*
* Set to true to model the camera noise in the configurable maximum likelihood estimator.
*
*
* bool model_camera = 14;
* @return The modelCamera.
*/
@java.lang.Override
public boolean getModelCamera() {
return modelCamera_;
}
/**
*
* Set to true to model the camera noise in the configurable maximum likelihood estimator.
*
*
* bool model_camera = 14;
* @param value The modelCamera to set.
* @return This builder for chaining.
*/
public Builder setModelCamera(boolean value) {
modelCamera_ = value;
bitField0_ |= 0x00002000;
onChanged();
return this;
}
/**
*
* Set to true to model the camera noise in the configurable maximum likelihood estimator.
*
*
* bool model_camera = 14;
* @return This builder for chaining.
*/
public Builder clearModelCamera() {
bitField0_ = (bitField0_ & ~0x00002000);
modelCamera_ = false;
onChanged();
return this;
}
private int maxFunctionEvaluations_ ;
/**
*
* The maximum number of function evaluations in the configurable maximum likelihood estimator.
*
*
* int32 max_function_evaluations = 15;
* @return The maxFunctionEvaluations.
*/
@java.lang.Override
public int getMaxFunctionEvaluations() {
return maxFunctionEvaluations_;
}
/**
*
* The maximum number of function evaluations in the configurable maximum likelihood estimator.
*
*
* int32 max_function_evaluations = 15;
* @param value The maxFunctionEvaluations to set.
* @return This builder for chaining.
*/
public Builder setMaxFunctionEvaluations(int value) {
maxFunctionEvaluations_ = value;
bitField0_ |= 0x00004000;
onChanged();
return this;
}
/**
*
* The maximum number of function evaluations in the configurable maximum likelihood estimator.
*
*
* int32 max_function_evaluations = 15;
* @return This builder for chaining.
*/
public Builder clearMaxFunctionEvaluations() {
bitField0_ = (bitField0_ & ~0x00004000);
maxFunctionEvaluations_ = 0;
onChanged();
return this;
}
private boolean useClamping_ ;
/**
*
* Set to true to use parameter clamping
*
*
* bool use_clamping = 16;
* @return The useClamping.
*/
@java.lang.Override
public boolean getUseClamping() {
return useClamping_;
}
/**
*
* Set to true to use parameter clamping
*
*
* bool use_clamping = 16;
* @param value The useClamping to set.
* @return This builder for chaining.
*/
public Builder setUseClamping(boolean value) {
useClamping_ = value;
bitField0_ |= 0x00008000;
onChanged();
return this;
}
/**
*
* Set to true to use parameter clamping
*
*
* bool use_clamping = 16;
* @return This builder for chaining.
*/
public Builder clearUseClamping() {
bitField0_ = (bitField0_ & ~0x00008000);
useClamping_ = false;
onChanged();
return this;
}
private boolean useDynamicClamping_ ;
/**
*
* Set to true to use dynamic parameter clamping, i.e. update the clamp values when the step direction changes
*
*
* bool use_dynamic_clamping = 17;
* @return The useDynamicClamping.
*/
@java.lang.Override
public boolean getUseDynamicClamping() {
return useDynamicClamping_;
}
/**
*
* Set to true to use dynamic parameter clamping, i.e. update the clamp values when the step direction changes
*
*
* bool use_dynamic_clamping = 17;
* @param value The useDynamicClamping to set.
* @return This builder for chaining.
*/
public Builder setUseDynamicClamping(boolean value) {
useDynamicClamping_ = value;
bitField0_ |= 0x00010000;
onChanged();
return this;
}
/**
*
* Set to true to use dynamic parameter clamping, i.e. update the clamp values when the step direction changes
*
*
* bool use_dynamic_clamping = 17;
* @return This builder for chaining.
*/
public Builder clearUseDynamicClamping() {
bitField0_ = (bitField0_ & ~0x00010000);
useDynamicClamping_ = false;
onChanged();
return this;
}
private com.google.protobuf.Internal.DoubleList clampValues_ = emptyDoubleList();
private void ensureClampValuesIsMutable() {
if (!((bitField0_ & 0x00020000) != 0)) {
clampValues_ = mutableCopy(clampValues_);
bitField0_ |= 0x00020000;
}
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return A list containing the clampValues.
*/
public java.util.List
getClampValuesList() {
return ((bitField0_ & 0x00020000) != 0) ?
java.util.Collections.unmodifiableList(clampValues_) : clampValues_;
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return The count of clampValues.
*/
public int getClampValuesCount() {
return clampValues_.size();
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param index The index of the element to return.
* @return The clampValues at the given index.
*/
public double getClampValues(int index) {
return clampValues_.getDouble(index);
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param index The index to set the value at.
* @param value The clampValues to set.
* @return This builder for chaining.
*/
public Builder setClampValues(
int index, double value) {
ensureClampValuesIsMutable();
clampValues_.setDouble(index, value);
onChanged();
return this;
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param value The clampValues to add.
* @return This builder for chaining.
*/
public Builder addClampValues(double value) {
ensureClampValuesIsMutable();
clampValues_.addDouble(value);
onChanged();
return this;
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @param values The clampValues to add.
* @return This builder for chaining.
*/
public Builder addAllClampValues(
java.lang.Iterable extends java.lang.Double> values) {
ensureClampValuesIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, clampValues_);
onChanged();
return this;
}
/**
*
* The initial clamp values for each of the PSF parameters.
*
*
* repeated double clamp_values = 18;
* @return This builder for chaining.
*/
public Builder clearClampValues() {
clampValues_ = emptyDoubleList();
bitField0_ = (bitField0_ & ~0x00020000);
onChanged();
return this;
}
private int lineSearchMethod_ = 0;
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The enum numeric value on the wire for lineSearchMethod.
*/
@java.lang.Override public int getLineSearchMethodValue() {
return lineSearchMethod_;
}
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @param value The enum numeric value on the wire for lineSearchMethod to set.
* @return This builder for chaining.
*/
public Builder setLineSearchMethodValue(int value) {
lineSearchMethod_ = value;
bitField0_ |= 0x00040000;
onChanged();
return this;
}
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return The lineSearchMethod.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod getLineSearchMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.forNumber(lineSearchMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod.UNRECOGNIZED : result;
}
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @param value The lineSearchMethod to set.
* @return This builder for chaining.
*/
public Builder setLineSearchMethod(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.LineSearchMethod value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00040000;
lineSearchMethod_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The line search method to use for the Fast MLE estimator
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.LineSearchMethod line_search_method = 19;
* @return This builder for chaining.
*/
public Builder clearLineSearchMethod() {
bitField0_ = (bitField0_ & ~0x00040000);
lineSearchMethod_ = 0;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public FitSolverSettings parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface FilterSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.FilterSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* The maximum amount a localisation can move from the initial estimate relative to the PSF width
*
*
* double shift_factor = 1;
* @return The shiftFactor.
*/
double getShiftFactor();
/**
*
* The minimum Signal-to-Noise (SNR) threshold
*
*
* double signal_strength = 2;
* @return The signalStrength.
*/
double getSignalStrength();
/**
*
* The minimum number of photons threshold
*
*
* double min_photons = 3;
* @return The minPhotons.
*/
double getMinPhotons();
/**
*
* The maximum allowed localisation precision (expressed as the localisation standard deviation)
*
*
* double precision_threshold = 4;
* @return The precisionThreshold.
*/
double getPrecisionThreshold();
/**
*
* The minimum allowed width relative to the initial width estimate
*
*
* double min_width_factor = 6;
* @return The minWidthFactor.
*/
double getMinWidthFactor();
/**
*
* The maximum allowed width relative to the initial width estimate
*
*
* double max_width_factor = 7;
* @return The maxWidthFactor.
*/
double getMaxWidthFactor();
/**
*
* Set to true to disable the use of simple filters
*
*
* bool disable_simple_filter = 8;
* @return The disableSimpleFilter.
*/
boolean getDisableSimpleFilter();
/**
*
* Set to true to use a smart filter
*
*
* bool smart_filter = 9;
* @return The smartFilter.
*/
boolean getSmartFilter();
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The smartFilterString.
*/
java.lang.String getSmartFilterString();
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The bytes for smartFilterString.
*/
com.google.protobuf.ByteString
getSmartFilterStringBytes();
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The enum numeric value on the wire for precisionMethod.
*/
int getPrecisionMethodValue();
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The precisionMethod.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod getPrecisionMethod();
/**
*
* The minimum z-depth
*
*
* double min_z = 12;
* @return The minZ.
*/
double getMinZ();
/**
*
* The maximum z-depth
*
*
* double max_z = 13;
* @return The maxZ.
*/
double getMaxZ();
}
/**
*
* Define the settings for filtering fit results.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FilterSettings}
*/
public static final class FilterSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.FilterSettings)
FilterSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use FilterSettings.newBuilder() to construct.
private FilterSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private FilterSettings() {
smartFilterString_ = "";
precisionMethod_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new FilterSettings();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder.class);
}
public static final int SHIFT_FACTOR_FIELD_NUMBER = 1;
private double shiftFactor_ = 0D;
/**
*
* The maximum amount a localisation can move from the initial estimate relative to the PSF width
*
*
* double shift_factor = 1;
* @return The shiftFactor.
*/
@java.lang.Override
public double getShiftFactor() {
return shiftFactor_;
}
public static final int SIGNAL_STRENGTH_FIELD_NUMBER = 2;
private double signalStrength_ = 0D;
/**
*
* The minimum Signal-to-Noise (SNR) threshold
*
*
* double signal_strength = 2;
* @return The signalStrength.
*/
@java.lang.Override
public double getSignalStrength() {
return signalStrength_;
}
public static final int MIN_PHOTONS_FIELD_NUMBER = 3;
private double minPhotons_ = 0D;
/**
*
* The minimum number of photons threshold
*
*
* double min_photons = 3;
* @return The minPhotons.
*/
@java.lang.Override
public double getMinPhotons() {
return minPhotons_;
}
public static final int PRECISION_THRESHOLD_FIELD_NUMBER = 4;
private double precisionThreshold_ = 0D;
/**
*
* The maximum allowed localisation precision (expressed as the localisation standard deviation)
*
*
* double precision_threshold = 4;
* @return The precisionThreshold.
*/
@java.lang.Override
public double getPrecisionThreshold() {
return precisionThreshold_;
}
public static final int MIN_WIDTH_FACTOR_FIELD_NUMBER = 6;
private double minWidthFactor_ = 0D;
/**
*
* The minimum allowed width relative to the initial width estimate
*
*
* double min_width_factor = 6;
* @return The minWidthFactor.
*/
@java.lang.Override
public double getMinWidthFactor() {
return minWidthFactor_;
}
public static final int MAX_WIDTH_FACTOR_FIELD_NUMBER = 7;
private double maxWidthFactor_ = 0D;
/**
*
* The maximum allowed width relative to the initial width estimate
*
*
* double max_width_factor = 7;
* @return The maxWidthFactor.
*/
@java.lang.Override
public double getMaxWidthFactor() {
return maxWidthFactor_;
}
public static final int DISABLE_SIMPLE_FILTER_FIELD_NUMBER = 8;
private boolean disableSimpleFilter_ = false;
/**
*
* Set to true to disable the use of simple filters
*
*
* bool disable_simple_filter = 8;
* @return The disableSimpleFilter.
*/
@java.lang.Override
public boolean getDisableSimpleFilter() {
return disableSimpleFilter_;
}
public static final int SMART_FILTER_FIELD_NUMBER = 9;
private boolean smartFilter_ = false;
/**
*
* Set to true to use a smart filter
*
*
* bool smart_filter = 9;
* @return The smartFilter.
*/
@java.lang.Override
public boolean getSmartFilter() {
return smartFilter_;
}
public static final int SMART_FILTER_STRING_FIELD_NUMBER = 10;
@SuppressWarnings("serial")
private volatile java.lang.Object smartFilterString_ = "";
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The smartFilterString.
*/
@java.lang.Override
public java.lang.String getSmartFilterString() {
java.lang.Object ref = smartFilterString_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
smartFilterString_ = s;
return s;
}
}
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The bytes for smartFilterString.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSmartFilterStringBytes() {
java.lang.Object ref = smartFilterString_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
smartFilterString_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int PRECISION_METHOD_FIELD_NUMBER = 11;
private int precisionMethod_ = 0;
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The enum numeric value on the wire for precisionMethod.
*/
@java.lang.Override public int getPrecisionMethodValue() {
return precisionMethod_;
}
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The precisionMethod.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod getPrecisionMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.forNumber(precisionMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.UNRECOGNIZED : result;
}
public static final int MIN_Z_FIELD_NUMBER = 12;
private double minZ_ = 0D;
/**
*
* The minimum z-depth
*
*
* double min_z = 12;
* @return The minZ.
*/
@java.lang.Override
public double getMinZ() {
return minZ_;
}
public static final int MAX_Z_FIELD_NUMBER = 13;
private double maxZ_ = 0D;
/**
*
* The maximum z-depth
*
*
* double max_z = 13;
* @return The maxZ.
*/
@java.lang.Override
public double getMaxZ() {
return maxZ_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (java.lang.Double.doubleToRawLongBits(shiftFactor_) != 0) {
output.writeDouble(1, shiftFactor_);
}
if (java.lang.Double.doubleToRawLongBits(signalStrength_) != 0) {
output.writeDouble(2, signalStrength_);
}
if (java.lang.Double.doubleToRawLongBits(minPhotons_) != 0) {
output.writeDouble(3, minPhotons_);
}
if (java.lang.Double.doubleToRawLongBits(precisionThreshold_) != 0) {
output.writeDouble(4, precisionThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(minWidthFactor_) != 0) {
output.writeDouble(6, minWidthFactor_);
}
if (java.lang.Double.doubleToRawLongBits(maxWidthFactor_) != 0) {
output.writeDouble(7, maxWidthFactor_);
}
if (disableSimpleFilter_ != false) {
output.writeBool(8, disableSimpleFilter_);
}
if (smartFilter_ != false) {
output.writeBool(9, smartFilter_);
}
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(smartFilterString_)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 10, smartFilterString_);
}
if (precisionMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.PRECISION_METHOD_NA.getNumber()) {
output.writeEnum(11, precisionMethod_);
}
if (java.lang.Double.doubleToRawLongBits(minZ_) != 0) {
output.writeDouble(12, minZ_);
}
if (java.lang.Double.doubleToRawLongBits(maxZ_) != 0) {
output.writeDouble(13, maxZ_);
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (java.lang.Double.doubleToRawLongBits(shiftFactor_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(1, shiftFactor_);
}
if (java.lang.Double.doubleToRawLongBits(signalStrength_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(2, signalStrength_);
}
if (java.lang.Double.doubleToRawLongBits(minPhotons_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(3, minPhotons_);
}
if (java.lang.Double.doubleToRawLongBits(precisionThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(4, precisionThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(minWidthFactor_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(6, minWidthFactor_);
}
if (java.lang.Double.doubleToRawLongBits(maxWidthFactor_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(7, maxWidthFactor_);
}
if (disableSimpleFilter_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(8, disableSimpleFilter_);
}
if (smartFilter_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(9, smartFilter_);
}
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(smartFilterString_)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, smartFilterString_);
}
if (precisionMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.PRECISION_METHOD_NA.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(11, precisionMethod_);
}
if (java.lang.Double.doubleToRawLongBits(minZ_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(12, minZ_);
}
if (java.lang.Double.doubleToRawLongBits(maxZ_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(13, maxZ_);
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings) obj;
if (java.lang.Double.doubleToLongBits(getShiftFactor())
!= java.lang.Double.doubleToLongBits(
other.getShiftFactor())) return false;
if (java.lang.Double.doubleToLongBits(getSignalStrength())
!= java.lang.Double.doubleToLongBits(
other.getSignalStrength())) return false;
if (java.lang.Double.doubleToLongBits(getMinPhotons())
!= java.lang.Double.doubleToLongBits(
other.getMinPhotons())) return false;
if (java.lang.Double.doubleToLongBits(getPrecisionThreshold())
!= java.lang.Double.doubleToLongBits(
other.getPrecisionThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getMinWidthFactor())
!= java.lang.Double.doubleToLongBits(
other.getMinWidthFactor())) return false;
if (java.lang.Double.doubleToLongBits(getMaxWidthFactor())
!= java.lang.Double.doubleToLongBits(
other.getMaxWidthFactor())) return false;
if (getDisableSimpleFilter()
!= other.getDisableSimpleFilter()) return false;
if (getSmartFilter()
!= other.getSmartFilter()) return false;
if (!getSmartFilterString()
.equals(other.getSmartFilterString())) return false;
if (precisionMethod_ != other.precisionMethod_) return false;
if (java.lang.Double.doubleToLongBits(getMinZ())
!= java.lang.Double.doubleToLongBits(
other.getMinZ())) return false;
if (java.lang.Double.doubleToLongBits(getMaxZ())
!= java.lang.Double.doubleToLongBits(
other.getMaxZ())) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + SHIFT_FACTOR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getShiftFactor()));
hash = (37 * hash) + SIGNAL_STRENGTH_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getSignalStrength()));
hash = (37 * hash) + MIN_PHOTONS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMinPhotons()));
hash = (37 * hash) + PRECISION_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getPrecisionThreshold()));
hash = (37 * hash) + MIN_WIDTH_FACTOR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMinWidthFactor()));
hash = (37 * hash) + MAX_WIDTH_FACTOR_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMaxWidthFactor()));
hash = (37 * hash) + DISABLE_SIMPLE_FILTER_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getDisableSimpleFilter());
hash = (37 * hash) + SMART_FILTER_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getSmartFilter());
hash = (37 * hash) + SMART_FILTER_STRING_FIELD_NUMBER;
hash = (53 * hash) + getSmartFilterString().hashCode();
hash = (37 * hash) + PRECISION_METHOD_FIELD_NUMBER;
hash = (53 * hash) + precisionMethod_;
hash = (37 * hash) + MIN_Z_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMinZ()));
hash = (37 * hash) + MAX_Z_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getMaxZ()));
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define the settings for filtering fit results.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FilterSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.FilterSettings)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
shiftFactor_ = 0D;
signalStrength_ = 0D;
minPhotons_ = 0D;
precisionThreshold_ = 0D;
minWidthFactor_ = 0D;
maxWidthFactor_ = 0D;
disableSimpleFilter_ = false;
smartFilter_ = false;
smartFilterString_ = "";
precisionMethod_ = 0;
minZ_ = 0D;
maxZ_ = 0D;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings(this);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.shiftFactor_ = shiftFactor_;
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.signalStrength_ = signalStrength_;
}
if (((from_bitField0_ & 0x00000004) != 0)) {
result.minPhotons_ = minPhotons_;
}
if (((from_bitField0_ & 0x00000008) != 0)) {
result.precisionThreshold_ = precisionThreshold_;
}
if (((from_bitField0_ & 0x00000010) != 0)) {
result.minWidthFactor_ = minWidthFactor_;
}
if (((from_bitField0_ & 0x00000020) != 0)) {
result.maxWidthFactor_ = maxWidthFactor_;
}
if (((from_bitField0_ & 0x00000040) != 0)) {
result.disableSimpleFilter_ = disableSimpleFilter_;
}
if (((from_bitField0_ & 0x00000080) != 0)) {
result.smartFilter_ = smartFilter_;
}
if (((from_bitField0_ & 0x00000100) != 0)) {
result.smartFilterString_ = smartFilterString_;
}
if (((from_bitField0_ & 0x00000200) != 0)) {
result.precisionMethod_ = precisionMethod_;
}
if (((from_bitField0_ & 0x00000400) != 0)) {
result.minZ_ = minZ_;
}
if (((from_bitField0_ & 0x00000800) != 0)) {
result.maxZ_ = maxZ_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance()) return this;
if (other.getShiftFactor() != 0D) {
setShiftFactor(other.getShiftFactor());
}
if (other.getSignalStrength() != 0D) {
setSignalStrength(other.getSignalStrength());
}
if (other.getMinPhotons() != 0D) {
setMinPhotons(other.getMinPhotons());
}
if (other.getPrecisionThreshold() != 0D) {
setPrecisionThreshold(other.getPrecisionThreshold());
}
if (other.getMinWidthFactor() != 0D) {
setMinWidthFactor(other.getMinWidthFactor());
}
if (other.getMaxWidthFactor() != 0D) {
setMaxWidthFactor(other.getMaxWidthFactor());
}
if (other.getDisableSimpleFilter() != false) {
setDisableSimpleFilter(other.getDisableSimpleFilter());
}
if (other.getSmartFilter() != false) {
setSmartFilter(other.getSmartFilter());
}
if (!other.getSmartFilterString().isEmpty()) {
smartFilterString_ = other.smartFilterString_;
bitField0_ |= 0x00000100;
onChanged();
}
if (other.precisionMethod_ != 0) {
setPrecisionMethodValue(other.getPrecisionMethodValue());
}
if (other.getMinZ() != 0D) {
setMinZ(other.getMinZ());
}
if (other.getMaxZ() != 0D) {
setMaxZ(other.getMaxZ());
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 9: {
shiftFactor_ = input.readDouble();
bitField0_ |= 0x00000001;
break;
} // case 9
case 17: {
signalStrength_ = input.readDouble();
bitField0_ |= 0x00000002;
break;
} // case 17
case 25: {
minPhotons_ = input.readDouble();
bitField0_ |= 0x00000004;
break;
} // case 25
case 33: {
precisionThreshold_ = input.readDouble();
bitField0_ |= 0x00000008;
break;
} // case 33
case 49: {
minWidthFactor_ = input.readDouble();
bitField0_ |= 0x00000010;
break;
} // case 49
case 57: {
maxWidthFactor_ = input.readDouble();
bitField0_ |= 0x00000020;
break;
} // case 57
case 64: {
disableSimpleFilter_ = input.readBool();
bitField0_ |= 0x00000040;
break;
} // case 64
case 72: {
smartFilter_ = input.readBool();
bitField0_ |= 0x00000080;
break;
} // case 72
case 82: {
smartFilterString_ = input.readStringRequireUtf8();
bitField0_ |= 0x00000100;
break;
} // case 82
case 88: {
precisionMethod_ = input.readEnum();
bitField0_ |= 0x00000200;
break;
} // case 88
case 97: {
minZ_ = input.readDouble();
bitField0_ |= 0x00000400;
break;
} // case 97
case 105: {
maxZ_ = input.readDouble();
bitField0_ |= 0x00000800;
break;
} // case 105
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private double shiftFactor_ ;
/**
*
* The maximum amount a localisation can move from the initial estimate relative to the PSF width
*
*
* double shift_factor = 1;
* @return The shiftFactor.
*/
@java.lang.Override
public double getShiftFactor() {
return shiftFactor_;
}
/**
*
* The maximum amount a localisation can move from the initial estimate relative to the PSF width
*
*
* double shift_factor = 1;
* @param value The shiftFactor to set.
* @return This builder for chaining.
*/
public Builder setShiftFactor(double value) {
shiftFactor_ = value;
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The maximum amount a localisation can move from the initial estimate relative to the PSF width
*
*
* double shift_factor = 1;
* @return This builder for chaining.
*/
public Builder clearShiftFactor() {
bitField0_ = (bitField0_ & ~0x00000001);
shiftFactor_ = 0D;
onChanged();
return this;
}
private double signalStrength_ ;
/**
*
* The minimum Signal-to-Noise (SNR) threshold
*
*
* double signal_strength = 2;
* @return The signalStrength.
*/
@java.lang.Override
public double getSignalStrength() {
return signalStrength_;
}
/**
*
* The minimum Signal-to-Noise (SNR) threshold
*
*
* double signal_strength = 2;
* @param value The signalStrength to set.
* @return This builder for chaining.
*/
public Builder setSignalStrength(double value) {
signalStrength_ = value;
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* The minimum Signal-to-Noise (SNR) threshold
*
*
* double signal_strength = 2;
* @return This builder for chaining.
*/
public Builder clearSignalStrength() {
bitField0_ = (bitField0_ & ~0x00000002);
signalStrength_ = 0D;
onChanged();
return this;
}
private double minPhotons_ ;
/**
*
* The minimum number of photons threshold
*
*
* double min_photons = 3;
* @return The minPhotons.
*/
@java.lang.Override
public double getMinPhotons() {
return minPhotons_;
}
/**
*
* The minimum number of photons threshold
*
*
* double min_photons = 3;
* @param value The minPhotons to set.
* @return This builder for chaining.
*/
public Builder setMinPhotons(double value) {
minPhotons_ = value;
bitField0_ |= 0x00000004;
onChanged();
return this;
}
/**
*
* The minimum number of photons threshold
*
*
* double min_photons = 3;
* @return This builder for chaining.
*/
public Builder clearMinPhotons() {
bitField0_ = (bitField0_ & ~0x00000004);
minPhotons_ = 0D;
onChanged();
return this;
}
private double precisionThreshold_ ;
/**
*
* The maximum allowed localisation precision (expressed as the localisation standard deviation)
*
*
* double precision_threshold = 4;
* @return The precisionThreshold.
*/
@java.lang.Override
public double getPrecisionThreshold() {
return precisionThreshold_;
}
/**
*
* The maximum allowed localisation precision (expressed as the localisation standard deviation)
*
*
* double precision_threshold = 4;
* @param value The precisionThreshold to set.
* @return This builder for chaining.
*/
public Builder setPrecisionThreshold(double value) {
precisionThreshold_ = value;
bitField0_ |= 0x00000008;
onChanged();
return this;
}
/**
*
* The maximum allowed localisation precision (expressed as the localisation standard deviation)
*
*
* double precision_threshold = 4;
* @return This builder for chaining.
*/
public Builder clearPrecisionThreshold() {
bitField0_ = (bitField0_ & ~0x00000008);
precisionThreshold_ = 0D;
onChanged();
return this;
}
private double minWidthFactor_ ;
/**
*
* The minimum allowed width relative to the initial width estimate
*
*
* double min_width_factor = 6;
* @return The minWidthFactor.
*/
@java.lang.Override
public double getMinWidthFactor() {
return minWidthFactor_;
}
/**
*
* The minimum allowed width relative to the initial width estimate
*
*
* double min_width_factor = 6;
* @param value The minWidthFactor to set.
* @return This builder for chaining.
*/
public Builder setMinWidthFactor(double value) {
minWidthFactor_ = value;
bitField0_ |= 0x00000010;
onChanged();
return this;
}
/**
*
* The minimum allowed width relative to the initial width estimate
*
*
* double min_width_factor = 6;
* @return This builder for chaining.
*/
public Builder clearMinWidthFactor() {
bitField0_ = (bitField0_ & ~0x00000010);
minWidthFactor_ = 0D;
onChanged();
return this;
}
private double maxWidthFactor_ ;
/**
*
* The maximum allowed width relative to the initial width estimate
*
*
* double max_width_factor = 7;
* @return The maxWidthFactor.
*/
@java.lang.Override
public double getMaxWidthFactor() {
return maxWidthFactor_;
}
/**
*
* The maximum allowed width relative to the initial width estimate
*
*
* double max_width_factor = 7;
* @param value The maxWidthFactor to set.
* @return This builder for chaining.
*/
public Builder setMaxWidthFactor(double value) {
maxWidthFactor_ = value;
bitField0_ |= 0x00000020;
onChanged();
return this;
}
/**
*
* The maximum allowed width relative to the initial width estimate
*
*
* double max_width_factor = 7;
* @return This builder for chaining.
*/
public Builder clearMaxWidthFactor() {
bitField0_ = (bitField0_ & ~0x00000020);
maxWidthFactor_ = 0D;
onChanged();
return this;
}
private boolean disableSimpleFilter_ ;
/**
*
* Set to true to disable the use of simple filters
*
*
* bool disable_simple_filter = 8;
* @return The disableSimpleFilter.
*/
@java.lang.Override
public boolean getDisableSimpleFilter() {
return disableSimpleFilter_;
}
/**
*
* Set to true to disable the use of simple filters
*
*
* bool disable_simple_filter = 8;
* @param value The disableSimpleFilter to set.
* @return This builder for chaining.
*/
public Builder setDisableSimpleFilter(boolean value) {
disableSimpleFilter_ = value;
bitField0_ |= 0x00000040;
onChanged();
return this;
}
/**
*
* Set to true to disable the use of simple filters
*
*
* bool disable_simple_filter = 8;
* @return This builder for chaining.
*/
public Builder clearDisableSimpleFilter() {
bitField0_ = (bitField0_ & ~0x00000040);
disableSimpleFilter_ = false;
onChanged();
return this;
}
private boolean smartFilter_ ;
/**
*
* Set to true to use a smart filter
*
*
* bool smart_filter = 9;
* @return The smartFilter.
*/
@java.lang.Override
public boolean getSmartFilter() {
return smartFilter_;
}
/**
*
* Set to true to use a smart filter
*
*
* bool smart_filter = 9;
* @param value The smartFilter to set.
* @return This builder for chaining.
*/
public Builder setSmartFilter(boolean value) {
smartFilter_ = value;
bitField0_ |= 0x00000080;
onChanged();
return this;
}
/**
*
* Set to true to use a smart filter
*
*
* bool smart_filter = 9;
* @return This builder for chaining.
*/
public Builder clearSmartFilter() {
bitField0_ = (bitField0_ & ~0x00000080);
smartFilter_ = false;
onChanged();
return this;
}
private java.lang.Object smartFilterString_ = "";
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The smartFilterString.
*/
public java.lang.String getSmartFilterString() {
java.lang.Object ref = smartFilterString_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
smartFilterString_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return The bytes for smartFilterString.
*/
public com.google.protobuf.ByteString
getSmartFilterStringBytes() {
java.lang.Object ref = smartFilterString_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
smartFilterString_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @param value The smartFilterString to set.
* @return This builder for chaining.
*/
public Builder setSmartFilterString(
java.lang.String value) {
if (value == null) { throw new NullPointerException(); }
smartFilterString_ = value;
bitField0_ |= 0x00000100;
onChanged();
return this;
}
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @return This builder for chaining.
*/
public Builder clearSmartFilterString() {
smartFilterString_ = getDefaultInstance().getSmartFilterString();
bitField0_ = (bitField0_ & ~0x00000100);
onChanged();
return this;
}
/**
*
* The smart filter expressed as a serialised string
*
*
* string smart_filter_string = 10;
* @param value The bytes for smartFilterString to set.
* @return This builder for chaining.
*/
public Builder setSmartFilterStringBytes(
com.google.protobuf.ByteString value) {
if (value == null) { throw new NullPointerException(); }
checkByteStringIsUtf8(value);
smartFilterString_ = value;
bitField0_ |= 0x00000100;
onChanged();
return this;
}
private int precisionMethod_ = 0;
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The enum numeric value on the wire for precisionMethod.
*/
@java.lang.Override public int getPrecisionMethodValue() {
return precisionMethod_;
}
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @param value The enum numeric value on the wire for precisionMethod to set.
* @return This builder for chaining.
*/
public Builder setPrecisionMethodValue(int value) {
precisionMethod_ = value;
bitField0_ |= 0x00000200;
onChanged();
return this;
}
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return The precisionMethod.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod getPrecisionMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.forNumber(precisionMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod.UNRECOGNIZED : result;
}
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @param value The precisionMethod to set.
* @return This builder for chaining.
*/
public Builder setPrecisionMethod(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.PrecisionMethod value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000200;
precisionMethod_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The type of precision filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.PrecisionMethod precision_method = 11;
* @return This builder for chaining.
*/
public Builder clearPrecisionMethod() {
bitField0_ = (bitField0_ & ~0x00000200);
precisionMethod_ = 0;
onChanged();
return this;
}
private double minZ_ ;
/**
*
* The minimum z-depth
*
*
* double min_z = 12;
* @return The minZ.
*/
@java.lang.Override
public double getMinZ() {
return minZ_;
}
/**
*
* The minimum z-depth
*
*
* double min_z = 12;
* @param value The minZ to set.
* @return This builder for chaining.
*/
public Builder setMinZ(double value) {
minZ_ = value;
bitField0_ |= 0x00000400;
onChanged();
return this;
}
/**
*
* The minimum z-depth
*
*
* double min_z = 12;
* @return This builder for chaining.
*/
public Builder clearMinZ() {
bitField0_ = (bitField0_ & ~0x00000400);
minZ_ = 0D;
onChanged();
return this;
}
private double maxZ_ ;
/**
*
* The maximum z-depth
*
*
* double max_z = 13;
* @return The maxZ.
*/
@java.lang.Override
public double getMaxZ() {
return maxZ_;
}
/**
*
* The maximum z-depth
*
*
* double max_z = 13;
* @param value The maxZ to set.
* @return This builder for chaining.
*/
public Builder setMaxZ(double value) {
maxZ_ = value;
bitField0_ |= 0x00000800;
onChanged();
return this;
}
/**
*
* The maximum z-depth
*
*
* double max_z = 13;
* @return This builder for chaining.
*/
public Builder clearMaxZ() {
bitField0_ = (bitField0_ & ~0x00000800);
maxZ_ = 0D;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.FilterSettings)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.FilterSettings)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public FilterSettings parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface FitSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.FitSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return Whether the fitSolverSettings field is set.
*/
boolean hasFitSolverSettings();
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return The fitSolverSettings.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getFitSolverSettings();
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder getFitSolverSettingsOrBuilder();
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return Whether the filterSettings field is set.
*/
boolean hasFilterSettings();
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return The filterSettings.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getFilterSettings();
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder getFilterSettingsOrBuilder();
}
/**
*
* Define the settings for fitting. These settings are used to fit a PSF to an
* extracted region from the input data and validate the fit.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitSettings}
*/
public static final class FitSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.FitSettings)
FitSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use FitSettings.newBuilder() to construct.
private FitSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private FitSettings() {
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new FitSettings();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder.class);
}
public static final int FIT_SOLVER_SETTINGS_FIELD_NUMBER = 1;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings fitSolverSettings_;
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return Whether the fitSolverSettings field is set.
*/
@java.lang.Override
public boolean hasFitSolverSettings() {
return fitSolverSettings_ != null;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return The fitSolverSettings.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getFitSolverSettings() {
return fitSolverSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance() : fitSolverSettings_;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder getFitSolverSettingsOrBuilder() {
return fitSolverSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance() : fitSolverSettings_;
}
public static final int FILTER_SETTINGS_FIELD_NUMBER = 2;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings filterSettings_;
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return Whether the filterSettings field is set.
*/
@java.lang.Override
public boolean hasFilterSettings() {
return filterSettings_ != null;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return The filterSettings.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getFilterSettings() {
return filterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance() : filterSettings_;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder getFilterSettingsOrBuilder() {
return filterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance() : filterSettings_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (fitSolverSettings_ != null) {
output.writeMessage(1, getFitSolverSettings());
}
if (filterSettings_ != null) {
output.writeMessage(2, getFilterSettings());
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (fitSolverSettings_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, getFitSolverSettings());
}
if (filterSettings_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, getFilterSettings());
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings) obj;
if (hasFitSolverSettings() != other.hasFitSolverSettings()) return false;
if (hasFitSolverSettings()) {
if (!getFitSolverSettings()
.equals(other.getFitSolverSettings())) return false;
}
if (hasFilterSettings() != other.hasFilterSettings()) return false;
if (hasFilterSettings()) {
if (!getFilterSettings()
.equals(other.getFilterSettings())) return false;
}
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
if (hasFitSolverSettings()) {
hash = (37 * hash) + FIT_SOLVER_SETTINGS_FIELD_NUMBER;
hash = (53 * hash) + getFitSolverSettings().hashCode();
}
if (hasFilterSettings()) {
hash = (37 * hash) + FILTER_SETTINGS_FIELD_NUMBER;
hash = (53 * hash) + getFilterSettings().hashCode();
}
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define the settings for fitting. These settings are used to fit a PSF to an
* extracted region from the input data and validate the fit.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.FitSettings)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
fitSolverSettings_ = null;
if (fitSolverSettingsBuilder_ != null) {
fitSolverSettingsBuilder_.dispose();
fitSolverSettingsBuilder_ = null;
}
filterSettings_ = null;
if (filterSettingsBuilder_ != null) {
filterSettingsBuilder_.dispose();
filterSettingsBuilder_ = null;
}
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings(this);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.fitSolverSettings_ = fitSolverSettingsBuilder_ == null
? fitSolverSettings_
: fitSolverSettingsBuilder_.build();
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.filterSettings_ = filterSettingsBuilder_ == null
? filterSettings_
: filterSettingsBuilder_.build();
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance()) return this;
if (other.hasFitSolverSettings()) {
mergeFitSolverSettings(other.getFitSolverSettings());
}
if (other.hasFilterSettings()) {
mergeFilterSettings(other.getFilterSettings());
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
input.readMessage(
getFitSolverSettingsFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000001;
break;
} // case 10
case 18: {
input.readMessage(
getFilterSettingsFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000002;
break;
} // case 18
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings fitSolverSettings_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder> fitSolverSettingsBuilder_;
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return Whether the fitSolverSettings field is set.
*/
public boolean hasFitSolverSettings() {
return ((bitField0_ & 0x00000001) != 0);
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
* @return The fitSolverSettings.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings getFitSolverSettings() {
if (fitSolverSettingsBuilder_ == null) {
return fitSolverSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance() : fitSolverSettings_;
} else {
return fitSolverSettingsBuilder_.getMessage();
}
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public Builder setFitSolverSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings value) {
if (fitSolverSettingsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
fitSolverSettings_ = value;
} else {
fitSolverSettingsBuilder_.setMessage(value);
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public Builder setFitSolverSettings(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder builderForValue) {
if (fitSolverSettingsBuilder_ == null) {
fitSolverSettings_ = builderForValue.build();
} else {
fitSolverSettingsBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public Builder mergeFitSolverSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings value) {
if (fitSolverSettingsBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0) &&
fitSolverSettings_ != null &&
fitSolverSettings_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance()) {
getFitSolverSettingsBuilder().mergeFrom(value);
} else {
fitSolverSettings_ = value;
}
} else {
fitSolverSettingsBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public Builder clearFitSolverSettings() {
bitField0_ = (bitField0_ & ~0x00000001);
fitSolverSettings_ = null;
if (fitSolverSettingsBuilder_ != null) {
fitSolverSettingsBuilder_.dispose();
fitSolverSettingsBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder getFitSolverSettingsBuilder() {
bitField0_ |= 0x00000001;
onChanged();
return getFitSolverSettingsFieldBuilder().getBuilder();
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder getFitSolverSettingsOrBuilder() {
if (fitSolverSettingsBuilder_ != null) {
return fitSolverSettingsBuilder_.getMessageOrBuilder();
} else {
return fitSolverSettings_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.getDefaultInstance() : fitSolverSettings_;
}
}
/**
*
* The fit solver settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSolverSettings fit_solver_settings = 1;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder>
getFitSolverSettingsFieldBuilder() {
if (fitSolverSettingsBuilder_ == null) {
fitSolverSettingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSolverSettingsOrBuilder>(
getFitSolverSettings(),
getParentForChildren(),
isClean());
fitSolverSettings_ = null;
}
return fitSolverSettingsBuilder_;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings filterSettings_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder> filterSettingsBuilder_;
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return Whether the filterSettings field is set.
*/
public boolean hasFilterSettings() {
return ((bitField0_ & 0x00000002) != 0);
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
* @return The filterSettings.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings getFilterSettings() {
if (filterSettingsBuilder_ == null) {
return filterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance() : filterSettings_;
} else {
return filterSettingsBuilder_.getMessage();
}
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public Builder setFilterSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings value) {
if (filterSettingsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
filterSettings_ = value;
} else {
filterSettingsBuilder_.setMessage(value);
}
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public Builder setFilterSettings(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder builderForValue) {
if (filterSettingsBuilder_ == null) {
filterSettings_ = builderForValue.build();
} else {
filterSettingsBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public Builder mergeFilterSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings value) {
if (filterSettingsBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0) &&
filterSettings_ != null &&
filterSettings_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance()) {
getFilterSettingsBuilder().mergeFrom(value);
} else {
filterSettings_ = value;
}
} else {
filterSettingsBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public Builder clearFilterSettings() {
bitField0_ = (bitField0_ & ~0x00000002);
filterSettings_ = null;
if (filterSettingsBuilder_ != null) {
filterSettingsBuilder_.dispose();
filterSettingsBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder getFilterSettingsBuilder() {
bitField0_ |= 0x00000002;
onChanged();
return getFilterSettingsFieldBuilder().getBuilder();
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder getFilterSettingsOrBuilder() {
if (filterSettingsBuilder_ != null) {
return filterSettingsBuilder_.getMessageOrBuilder();
} else {
return filterSettings_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.getDefaultInstance() : filterSettings_;
}
}
/**
*
* The filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FilterSettings filter_settings = 2;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder>
getFilterSettingsFieldBuilder() {
if (filterSettingsBuilder_ == null) {
filterSettingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FilterSettingsOrBuilder>(
getFilterSettings(),
getParentForChildren(),
isClean());
filterSettings_ = null;
}
return filterSettingsBuilder_;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.FitSettings)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.FitSettings)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public FitSettings parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface RelativeParameterOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter)
com.google.protobuf.MessageOrBuilder {
/**
*
* The value of the parameter
*
*
* double value = 1;
* @return The value.
*/
double getValue();
/**
*
* Set to true to use the absolute value. The default is relative to the PSF width.
*
*
* bool absolute = 2;
* @return The absolute.
*/
boolean getAbsolute();
}
/**
*
* Define a parameter used during fitting that can be absolute of relative to the PSF width
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter}
*/
public static final class RelativeParameter extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter)
RelativeParameterOrBuilder {
private static final long serialVersionUID = 0L;
// Use RelativeParameter.newBuilder() to construct.
private RelativeParameter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private RelativeParameter() {
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new RelativeParameter();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder.class);
}
public static final int VALUE_FIELD_NUMBER = 1;
private double value_ = 0D;
/**
*
* The value of the parameter
*
*
* double value = 1;
* @return The value.
*/
@java.lang.Override
public double getValue() {
return value_;
}
public static final int ABSOLUTE_FIELD_NUMBER = 2;
private boolean absolute_ = false;
/**
*
* Set to true to use the absolute value. The default is relative to the PSF width.
*
*
* bool absolute = 2;
* @return The absolute.
*/
@java.lang.Override
public boolean getAbsolute() {
return absolute_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
output.writeDouble(1, value_);
}
if (absolute_ != false) {
output.writeBool(2, absolute_);
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (java.lang.Double.doubleToRawLongBits(value_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(1, value_);
}
if (absolute_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(2, absolute_);
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter) obj;
if (java.lang.Double.doubleToLongBits(getValue())
!= java.lang.Double.doubleToLongBits(
other.getValue())) return false;
if (getAbsolute()
!= other.getAbsolute()) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + VALUE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getValue()));
hash = (37 * hash) + ABSOLUTE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getAbsolute());
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define a parameter used during fitting that can be absolute of relative to the PSF width
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
value_ = 0D;
absolute_ = false;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter(this);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.value_ = value_;
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.absolute_ = absolute_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance()) return this;
if (other.getValue() != 0D) {
setValue(other.getValue());
}
if (other.getAbsolute() != false) {
setAbsolute(other.getAbsolute());
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 9: {
value_ = input.readDouble();
bitField0_ |= 0x00000001;
break;
} // case 9
case 16: {
absolute_ = input.readBool();
bitField0_ |= 0x00000002;
break;
} // case 16
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private double value_ ;
/**
*
* The value of the parameter
*
*
* double value = 1;
* @return The value.
*/
@java.lang.Override
public double getValue() {
return value_;
}
/**
*
* The value of the parameter
*
*
* double value = 1;
* @param value The value to set.
* @return This builder for chaining.
*/
public Builder setValue(double value) {
value_ = value;
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The value of the parameter
*
*
* double value = 1;
* @return This builder for chaining.
*/
public Builder clearValue() {
bitField0_ = (bitField0_ & ~0x00000001);
value_ = 0D;
onChanged();
return this;
}
private boolean absolute_ ;
/**
*
* Set to true to use the absolute value. The default is relative to the PSF width.
*
*
* bool absolute = 2;
* @return The absolute.
*/
@java.lang.Override
public boolean getAbsolute() {
return absolute_;
}
/**
*
* Set to true to use the absolute value. The default is relative to the PSF width.
*
*
* bool absolute = 2;
* @param value The absolute to set.
* @return This builder for chaining.
*/
public Builder setAbsolute(boolean value) {
absolute_ = value;
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* Set to true to use the absolute value. The default is relative to the PSF width.
*
*
* bool absolute = 2;
* @return This builder for chaining.
*/
public Builder clearAbsolute() {
bitField0_ = (bitField0_ & ~0x00000002);
absolute_ = false;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public RelativeParameter parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface DataFilterOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.DataFilter)
com.google.protobuf.MessageOrBuilder {
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The enum numeric value on the wire for dataFilterMethod.
*/
int getDataFilterMethodValue();
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The dataFilterMethod.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod getDataFilterMethod();
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
java.util.List
getParametersList();
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getParameters(int index);
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
int getParametersCount();
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getParametersOrBuilderList();
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getParametersOrBuilder(
int index);
}
/**
*
* Define a data filter
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilter}
*/
public static final class DataFilter extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.DataFilter)
DataFilterOrBuilder {
private static final long serialVersionUID = 0L;
// Use DataFilter.newBuilder() to construct.
private DataFilter(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private DataFilter() {
dataFilterMethod_ = 0;
parameters_ = java.util.Collections.emptyList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new DataFilter();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder.class);
}
public static final int DATA_FILTER_METHOD_FIELD_NUMBER = 1;
private int dataFilterMethod_ = 0;
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The enum numeric value on the wire for dataFilterMethod.
*/
@java.lang.Override public int getDataFilterMethodValue() {
return dataFilterMethod_;
}
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The dataFilterMethod.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod getDataFilterMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.forNumber(dataFilterMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.UNRECOGNIZED : result;
}
public static final int PARAMETERS_FIELD_NUMBER = 2;
@SuppressWarnings("serial")
private java.util.List parameters_;
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
@java.lang.Override
public java.util.List getParametersList() {
return parameters_;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
@java.lang.Override
public java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getParametersOrBuilderList() {
return parameters_;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
@java.lang.Override
public int getParametersCount() {
return parameters_.size();
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getParameters(int index) {
return parameters_.get(index);
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getParametersOrBuilder(
int index) {
return parameters_.get(index);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (dataFilterMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.MEAN.getNumber()) {
output.writeEnum(1, dataFilterMethod_);
}
for (int i = 0; i < parameters_.size(); i++) {
output.writeMessage(2, parameters_.get(i));
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (dataFilterMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.MEAN.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(1, dataFilterMethod_);
}
for (int i = 0; i < parameters_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, parameters_.get(i));
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter) obj;
if (dataFilterMethod_ != other.dataFilterMethod_) return false;
if (!getParametersList()
.equals(other.getParametersList())) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + DATA_FILTER_METHOD_FIELD_NUMBER;
hash = (53 * hash) + dataFilterMethod_;
if (getParametersCount() > 0) {
hash = (37 * hash) + PARAMETERS_FIELD_NUMBER;
hash = (53 * hash) + getParametersList().hashCode();
}
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define a data filter
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilter}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.DataFilter)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
dataFilterMethod_ = 0;
if (parametersBuilder_ == null) {
parameters_ = java.util.Collections.emptyList();
} else {
parameters_ = null;
parametersBuilder_.clear();
}
bitField0_ = (bitField0_ & ~0x00000002);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter(this);
buildPartialRepeatedFields(result);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartialRepeatedFields(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter result) {
if (parametersBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0)) {
parameters_ = java.util.Collections.unmodifiableList(parameters_);
bitField0_ = (bitField0_ & ~0x00000002);
}
result.parameters_ = parameters_;
} else {
result.parameters_ = parametersBuilder_.build();
}
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.dataFilterMethod_ = dataFilterMethod_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.getDefaultInstance()) return this;
if (other.dataFilterMethod_ != 0) {
setDataFilterMethodValue(other.getDataFilterMethodValue());
}
if (parametersBuilder_ == null) {
if (!other.parameters_.isEmpty()) {
if (parameters_.isEmpty()) {
parameters_ = other.parameters_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureParametersIsMutable();
parameters_.addAll(other.parameters_);
}
onChanged();
}
} else {
if (!other.parameters_.isEmpty()) {
if (parametersBuilder_.isEmpty()) {
parametersBuilder_.dispose();
parametersBuilder_ = null;
parameters_ = other.parameters_;
bitField0_ = (bitField0_ & ~0x00000002);
parametersBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getParametersFieldBuilder() : null;
} else {
parametersBuilder_.addAllMessages(other.parameters_);
}
}
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
dataFilterMethod_ = input.readEnum();
bitField0_ |= 0x00000001;
break;
} // case 8
case 18: {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter m =
input.readMessage(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.parser(),
extensionRegistry);
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
parameters_.add(m);
} else {
parametersBuilder_.addMessage(m);
}
break;
} // case 18
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private int dataFilterMethod_ = 0;
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The enum numeric value on the wire for dataFilterMethod.
*/
@java.lang.Override public int getDataFilterMethodValue() {
return dataFilterMethod_;
}
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @param value The enum numeric value on the wire for dataFilterMethod to set.
* @return This builder for chaining.
*/
public Builder setDataFilterMethodValue(int value) {
dataFilterMethod_ = value;
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return The dataFilterMethod.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod getDataFilterMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.forNumber(dataFilterMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod.UNRECOGNIZED : result;
}
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @param value The dataFilterMethod to set.
* @return This builder for chaining.
*/
public Builder setDataFilterMethod(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterMethod value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
dataFilterMethod_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The method used by the data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterMethod data_filter_method = 1;
* @return This builder for chaining.
*/
public Builder clearDataFilterMethod() {
bitField0_ = (bitField0_ & ~0x00000001);
dataFilterMethod_ = 0;
onChanged();
return this;
}
private java.util.List parameters_ =
java.util.Collections.emptyList();
private void ensureParametersIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
parameters_ = new java.util.ArrayList(parameters_);
bitField0_ |= 0x00000002;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder> parametersBuilder_;
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public java.util.List getParametersList() {
if (parametersBuilder_ == null) {
return java.util.Collections.unmodifiableList(parameters_);
} else {
return parametersBuilder_.getMessageList();
}
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public int getParametersCount() {
if (parametersBuilder_ == null) {
return parameters_.size();
} else {
return parametersBuilder_.getCount();
}
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getParameters(int index) {
if (parametersBuilder_ == null) {
return parameters_.get(index);
} else {
return parametersBuilder_.getMessage(index);
}
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder setParameters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (parametersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureParametersIsMutable();
parameters_.set(index, value);
onChanged();
} else {
parametersBuilder_.setMessage(index, value);
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder setParameters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
parameters_.set(index, builderForValue.build());
onChanged();
} else {
parametersBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder addParameters(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (parametersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureParametersIsMutable();
parameters_.add(value);
onChanged();
} else {
parametersBuilder_.addMessage(value);
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder addParameters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (parametersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureParametersIsMutable();
parameters_.add(index, value);
onChanged();
} else {
parametersBuilder_.addMessage(index, value);
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder addParameters(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
parameters_.add(builderForValue.build());
onChanged();
} else {
parametersBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder addParameters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
parameters_.add(index, builderForValue.build());
onChanged();
} else {
parametersBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder addAllParameters(
java.lang.Iterable extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter> values) {
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, parameters_);
onChanged();
} else {
parametersBuilder_.addAllMessages(values);
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder clearParameters() {
if (parametersBuilder_ == null) {
parameters_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
parametersBuilder_.clear();
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public Builder removeParameters(int index) {
if (parametersBuilder_ == null) {
ensureParametersIsMutable();
parameters_.remove(index);
onChanged();
} else {
parametersBuilder_.remove(index);
}
return this;
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder getParametersBuilder(
int index) {
return getParametersFieldBuilder().getBuilder(index);
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getParametersOrBuilder(
int index) {
if (parametersBuilder_ == null) {
return parameters_.get(index); } else {
return parametersBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getParametersOrBuilderList() {
if (parametersBuilder_ != null) {
return parametersBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(parameters_);
}
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder addParametersBuilder() {
return getParametersFieldBuilder().addBuilder(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance());
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder addParametersBuilder(
int index) {
return getParametersFieldBuilder().addBuilder(
index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance());
}
/**
*
* Any parameters used by the data filter. These can be in pixels
* or relative to the PSF width.
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter parameters = 2;
*/
public java.util.List
getParametersBuilderList() {
return getParametersFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getParametersFieldBuilder() {
if (parametersBuilder_ == null) {
parametersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>(
parameters_,
((bitField0_ & 0x00000002) != 0),
getParentForChildren(),
isClean());
parameters_ = null;
}
return parametersBuilder_;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilter)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilter)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public DataFilter parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface DataFilterSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The enum numeric value on the wire for dataFilterType.
*/
int getDataFilterTypeValue();
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The dataFilterType.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType getDataFilterType();
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
java.util.List
getDataFiltersList();
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDataFilters(int index);
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
int getDataFiltersCount();
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder>
getDataFiltersOrBuilderList();
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder getDataFiltersOrBuilder(
int index);
}
/**
*
* Define the settings for filtering data to identify candidates.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings}
*/
public static final class DataFilterSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings)
DataFilterSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use DataFilterSettings.newBuilder() to construct.
private DataFilterSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private DataFilterSettings() {
dataFilterType_ = 0;
dataFilters_ = java.util.Collections.emptyList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new DataFilterSettings();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder.class);
}
public static final int DATA_FILTER_TYPE_FIELD_NUMBER = 1;
private int dataFilterType_ = 0;
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The enum numeric value on the wire for dataFilterType.
*/
@java.lang.Override public int getDataFilterTypeValue() {
return dataFilterType_;
}
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The dataFilterType.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType getDataFilterType() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.forNumber(dataFilterType_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.UNRECOGNIZED : result;
}
public static final int DATA_FILTERS_FIELD_NUMBER = 2;
@SuppressWarnings("serial")
private java.util.List dataFilters_;
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
@java.lang.Override
public java.util.List getDataFiltersList() {
return dataFilters_;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
@java.lang.Override
public java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder>
getDataFiltersOrBuilderList() {
return dataFilters_;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
@java.lang.Override
public int getDataFiltersCount() {
return dataFilters_.size();
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDataFilters(int index) {
return dataFilters_.get(index);
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder getDataFiltersOrBuilder(
int index) {
return dataFilters_.get(index);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (dataFilterType_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.SINGLE.getNumber()) {
output.writeEnum(1, dataFilterType_);
}
for (int i = 0; i < dataFilters_.size(); i++) {
output.writeMessage(2, dataFilters_.get(i));
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (dataFilterType_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.SINGLE.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(1, dataFilterType_);
}
for (int i = 0; i < dataFilters_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, dataFilters_.get(i));
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings) obj;
if (dataFilterType_ != other.dataFilterType_) return false;
if (!getDataFiltersList()
.equals(other.getDataFiltersList())) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + DATA_FILTER_TYPE_FIELD_NUMBER;
hash = (53 * hash) + dataFilterType_;
if (getDataFiltersCount() > 0) {
hash = (37 * hash) + DATA_FILTERS_FIELD_NUMBER;
hash = (53 * hash) + getDataFiltersList().hashCode();
}
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define the settings for filtering data to identify candidates.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
dataFilterType_ = 0;
if (dataFiltersBuilder_ == null) {
dataFilters_ = java.util.Collections.emptyList();
} else {
dataFilters_ = null;
dataFiltersBuilder_.clear();
}
bitField0_ = (bitField0_ & ~0x00000002);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings(this);
buildPartialRepeatedFields(result);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartialRepeatedFields(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings result) {
if (dataFiltersBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0)) {
dataFilters_ = java.util.Collections.unmodifiableList(dataFilters_);
bitField0_ = (bitField0_ & ~0x00000002);
}
result.dataFilters_ = dataFilters_;
} else {
result.dataFilters_ = dataFiltersBuilder_.build();
}
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.dataFilterType_ = dataFilterType_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance()) return this;
if (other.dataFilterType_ != 0) {
setDataFilterTypeValue(other.getDataFilterTypeValue());
}
if (dataFiltersBuilder_ == null) {
if (!other.dataFilters_.isEmpty()) {
if (dataFilters_.isEmpty()) {
dataFilters_ = other.dataFilters_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureDataFiltersIsMutable();
dataFilters_.addAll(other.dataFilters_);
}
onChanged();
}
} else {
if (!other.dataFilters_.isEmpty()) {
if (dataFiltersBuilder_.isEmpty()) {
dataFiltersBuilder_.dispose();
dataFiltersBuilder_ = null;
dataFilters_ = other.dataFilters_;
bitField0_ = (bitField0_ & ~0x00000002);
dataFiltersBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getDataFiltersFieldBuilder() : null;
} else {
dataFiltersBuilder_.addAllMessages(other.dataFilters_);
}
}
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
dataFilterType_ = input.readEnum();
bitField0_ |= 0x00000001;
break;
} // case 8
case 18: {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter m =
input.readMessage(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.parser(),
extensionRegistry);
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
dataFilters_.add(m);
} else {
dataFiltersBuilder_.addMessage(m);
}
break;
} // case 18
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private int dataFilterType_ = 0;
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The enum numeric value on the wire for dataFilterType.
*/
@java.lang.Override public int getDataFilterTypeValue() {
return dataFilterType_;
}
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @param value The enum numeric value on the wire for dataFilterType to set.
* @return This builder for chaining.
*/
public Builder setDataFilterTypeValue(int value) {
dataFilterType_ = value;
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return The dataFilterType.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType getDataFilterType() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.forNumber(dataFilterType_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType.UNRECOGNIZED : result;
}
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @param value The dataFilterType to set.
* @return This builder for chaining.
*/
public Builder setDataFilterType(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterType value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
dataFilterType_ = value.getNumber();
onChanged();
return this;
}
/**
*
* The type of data filter
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterType data_filter_type = 1;
* @return This builder for chaining.
*/
public Builder clearDataFilterType() {
bitField0_ = (bitField0_ & ~0x00000001);
dataFilterType_ = 0;
onChanged();
return this;
}
private java.util.List dataFilters_ =
java.util.Collections.emptyList();
private void ensureDataFiltersIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
dataFilters_ = new java.util.ArrayList(dataFilters_);
bitField0_ |= 0x00000002;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder> dataFiltersBuilder_;
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public java.util.List getDataFiltersList() {
if (dataFiltersBuilder_ == null) {
return java.util.Collections.unmodifiableList(dataFilters_);
} else {
return dataFiltersBuilder_.getMessageList();
}
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public int getDataFiltersCount() {
if (dataFiltersBuilder_ == null) {
return dataFilters_.size();
} else {
return dataFiltersBuilder_.getCount();
}
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter getDataFilters(int index) {
if (dataFiltersBuilder_ == null) {
return dataFilters_.get(index);
} else {
return dataFiltersBuilder_.getMessage(index);
}
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder setDataFilters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter value) {
if (dataFiltersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDataFiltersIsMutable();
dataFilters_.set(index, value);
onChanged();
} else {
dataFiltersBuilder_.setMessage(index, value);
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder setDataFilters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder builderForValue) {
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
dataFilters_.set(index, builderForValue.build());
onChanged();
} else {
dataFiltersBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder addDataFilters(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter value) {
if (dataFiltersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDataFiltersIsMutable();
dataFilters_.add(value);
onChanged();
} else {
dataFiltersBuilder_.addMessage(value);
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder addDataFilters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter value) {
if (dataFiltersBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDataFiltersIsMutable();
dataFilters_.add(index, value);
onChanged();
} else {
dataFiltersBuilder_.addMessage(index, value);
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder addDataFilters(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder builderForValue) {
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
dataFilters_.add(builderForValue.build());
onChanged();
} else {
dataFiltersBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder addDataFilters(
int index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder builderForValue) {
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
dataFilters_.add(index, builderForValue.build());
onChanged();
} else {
dataFiltersBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder addAllDataFilters(
java.lang.Iterable extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter> values) {
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, dataFilters_);
onChanged();
} else {
dataFiltersBuilder_.addAllMessages(values);
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder clearDataFilters() {
if (dataFiltersBuilder_ == null) {
dataFilters_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
dataFiltersBuilder_.clear();
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public Builder removeDataFilters(int index) {
if (dataFiltersBuilder_ == null) {
ensureDataFiltersIsMutable();
dataFilters_.remove(index);
onChanged();
} else {
dataFiltersBuilder_.remove(index);
}
return this;
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder getDataFiltersBuilder(
int index) {
return getDataFiltersFieldBuilder().getBuilder(index);
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder getDataFiltersOrBuilder(
int index) {
if (dataFiltersBuilder_ == null) {
return dataFilters_.get(index); } else {
return dataFiltersBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public java.util.List extends uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder>
getDataFiltersOrBuilderList() {
if (dataFiltersBuilder_ != null) {
return dataFiltersBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(dataFilters_);
}
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder addDataFiltersBuilder() {
return getDataFiltersFieldBuilder().addBuilder(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.getDefaultInstance());
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder addDataFiltersBuilder(
int index) {
return getDataFiltersFieldBuilder().addBuilder(
index, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.getDefaultInstance());
}
/**
*
* The data filter
*
*
* repeated .uk.ac.sussex.gdsc.smlm.data.config.DataFilter data_filters = 2;
*/
public java.util.List
getDataFiltersBuilderList() {
return getDataFiltersFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder>
getDataFiltersFieldBuilder() {
if (dataFiltersBuilder_ == null) {
dataFiltersBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterOrBuilder>(
dataFilters_,
((bitField0_ & 0x00000002) != 0),
getParentForChildren(),
isClean());
dataFilters_ = null;
}
return dataFiltersBuilder_;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public DataFilterSettings parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface FitEngineSettingsOrBuilder extends
// @@protoc_insertion_point(interface_extends:uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings)
com.google.protobuf.MessageOrBuilder {
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return Whether the fitSettings field is set.
*/
boolean hasFitSettings();
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return The fitSettings.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getFitSettings();
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder getFitSettingsOrBuilder();
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The enum numeric value on the wire for noiseMethod.
*/
int getNoiseMethodValue();
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The noiseMethod.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod getNoiseMethod();
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return Whether the dataFilterSettings field is set.
*/
boolean hasDataFilterSettings();
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return The dataFilterSettings.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDataFilterSettings();
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder getDataFilterSettingsOrBuilder();
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return Whether the search field is set.
*/
boolean hasSearch();
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return The search.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getSearch();
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getSearchOrBuilder();
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return Whether the border field is set.
*/
boolean hasBorder();
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return The border.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getBorder();
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getBorderOrBuilder();
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return Whether the fitting field is set.
*/
boolean hasFitting();
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return The fitting.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getFitting();
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getFittingOrBuilder();
/**
*
* Set to true to include neighbours during fitting
*
*
* bool include_neighbours = 7;
* @return The includeNeighbours.
*/
boolean getIncludeNeighbours();
/**
*
* The height threshold for including neighbours expressed relative to the current candidate
*
*
* double neighbour_height_threshold = 8;
* @return The neighbourHeightThreshold.
*/
double getNeighbourHeightThreshold();
/**
*
* The residuals threshold for refitting a single peak as a doublet following analysis of the symmetry of the fit residuals.
*
*
* double residuals_threshold = 9;
* @return The residualsThreshold.
*/
double getResidualsThreshold();
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return Whether the duplicateDistance field is set.
*/
boolean hasDuplicateDistance();
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return The duplicateDistance.
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDuplicateDistance();
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getDuplicateDistanceOrBuilder();
/**
*
* The number of consecutive failures to allow before stopping fitting of the remaining candidates.
* Set to negative to disable.
*
*
* int32 failures_limit = 11;
* @return The failuresLimit.
*/
int getFailuresLimit();
/**
*
* The pass rate (range 0-1) to continue fitting. If the fraction of accepted fits falls below
* this threshold then stop fitting of the remaining candidates. Set to zero to disable.
*
*
* double pass_rate = 12;
* @return The passRate.
*/
double getPassRate();
}
/**
*
* Define the settings for the fit engine. These settings are used to identify
* candidates in the input data, extract regions for fitting, fit using various
* methods (single, multiple, doublet) and select the best fit.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings}
*/
public static final class FitEngineSettings extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings)
FitEngineSettingsOrBuilder {
private static final long serialVersionUID = 0L;
// Use FitEngineSettings.newBuilder() to construct.
private FitEngineSettings(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
super(builder);
}
private FitEngineSettings() {
noiseMethod_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new FitEngineSettings();
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.Builder.class);
}
public static final int FIT_SETTINGS_FIELD_NUMBER = 1;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings fitSettings_;
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return Whether the fitSettings field is set.
*/
@java.lang.Override
public boolean hasFitSettings() {
return fitSettings_ != null;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return The fitSettings.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getFitSettings() {
return fitSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance() : fitSettings_;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder getFitSettingsOrBuilder() {
return fitSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance() : fitSettings_;
}
public static final int NOISE_METHOD_FIELD_NUMBER = 2;
private int noiseMethod_ = 0;
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The enum numeric value on the wire for noiseMethod.
*/
@java.lang.Override public int getNoiseMethodValue() {
return noiseMethod_;
}
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The noiseMethod.
*/
@java.lang.Override public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod getNoiseMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.forNumber(noiseMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.UNRECOGNIZED : result;
}
public static final int DATA_FILTER_SETTINGS_FIELD_NUMBER = 3;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings dataFilterSettings_;
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return Whether the dataFilterSettings field is set.
*/
@java.lang.Override
public boolean hasDataFilterSettings() {
return dataFilterSettings_ != null;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return The dataFilterSettings.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDataFilterSettings() {
return dataFilterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance() : dataFilterSettings_;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder getDataFilterSettingsOrBuilder() {
return dataFilterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance() : dataFilterSettings_;
}
public static final int SEARCH_FIELD_NUMBER = 4;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter search_;
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return Whether the search field is set.
*/
@java.lang.Override
public boolean hasSearch() {
return search_ != null;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return The search.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getSearch() {
return search_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : search_;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getSearchOrBuilder() {
return search_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : search_;
}
public static final int BORDER_FIELD_NUMBER = 5;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter border_;
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return Whether the border field is set.
*/
@java.lang.Override
public boolean hasBorder() {
return border_ != null;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return The border.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getBorder() {
return border_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : border_;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getBorderOrBuilder() {
return border_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : border_;
}
public static final int FITTING_FIELD_NUMBER = 6;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter fitting_;
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return Whether the fitting field is set.
*/
@java.lang.Override
public boolean hasFitting() {
return fitting_ != null;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return The fitting.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getFitting() {
return fitting_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : fitting_;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getFittingOrBuilder() {
return fitting_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : fitting_;
}
public static final int INCLUDE_NEIGHBOURS_FIELD_NUMBER = 7;
private boolean includeNeighbours_ = false;
/**
*
* Set to true to include neighbours during fitting
*
*
* bool include_neighbours = 7;
* @return The includeNeighbours.
*/
@java.lang.Override
public boolean getIncludeNeighbours() {
return includeNeighbours_;
}
public static final int NEIGHBOUR_HEIGHT_THRESHOLD_FIELD_NUMBER = 8;
private double neighbourHeightThreshold_ = 0D;
/**
*
* The height threshold for including neighbours expressed relative to the current candidate
*
*
* double neighbour_height_threshold = 8;
* @return The neighbourHeightThreshold.
*/
@java.lang.Override
public double getNeighbourHeightThreshold() {
return neighbourHeightThreshold_;
}
public static final int RESIDUALS_THRESHOLD_FIELD_NUMBER = 9;
private double residualsThreshold_ = 0D;
/**
*
* The residuals threshold for refitting a single peak as a doublet following analysis of the symmetry of the fit residuals.
*
*
* double residuals_threshold = 9;
* @return The residualsThreshold.
*/
@java.lang.Override
public double getResidualsThreshold() {
return residualsThreshold_;
}
public static final int DUPLICATE_DISTANCE_FIELD_NUMBER = 10;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter duplicateDistance_;
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return Whether the duplicateDistance field is set.
*/
@java.lang.Override
public boolean hasDuplicateDistance() {
return duplicateDistance_ != null;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return The duplicateDistance.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDuplicateDistance() {
return duplicateDistance_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : duplicateDistance_;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getDuplicateDistanceOrBuilder() {
return duplicateDistance_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : duplicateDistance_;
}
public static final int FAILURES_LIMIT_FIELD_NUMBER = 11;
private int failuresLimit_ = 0;
/**
*
* The number of consecutive failures to allow before stopping fitting of the remaining candidates.
* Set to negative to disable.
*
*
* int32 failures_limit = 11;
* @return The failuresLimit.
*/
@java.lang.Override
public int getFailuresLimit() {
return failuresLimit_;
}
public static final int PASS_RATE_FIELD_NUMBER = 12;
private double passRate_ = 0D;
/**
*
* The pass rate (range 0-1) to continue fitting. If the fraction of accepted fits falls below
* this threshold then stop fitting of the remaining candidates. Set to zero to disable.
*
*
* double pass_rate = 12;
* @return The passRate.
*/
@java.lang.Override
public double getPassRate() {
return passRate_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (fitSettings_ != null) {
output.writeMessage(1, getFitSettings());
}
if (noiseMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.ALL_PIXELS.getNumber()) {
output.writeEnum(2, noiseMethod_);
}
if (dataFilterSettings_ != null) {
output.writeMessage(3, getDataFilterSettings());
}
if (search_ != null) {
output.writeMessage(4, getSearch());
}
if (border_ != null) {
output.writeMessage(5, getBorder());
}
if (fitting_ != null) {
output.writeMessage(6, getFitting());
}
if (includeNeighbours_ != false) {
output.writeBool(7, includeNeighbours_);
}
if (java.lang.Double.doubleToRawLongBits(neighbourHeightThreshold_) != 0) {
output.writeDouble(8, neighbourHeightThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(residualsThreshold_) != 0) {
output.writeDouble(9, residualsThreshold_);
}
if (duplicateDistance_ != null) {
output.writeMessage(10, getDuplicateDistance());
}
if (failuresLimit_ != 0) {
output.writeInt32(11, failuresLimit_);
}
if (java.lang.Double.doubleToRawLongBits(passRate_) != 0) {
output.writeDouble(12, passRate_);
}
getUnknownFields().writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (fitSettings_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, getFitSettings());
}
if (noiseMethod_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.ALL_PIXELS.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(2, noiseMethod_);
}
if (dataFilterSettings_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(3, getDataFilterSettings());
}
if (search_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(4, getSearch());
}
if (border_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(5, getBorder());
}
if (fitting_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(6, getFitting());
}
if (includeNeighbours_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(7, includeNeighbours_);
}
if (java.lang.Double.doubleToRawLongBits(neighbourHeightThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(8, neighbourHeightThreshold_);
}
if (java.lang.Double.doubleToRawLongBits(residualsThreshold_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(9, residualsThreshold_);
}
if (duplicateDistance_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(10, getDuplicateDistance());
}
if (failuresLimit_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(11, failuresLimit_);
}
if (java.lang.Double.doubleToRawLongBits(passRate_) != 0) {
size += com.google.protobuf.CodedOutputStream
.computeDoubleSize(12, passRate_);
}
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings)) {
return super.equals(obj);
}
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings other = (uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings) obj;
if (hasFitSettings() != other.hasFitSettings()) return false;
if (hasFitSettings()) {
if (!getFitSettings()
.equals(other.getFitSettings())) return false;
}
if (noiseMethod_ != other.noiseMethod_) return false;
if (hasDataFilterSettings() != other.hasDataFilterSettings()) return false;
if (hasDataFilterSettings()) {
if (!getDataFilterSettings()
.equals(other.getDataFilterSettings())) return false;
}
if (hasSearch() != other.hasSearch()) return false;
if (hasSearch()) {
if (!getSearch()
.equals(other.getSearch())) return false;
}
if (hasBorder() != other.hasBorder()) return false;
if (hasBorder()) {
if (!getBorder()
.equals(other.getBorder())) return false;
}
if (hasFitting() != other.hasFitting()) return false;
if (hasFitting()) {
if (!getFitting()
.equals(other.getFitting())) return false;
}
if (getIncludeNeighbours()
!= other.getIncludeNeighbours()) return false;
if (java.lang.Double.doubleToLongBits(getNeighbourHeightThreshold())
!= java.lang.Double.doubleToLongBits(
other.getNeighbourHeightThreshold())) return false;
if (java.lang.Double.doubleToLongBits(getResidualsThreshold())
!= java.lang.Double.doubleToLongBits(
other.getResidualsThreshold())) return false;
if (hasDuplicateDistance() != other.hasDuplicateDistance()) return false;
if (hasDuplicateDistance()) {
if (!getDuplicateDistance()
.equals(other.getDuplicateDistance())) return false;
}
if (getFailuresLimit()
!= other.getFailuresLimit()) return false;
if (java.lang.Double.doubleToLongBits(getPassRate())
!= java.lang.Double.doubleToLongBits(
other.getPassRate())) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
if (hasFitSettings()) {
hash = (37 * hash) + FIT_SETTINGS_FIELD_NUMBER;
hash = (53 * hash) + getFitSettings().hashCode();
}
hash = (37 * hash) + NOISE_METHOD_FIELD_NUMBER;
hash = (53 * hash) + noiseMethod_;
if (hasDataFilterSettings()) {
hash = (37 * hash) + DATA_FILTER_SETTINGS_FIELD_NUMBER;
hash = (53 * hash) + getDataFilterSettings().hashCode();
}
if (hasSearch()) {
hash = (37 * hash) + SEARCH_FIELD_NUMBER;
hash = (53 * hash) + getSearch().hashCode();
}
if (hasBorder()) {
hash = (37 * hash) + BORDER_FIELD_NUMBER;
hash = (53 * hash) + getBorder().hashCode();
}
if (hasFitting()) {
hash = (37 * hash) + FITTING_FIELD_NUMBER;
hash = (53 * hash) + getFitting().hashCode();
}
hash = (37 * hash) + INCLUDE_NEIGHBOURS_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getIncludeNeighbours());
hash = (37 * hash) + NEIGHBOUR_HEIGHT_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getNeighbourHeightThreshold()));
hash = (37 * hash) + RESIDUALS_THRESHOLD_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getResidualsThreshold()));
if (hasDuplicateDistance()) {
hash = (37 * hash) + DUPLICATE_DISTANCE_FIELD_NUMBER;
hash = (53 * hash) + getDuplicateDistance().hashCode();
}
hash = (37 * hash) + FAILURES_LIMIT_FIELD_NUMBER;
hash = (53 * hash) + getFailuresLimit();
hash = (37 * hash) + PASS_RATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
java.lang.Double.doubleToLongBits(getPassRate()));
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
*
* Define the settings for the fit engine. These settings are used to identify
* candidates in the input data, extract regions for fitting, fit using various
* methods (single, multiple, doublet) and select the best fit.
*
*
* Protobuf type {@code uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder implements
// @@protoc_insertion_point(builder_implements:uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings)
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettingsOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_fieldAccessorTable
.ensureFieldAccessorsInitialized(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.class, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.Builder.class);
}
// Construct using uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.newBuilder()
private Builder() {
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
}
@java.lang.Override
public Builder clear() {
super.clear();
bitField0_ = 0;
fitSettings_ = null;
if (fitSettingsBuilder_ != null) {
fitSettingsBuilder_.dispose();
fitSettingsBuilder_ = null;
}
noiseMethod_ = 0;
dataFilterSettings_ = null;
if (dataFilterSettingsBuilder_ != null) {
dataFilterSettingsBuilder_.dispose();
dataFilterSettingsBuilder_ = null;
}
search_ = null;
if (searchBuilder_ != null) {
searchBuilder_.dispose();
searchBuilder_ = null;
}
border_ = null;
if (borderBuilder_ != null) {
borderBuilder_.dispose();
borderBuilder_ = null;
}
fitting_ = null;
if (fittingBuilder_ != null) {
fittingBuilder_.dispose();
fittingBuilder_ = null;
}
includeNeighbours_ = false;
neighbourHeightThreshold_ = 0D;
residualsThreshold_ = 0D;
duplicateDistance_ = null;
if (duplicateDistanceBuilder_ != null) {
duplicateDistanceBuilder_.dispose();
duplicateDistanceBuilder_ = null;
}
failuresLimit_ = 0;
passRate_ = 0D;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings getDefaultInstanceForType() {
return uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.getDefaultInstance();
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings build() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings buildPartial() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings result = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings(this);
if (bitField0_ != 0) { buildPartial0(result); }
onBuilt();
return result;
}
private void buildPartial0(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings result) {
int from_bitField0_ = bitField0_;
if (((from_bitField0_ & 0x00000001) != 0)) {
result.fitSettings_ = fitSettingsBuilder_ == null
? fitSettings_
: fitSettingsBuilder_.build();
}
if (((from_bitField0_ & 0x00000002) != 0)) {
result.noiseMethod_ = noiseMethod_;
}
if (((from_bitField0_ & 0x00000004) != 0)) {
result.dataFilterSettings_ = dataFilterSettingsBuilder_ == null
? dataFilterSettings_
: dataFilterSettingsBuilder_.build();
}
if (((from_bitField0_ & 0x00000008) != 0)) {
result.search_ = searchBuilder_ == null
? search_
: searchBuilder_.build();
}
if (((from_bitField0_ & 0x00000010) != 0)) {
result.border_ = borderBuilder_ == null
? border_
: borderBuilder_.build();
}
if (((from_bitField0_ & 0x00000020) != 0)) {
result.fitting_ = fittingBuilder_ == null
? fitting_
: fittingBuilder_.build();
}
if (((from_bitField0_ & 0x00000040) != 0)) {
result.includeNeighbours_ = includeNeighbours_;
}
if (((from_bitField0_ & 0x00000080) != 0)) {
result.neighbourHeightThreshold_ = neighbourHeightThreshold_;
}
if (((from_bitField0_ & 0x00000100) != 0)) {
result.residualsThreshold_ = residualsThreshold_;
}
if (((from_bitField0_ & 0x00000200) != 0)) {
result.duplicateDistance_ = duplicateDistanceBuilder_ == null
? duplicateDistance_
: duplicateDistanceBuilder_.build();
}
if (((from_bitField0_ & 0x00000400) != 0)) {
result.failuresLimit_ = failuresLimit_;
}
if (((from_bitField0_ & 0x00000800) != 0)) {
result.passRate_ = passRate_;
}
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings) {
return mergeFrom((uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings other) {
if (other == uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings.getDefaultInstance()) return this;
if (other.hasFitSettings()) {
mergeFitSettings(other.getFitSettings());
}
if (other.noiseMethod_ != 0) {
setNoiseMethodValue(other.getNoiseMethodValue());
}
if (other.hasDataFilterSettings()) {
mergeDataFilterSettings(other.getDataFilterSettings());
}
if (other.hasSearch()) {
mergeSearch(other.getSearch());
}
if (other.hasBorder()) {
mergeBorder(other.getBorder());
}
if (other.hasFitting()) {
mergeFitting(other.getFitting());
}
if (other.getIncludeNeighbours() != false) {
setIncludeNeighbours(other.getIncludeNeighbours());
}
if (other.getNeighbourHeightThreshold() != 0D) {
setNeighbourHeightThreshold(other.getNeighbourHeightThreshold());
}
if (other.getResidualsThreshold() != 0D) {
setResidualsThreshold(other.getResidualsThreshold());
}
if (other.hasDuplicateDistance()) {
mergeDuplicateDistance(other.getDuplicateDistance());
}
if (other.getFailuresLimit() != 0) {
setFailuresLimit(other.getFailuresLimit());
}
if (other.getPassRate() != 0D) {
setPassRate(other.getPassRate());
}
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
input.readMessage(
getFitSettingsFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000001;
break;
} // case 10
case 16: {
noiseMethod_ = input.readEnum();
bitField0_ |= 0x00000002;
break;
} // case 16
case 26: {
input.readMessage(
getDataFilterSettingsFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000004;
break;
} // case 26
case 34: {
input.readMessage(
getSearchFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000008;
break;
} // case 34
case 42: {
input.readMessage(
getBorderFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000010;
break;
} // case 42
case 50: {
input.readMessage(
getFittingFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000020;
break;
} // case 50
case 56: {
includeNeighbours_ = input.readBool();
bitField0_ |= 0x00000040;
break;
} // case 56
case 65: {
neighbourHeightThreshold_ = input.readDouble();
bitField0_ |= 0x00000080;
break;
} // case 65
case 73: {
residualsThreshold_ = input.readDouble();
bitField0_ |= 0x00000100;
break;
} // case 73
case 82: {
input.readMessage(
getDuplicateDistanceFieldBuilder().getBuilder(),
extensionRegistry);
bitField0_ |= 0x00000200;
break;
} // case 82
case 88: {
failuresLimit_ = input.readInt32();
bitField0_ |= 0x00000400;
break;
} // case 88
case 97: {
passRate_ = input.readDouble();
bitField0_ |= 0x00000800;
break;
} // case 97
default: {
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
done = true; // was an endgroup tag
}
break;
} // default:
} // switch (tag)
} // while (!done)
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.unwrapIOException();
} finally {
onChanged();
} // finally
return this;
}
private int bitField0_;
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings fitSettings_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder> fitSettingsBuilder_;
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return Whether the fitSettings field is set.
*/
public boolean hasFitSettings() {
return ((bitField0_ & 0x00000001) != 0);
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
* @return The fitSettings.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings getFitSettings() {
if (fitSettingsBuilder_ == null) {
return fitSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance() : fitSettings_;
} else {
return fitSettingsBuilder_.getMessage();
}
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public Builder setFitSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings value) {
if (fitSettingsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
fitSettings_ = value;
} else {
fitSettingsBuilder_.setMessage(value);
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public Builder setFitSettings(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder builderForValue) {
if (fitSettingsBuilder_ == null) {
fitSettings_ = builderForValue.build();
} else {
fitSettingsBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public Builder mergeFitSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings value) {
if (fitSettingsBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0) &&
fitSettings_ != null &&
fitSettings_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance()) {
getFitSettingsBuilder().mergeFrom(value);
} else {
fitSettings_ = value;
}
} else {
fitSettingsBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000001;
onChanged();
return this;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public Builder clearFitSettings() {
bitField0_ = (bitField0_ & ~0x00000001);
fitSettings_ = null;
if (fitSettingsBuilder_ != null) {
fitSettingsBuilder_.dispose();
fitSettingsBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder getFitSettingsBuilder() {
bitField0_ |= 0x00000001;
onChanged();
return getFitSettingsFieldBuilder().getBuilder();
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder getFitSettingsOrBuilder() {
if (fitSettingsBuilder_ != null) {
return fitSettingsBuilder_.getMessageOrBuilder();
} else {
return fitSettings_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.getDefaultInstance() : fitSettings_;
}
}
/**
*
* The fit settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.FitSettings fit_settings = 1;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder>
getFitSettingsFieldBuilder() {
if (fitSettingsBuilder_ == null) {
fitSettingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitSettingsOrBuilder>(
getFitSettings(),
getParentForChildren(),
isClean());
fitSettings_ = null;
}
return fitSettingsBuilder_;
}
private int noiseMethod_ = 0;
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The enum numeric value on the wire for noiseMethod.
*/
@java.lang.Override public int getNoiseMethodValue() {
return noiseMethod_;
}
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @param value The enum numeric value on the wire for noiseMethod to set.
* @return This builder for chaining.
*/
public Builder setNoiseMethodValue(int value) {
noiseMethod_ = value;
bitField0_ |= 0x00000002;
onChanged();
return this;
}
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return The noiseMethod.
*/
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod getNoiseMethod() {
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod result = uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.forNumber(noiseMethod_);
return result == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod.UNRECOGNIZED : result;
}
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @param value The noiseMethod to set.
* @return This builder for chaining.
*/
public Builder setNoiseMethod(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.NoiseEstimatorMethod value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000002;
noiseMethod_ = value.getNumber();
onChanged();
return this;
}
/**
*
* the method for estimating noise in the entire frame
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.NoiseEstimatorMethod noise_method = 2;
* @return This builder for chaining.
*/
public Builder clearNoiseMethod() {
bitField0_ = (bitField0_ & ~0x00000002);
noiseMethod_ = 0;
onChanged();
return this;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings dataFilterSettings_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder> dataFilterSettingsBuilder_;
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return Whether the dataFilterSettings field is set.
*/
public boolean hasDataFilterSettings() {
return ((bitField0_ & 0x00000004) != 0);
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
* @return The dataFilterSettings.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings getDataFilterSettings() {
if (dataFilterSettingsBuilder_ == null) {
return dataFilterSettings_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance() : dataFilterSettings_;
} else {
return dataFilterSettingsBuilder_.getMessage();
}
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public Builder setDataFilterSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings value) {
if (dataFilterSettingsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
dataFilterSettings_ = value;
} else {
dataFilterSettingsBuilder_.setMessage(value);
}
bitField0_ |= 0x00000004;
onChanged();
return this;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public Builder setDataFilterSettings(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder builderForValue) {
if (dataFilterSettingsBuilder_ == null) {
dataFilterSettings_ = builderForValue.build();
} else {
dataFilterSettingsBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000004;
onChanged();
return this;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public Builder mergeDataFilterSettings(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings value) {
if (dataFilterSettingsBuilder_ == null) {
if (((bitField0_ & 0x00000004) != 0) &&
dataFilterSettings_ != null &&
dataFilterSettings_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance()) {
getDataFilterSettingsBuilder().mergeFrom(value);
} else {
dataFilterSettings_ = value;
}
} else {
dataFilterSettingsBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000004;
onChanged();
return this;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public Builder clearDataFilterSettings() {
bitField0_ = (bitField0_ & ~0x00000004);
dataFilterSettings_ = null;
if (dataFilterSettingsBuilder_ != null) {
dataFilterSettingsBuilder_.dispose();
dataFilterSettingsBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder getDataFilterSettingsBuilder() {
bitField0_ |= 0x00000004;
onChanged();
return getDataFilterSettingsFieldBuilder().getBuilder();
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder getDataFilterSettingsOrBuilder() {
if (dataFilterSettingsBuilder_ != null) {
return dataFilterSettingsBuilder_.getMessageOrBuilder();
} else {
return dataFilterSettings_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.getDefaultInstance() : dataFilterSettings_;
}
}
/**
*
* The data filter settings
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.DataFilterSettings data_filter_settings = 3;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder>
getDataFilterSettingsFieldBuilder() {
if (dataFilterSettingsBuilder_ == null) {
dataFilterSettingsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettings.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.DataFilterSettingsOrBuilder>(
getDataFilterSettings(),
getParentForChildren(),
isClean());
dataFilterSettings_ = null;
}
return dataFilterSettingsBuilder_;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter search_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder> searchBuilder_;
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return Whether the search field is set.
*/
public boolean hasSearch() {
return ((bitField0_ & 0x00000008) != 0);
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
* @return The search.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getSearch() {
if (searchBuilder_ == null) {
return search_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : search_;
} else {
return searchBuilder_.getMessage();
}
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public Builder setSearch(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (searchBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
search_ = value;
} else {
searchBuilder_.setMessage(value);
}
bitField0_ |= 0x00000008;
onChanged();
return this;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public Builder setSearch(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (searchBuilder_ == null) {
search_ = builderForValue.build();
} else {
searchBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000008;
onChanged();
return this;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public Builder mergeSearch(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (searchBuilder_ == null) {
if (((bitField0_ & 0x00000008) != 0) &&
search_ != null &&
search_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance()) {
getSearchBuilder().mergeFrom(value);
} else {
search_ = value;
}
} else {
searchBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000008;
onChanged();
return this;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public Builder clearSearch() {
bitField0_ = (bitField0_ & ~0x00000008);
search_ = null;
if (searchBuilder_ != null) {
searchBuilder_.dispose();
searchBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder getSearchBuilder() {
bitField0_ |= 0x00000008;
onChanged();
return getSearchFieldBuilder().getBuilder();
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getSearchOrBuilder() {
if (searchBuilder_ != null) {
return searchBuilder_.getMessageOrBuilder();
} else {
return search_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : search_;
}
}
/**
*
* The square radius to use to identify local maxima (candidates)
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter search = 4;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getSearchFieldBuilder() {
if (searchBuilder_ == null) {
searchBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>(
getSearch(),
getParentForChildren(),
isClean());
search_ = null;
}
return searchBuilder_;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter border_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder> borderBuilder_;
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return Whether the border field is set.
*/
public boolean hasBorder() {
return ((bitField0_ & 0x00000010) != 0);
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
* @return The border.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getBorder() {
if (borderBuilder_ == null) {
return border_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : border_;
} else {
return borderBuilder_.getMessage();
}
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public Builder setBorder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (borderBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
border_ = value;
} else {
borderBuilder_.setMessage(value);
}
bitField0_ |= 0x00000010;
onChanged();
return this;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public Builder setBorder(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (borderBuilder_ == null) {
border_ = builderForValue.build();
} else {
borderBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000010;
onChanged();
return this;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public Builder mergeBorder(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (borderBuilder_ == null) {
if (((bitField0_ & 0x00000010) != 0) &&
border_ != null &&
border_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance()) {
getBorderBuilder().mergeFrom(value);
} else {
border_ = value;
}
} else {
borderBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000010;
onChanged();
return this;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public Builder clearBorder() {
bitField0_ = (bitField0_ & ~0x00000010);
border_ = null;
if (borderBuilder_ != null) {
borderBuilder_.dispose();
borderBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder getBorderBuilder() {
bitField0_ |= 0x00000010;
onChanged();
return getBorderFieldBuilder().getBuilder();
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getBorderOrBuilder() {
if (borderBuilder_ != null) {
return borderBuilder_.getMessageOrBuilder();
} else {
return border_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : border_;
}
}
/**
*
* The border to ignore at the edge of the image
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter border = 5;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getBorderFieldBuilder() {
if (borderBuilder_ == null) {
borderBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>(
getBorder(),
getParentForChildren(),
isClean());
border_ = null;
}
return borderBuilder_;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter fitting_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder> fittingBuilder_;
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return Whether the fitting field is set.
*/
public boolean hasFitting() {
return ((bitField0_ & 0x00000020) != 0);
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
* @return The fitting.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getFitting() {
if (fittingBuilder_ == null) {
return fitting_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : fitting_;
} else {
return fittingBuilder_.getMessage();
}
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public Builder setFitting(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (fittingBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
fitting_ = value;
} else {
fittingBuilder_.setMessage(value);
}
bitField0_ |= 0x00000020;
onChanged();
return this;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public Builder setFitting(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (fittingBuilder_ == null) {
fitting_ = builderForValue.build();
} else {
fittingBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000020;
onChanged();
return this;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public Builder mergeFitting(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (fittingBuilder_ == null) {
if (((bitField0_ & 0x00000020) != 0) &&
fitting_ != null &&
fitting_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance()) {
getFittingBuilder().mergeFrom(value);
} else {
fitting_ = value;
}
} else {
fittingBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000020;
onChanged();
return this;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public Builder clearFitting() {
bitField0_ = (bitField0_ & ~0x00000020);
fitting_ = null;
if (fittingBuilder_ != null) {
fittingBuilder_.dispose();
fittingBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder getFittingBuilder() {
bitField0_ |= 0x00000020;
onChanged();
return getFittingFieldBuilder().getBuilder();
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getFittingOrBuilder() {
if (fittingBuilder_ != null) {
return fittingBuilder_.getMessageOrBuilder();
} else {
return fitting_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : fitting_;
}
}
/**
*
* The square radius to use for fitting around each candidate
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter fitting = 6;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getFittingFieldBuilder() {
if (fittingBuilder_ == null) {
fittingBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>(
getFitting(),
getParentForChildren(),
isClean());
fitting_ = null;
}
return fittingBuilder_;
}
private boolean includeNeighbours_ ;
/**
*
* Set to true to include neighbours during fitting
*
*
* bool include_neighbours = 7;
* @return The includeNeighbours.
*/
@java.lang.Override
public boolean getIncludeNeighbours() {
return includeNeighbours_;
}
/**
*
* Set to true to include neighbours during fitting
*
*
* bool include_neighbours = 7;
* @param value The includeNeighbours to set.
* @return This builder for chaining.
*/
public Builder setIncludeNeighbours(boolean value) {
includeNeighbours_ = value;
bitField0_ |= 0x00000040;
onChanged();
return this;
}
/**
*
* Set to true to include neighbours during fitting
*
*
* bool include_neighbours = 7;
* @return This builder for chaining.
*/
public Builder clearIncludeNeighbours() {
bitField0_ = (bitField0_ & ~0x00000040);
includeNeighbours_ = false;
onChanged();
return this;
}
private double neighbourHeightThreshold_ ;
/**
*
* The height threshold for including neighbours expressed relative to the current candidate
*
*
* double neighbour_height_threshold = 8;
* @return The neighbourHeightThreshold.
*/
@java.lang.Override
public double getNeighbourHeightThreshold() {
return neighbourHeightThreshold_;
}
/**
*
* The height threshold for including neighbours expressed relative to the current candidate
*
*
* double neighbour_height_threshold = 8;
* @param value The neighbourHeightThreshold to set.
* @return This builder for chaining.
*/
public Builder setNeighbourHeightThreshold(double value) {
neighbourHeightThreshold_ = value;
bitField0_ |= 0x00000080;
onChanged();
return this;
}
/**
*
* The height threshold for including neighbours expressed relative to the current candidate
*
*
* double neighbour_height_threshold = 8;
* @return This builder for chaining.
*/
public Builder clearNeighbourHeightThreshold() {
bitField0_ = (bitField0_ & ~0x00000080);
neighbourHeightThreshold_ = 0D;
onChanged();
return this;
}
private double residualsThreshold_ ;
/**
*
* The residuals threshold for refitting a single peak as a doublet following analysis of the symmetry of the fit residuals.
*
*
* double residuals_threshold = 9;
* @return The residualsThreshold.
*/
@java.lang.Override
public double getResidualsThreshold() {
return residualsThreshold_;
}
/**
*
* The residuals threshold for refitting a single peak as a doublet following analysis of the symmetry of the fit residuals.
*
*
* double residuals_threshold = 9;
* @param value The residualsThreshold to set.
* @return This builder for chaining.
*/
public Builder setResidualsThreshold(double value) {
residualsThreshold_ = value;
bitField0_ |= 0x00000100;
onChanged();
return this;
}
/**
*
* The residuals threshold for refitting a single peak as a doublet following analysis of the symmetry of the fit residuals.
*
*
* double residuals_threshold = 9;
* @return This builder for chaining.
*/
public Builder clearResidualsThreshold() {
bitField0_ = (bitField0_ & ~0x00000100);
residualsThreshold_ = 0D;
onChanged();
return this;
}
private uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter duplicateDistance_;
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder> duplicateDistanceBuilder_;
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return Whether the duplicateDistance field is set.
*/
public boolean hasDuplicateDistance() {
return ((bitField0_ & 0x00000200) != 0);
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
* @return The duplicateDistance.
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter getDuplicateDistance() {
if (duplicateDistanceBuilder_ == null) {
return duplicateDistance_ == null ? uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : duplicateDistance_;
} else {
return duplicateDistanceBuilder_.getMessage();
}
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public Builder setDuplicateDistance(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (duplicateDistanceBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
duplicateDistance_ = value;
} else {
duplicateDistanceBuilder_.setMessage(value);
}
bitField0_ |= 0x00000200;
onChanged();
return this;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public Builder setDuplicateDistance(
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder builderForValue) {
if (duplicateDistanceBuilder_ == null) {
duplicateDistance_ = builderForValue.build();
} else {
duplicateDistanceBuilder_.setMessage(builderForValue.build());
}
bitField0_ |= 0x00000200;
onChanged();
return this;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public Builder mergeDuplicateDistance(uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter value) {
if (duplicateDistanceBuilder_ == null) {
if (((bitField0_ & 0x00000200) != 0) &&
duplicateDistance_ != null &&
duplicateDistance_ != uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance()) {
getDuplicateDistanceBuilder().mergeFrom(value);
} else {
duplicateDistance_ = value;
}
} else {
duplicateDistanceBuilder_.mergeFrom(value);
}
bitField0_ |= 0x00000200;
onChanged();
return this;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public Builder clearDuplicateDistance() {
bitField0_ = (bitField0_ & ~0x00000200);
duplicateDistance_ = null;
if (duplicateDistanceBuilder_ != null) {
duplicateDistanceBuilder_.dispose();
duplicateDistanceBuilder_ = null;
}
onChanged();
return this;
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder getDuplicateDistanceBuilder() {
bitField0_ |= 0x00000200;
onChanged();
return getDuplicateDistanceFieldBuilder().getBuilder();
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder getDuplicateDistanceOrBuilder() {
if (duplicateDistanceBuilder_ != null) {
return duplicateDistanceBuilder_.getMessageOrBuilder();
} else {
return duplicateDistance_ == null ?
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.getDefaultInstance() : duplicateDistance_;
}
}
/**
*
* The distance to categorise localisations as duplicates and ignore them.
*
*
* .uk.ac.sussex.gdsc.smlm.data.config.RelativeParameter duplicate_distance = 10;
*/
private com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>
getDuplicateDistanceFieldBuilder() {
if (duplicateDistanceBuilder_ == null) {
duplicateDistanceBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameter.Builder, uk.ac.sussex.gdsc.smlm.data.config.FitProtos.RelativeParameterOrBuilder>(
getDuplicateDistance(),
getParentForChildren(),
isClean());
duplicateDistance_ = null;
}
return duplicateDistanceBuilder_;
}
private int failuresLimit_ ;
/**
*
* The number of consecutive failures to allow before stopping fitting of the remaining candidates.
* Set to negative to disable.
*
*
* int32 failures_limit = 11;
* @return The failuresLimit.
*/
@java.lang.Override
public int getFailuresLimit() {
return failuresLimit_;
}
/**
*
* The number of consecutive failures to allow before stopping fitting of the remaining candidates.
* Set to negative to disable.
*
*
* int32 failures_limit = 11;
* @param value The failuresLimit to set.
* @return This builder for chaining.
*/
public Builder setFailuresLimit(int value) {
failuresLimit_ = value;
bitField0_ |= 0x00000400;
onChanged();
return this;
}
/**
*
* The number of consecutive failures to allow before stopping fitting of the remaining candidates.
* Set to negative to disable.
*
*
* int32 failures_limit = 11;
* @return This builder for chaining.
*/
public Builder clearFailuresLimit() {
bitField0_ = (bitField0_ & ~0x00000400);
failuresLimit_ = 0;
onChanged();
return this;
}
private double passRate_ ;
/**
*
* The pass rate (range 0-1) to continue fitting. If the fraction of accepted fits falls below
* this threshold then stop fitting of the remaining candidates. Set to zero to disable.
*
*
* double pass_rate = 12;
* @return The passRate.
*/
@java.lang.Override
public double getPassRate() {
return passRate_;
}
/**
*
* The pass rate (range 0-1) to continue fitting. If the fraction of accepted fits falls below
* this threshold then stop fitting of the remaining candidates. Set to zero to disable.
*
*
* double pass_rate = 12;
* @param value The passRate to set.
* @return This builder for chaining.
*/
public Builder setPassRate(double value) {
passRate_ = value;
bitField0_ |= 0x00000800;
onChanged();
return this;
}
/**
*
* The pass rate (range 0-1) to continue fitting. If the fraction of accepted fits falls below
* this threshold then stop fitting of the remaining candidates. Set to zero to disable.
*
*
* double pass_rate = 12;
* @return This builder for chaining.
*/
public Builder clearPassRate() {
bitField0_ = (bitField0_ & ~0x00000800);
passRate_ = 0D;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings)
}
// @@protoc_insertion_point(class_scope:uk.ac.sussex.gdsc.smlm.data.config.FitEngineSettings)
private static final uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings();
}
public static uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser
PARSER = new com.google.protobuf.AbstractParser() {
@java.lang.Override
public FitEngineSettings parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
Builder builder = newBuilder();
try {
builder.mergeFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(builder.buildPartial());
} catch (com.google.protobuf.UninitializedMessageException e) {
throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e)
.setUnfinishedMessage(builder.buildPartial());
}
return builder.buildPartial();
}
};
public static com.google.protobuf.Parser parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser getParserForType() {
return PARSER;
}
@java.lang.Override
public uk.ac.sussex.gdsc.smlm.data.config.FitProtos.FitEngineSettings getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor;
}
private static com.google.protobuf.Descriptors.FileDescriptor
descriptor;
static {
java.lang.String[] descriptorData = {
"\n,uk/ac/sussex/gdsc/smlm/data/config/fit" +
".proto\022\"uk.ac.sussex.gdsc.smlm.data.conf" +
"ig\"\264\005\n\021FitSolverSettings\022\021\n\tfixed_psf\030\001 " +
"\001(\010\022\"\n\032disable_background_fitting\030\002 \001(\010\022" +
"\036\n\026disable_signal_fitting\030\003 \001(\010\022A\n\nfit_s" +
"olver\030\004 \001(\0162-.uk.ac.sussex.gdsc.smlm.dat" +
"a.config.FitSolver\022\030\n\020fixed_iterations\030\005" +
" \001(\010\022\026\n\016max_iterations\030\006 \001(\005\022\032\n\022relative" +
"_threshold\030\007 \001(\001\022\032\n\022absolute_threshold\030\010" +
" \001(\001\022$\n\034parameter_relative_threshold\030\t \001" +
"(\001\022$\n\034parameter_absolute_threshold\030\n \001(\001" +
"\022\016\n\006lambda\030\013 \001(\001\022G\n\rsearch_method\030\014 \001(\0162" +
"0.uk.ac.sussex.gdsc.smlm.data.config.Sea" +
"rchMethod\022\"\n\032gradient_line_minimisation\030" +
"\r \001(\010\022\024\n\014model_camera\030\016 \001(\010\022 \n\030max_funct" +
"ion_evaluations\030\017 \001(\005\022\024\n\014use_clamping\030\020 " +
"\001(\010\022\034\n\024use_dynamic_clamping\030\021 \001(\010\022\024\n\014cla" +
"mp_values\030\022 \003(\001\022P\n\022line_search_method\030\023 " +
"\001(\01624.uk.ac.sussex.gdsc.smlm.data.config" +
".LineSearchMethod\"\206\003\n\016FilterSettings\022\024\n\014" +
"shift_factor\030\001 \001(\001\022\027\n\017signal_strength\030\002 " +
"\001(\001\022\023\n\013min_photons\030\003 \001(\001\022\033\n\023precision_th" +
"reshold\030\004 \001(\001\022\030\n\020min_width_factor\030\006 \001(\001\022" +
"\030\n\020max_width_factor\030\007 \001(\001\022\035\n\025disable_sim" +
"ple_filter\030\010 \001(\010\022\024\n\014smart_filter\030\t \001(\010\022\033" +
"\n\023smart_filter_string\030\n \001(\t\022M\n\020precision" +
"_method\030\013 \001(\01623.uk.ac.sussex.gdsc.smlm.d" +
"ata.config.PrecisionMethod\022\r\n\005min_z\030\014 \001(" +
"\001\022\r\n\005max_z\030\r \001(\001J\004\010\005\020\006R\032precision_using_" +
"background\"\256\001\n\013FitSettings\022R\n\023fit_solver" +
"_settings\030\001 \001(\01325.uk.ac.sussex.gdsc.smlm" +
".data.config.FitSolverSettings\022K\n\017filter" +
"_settings\030\002 \001(\01322.uk.ac.sussex.gdsc.smlm" +
".data.config.FilterSettings\"4\n\021RelativeP" +
"arameter\022\r\n\005value\030\001 \001(\001\022\020\n\010absolute\030\002 \001(" +
"\010\"\251\001\n\nDataFilter\022P\n\022data_filter_method\030\001" +
" \001(\01624.uk.ac.sussex.gdsc.smlm.data.confi" +
"g.DataFilterMethod\022I\n\nparameters\030\002 \003(\01325" +
".uk.ac.sussex.gdsc.smlm.data.config.Rela" +
"tiveParameter\"\250\001\n\022DataFilterSettings\022L\n\020" +
"data_filter_type\030\001 \001(\01622.uk.ac.sussex.gd" +
"sc.smlm.data.config.DataFilterType\022D\n\014da" +
"ta_filters\030\002 \003(\0132..uk.ac.sussex.gdsc.sml" +
"m.data.config.DataFilter\"\261\005\n\021FitEngineSe" +
"ttings\022E\n\014fit_settings\030\001 \001(\0132/.uk.ac.sus" +
"sex.gdsc.smlm.data.config.FitSettings\022N\n" +
"\014noise_method\030\002 \001(\01628.uk.ac.sussex.gdsc." +
"smlm.data.config.NoiseEstimatorMethod\022T\n" +
"\024data_filter_settings\030\003 \001(\01326.uk.ac.suss" +
"ex.gdsc.smlm.data.config.DataFilterSetti" +
"ngs\022E\n\006search\030\004 \001(\01325.uk.ac.sussex.gdsc." +
"smlm.data.config.RelativeParameter\022E\n\006bo" +
"rder\030\005 \001(\01325.uk.ac.sussex.gdsc.smlm.data" +
".config.RelativeParameter\022F\n\007fitting\030\006 \001" +
"(\01325.uk.ac.sussex.gdsc.smlm.data.config." +
"RelativeParameter\022\032\n\022include_neighbours\030" +
"\007 \001(\010\022\"\n\032neighbour_height_threshold\030\010 \001(" +
"\001\022\033\n\023residuals_threshold\030\t \001(\001\022Q\n\022duplic" +
"ate_distance\030\n \001(\01325.uk.ac.sussex.gdsc.s" +
"mlm.data.config.RelativeParameter\022\026\n\016fai" +
"lures_limit\030\013 \001(\005\022\021\n\tpass_rate\030\014 \001(\001*i\n\t" +
"FitSolver\022\013\n\007LVM_LSE\020\000\022\013\n\007LVM_MLE\020\001\022\014\n\010L" +
"VM_WLSE\020\002\022\007\n\003MLE\020\003\022\014\n\010FAST_MLE\020\004\022\035\n\025BACK" +
"TRACKING_FAST_MLE\020\005\032\002\010\001*\235\001\n\014SearchMethod" +
"\022\022\n\016POWELL_BOUNDED\020\000\022\n\n\006POWELL\020\001\022\022\n\016POWE" +
"LL_ADAPTER\020\002\022\n\n\006BOBYQA\020\003\022\t\n\005CMAES\020\004\022\031\n\025C" +
"ONJUGATE_GRADIENT_FR\020\005\022\031\n\025CONJUGATE_GRAD" +
"IENT_PR\020\006\022\014\n\004BFGS\020\007\032\002\010\001*<\n\020LineSearchMet" +
"hod\022\010\n\004NONE\020\000\022\n\n\006IGNORE\020\001\022\022\n\016PARTIAL_IGN" +
"ORE\020\002*k\n\017PrecisionMethod\022\027\n\023PRECISION_ME" +
"THOD_NA\020\000\022\r\n\tMORTENSEN\020\001\022\036\n\032MORTENSEN_LO" +
"CAL_BACKGROUND\020\002\022\020\n\014POISSON_CRLB\020\003*6\n\016Da" +
"taFilterType\022\n\n\006SINGLE\020\000\022\016\n\nDIFFERENCE\020\001" +
"\022\010\n\004JURY\020\002*Y\n\020DataFilterMethod\022\010\n\004MEAN\020\000" +
"\022\016\n\nBLOCK_MEAN\020\001\022\021\n\rCIRCULAR_MEAN\020\002\022\014\n\010G" +
"AUSSIAN\020\003\022\n\n\006MEDIAN\020\004*\263\002\n\024NoiseEstimator" +
"Method\022\016\n\nALL_PIXELS\020\000\022\021\n\rLOWEST_PIXELS\020" +
"\001\022%\n!RESIDUALS_LEAST_MEDIAN_OF_SQUARES\020\002" +
"\022&\n\"RESIDUALS_LEAST_TRIMMED_OF_SQUARES\020\003" +
"\022#\n\037RESIDUALS_LEAST_MEAN_OF_SQUARES\020\004\022+\n" +
"\'QUICK_RESIDUALS_LEAST_MEDIAN_OF_SQUARES" +
"\020\005\022,\n(QUICK_RESIDUALS_LEAST_TRIMMED_OF_S" +
"QUARES\020\006\022)\n%QUICK_RESIDUALS_LEAST_MEAN_O" +
"F_SQUARES\020\007B\013B\tFitProtosb\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
});
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSolverSettings_descriptor,
new java.lang.String[] { "FixedPsf", "DisableBackgroundFitting", "DisableSignalFitting", "FitSolver", "FixedIterations", "MaxIterations", "RelativeThreshold", "AbsoluteThreshold", "ParameterRelativeThreshold", "ParameterAbsoluteThreshold", "Lambda", "SearchMethod", "GradientLineMinimisation", "ModelCamera", "MaxFunctionEvaluations", "UseClamping", "UseDynamicClamping", "ClampValues", "LineSearchMethod", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor =
getDescriptor().getMessageTypes().get(1);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FilterSettings_descriptor,
new java.lang.String[] { "ShiftFactor", "SignalStrength", "MinPhotons", "PrecisionThreshold", "MinWidthFactor", "MaxWidthFactor", "DisableSimpleFilter", "SmartFilter", "SmartFilterString", "PrecisionMethod", "MinZ", "MaxZ", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor =
getDescriptor().getMessageTypes().get(2);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitSettings_descriptor,
new java.lang.String[] { "FitSolverSettings", "FilterSettings", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor =
getDescriptor().getMessageTypes().get(3);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_RelativeParameter_descriptor,
new java.lang.String[] { "Value", "Absolute", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor =
getDescriptor().getMessageTypes().get(4);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilter_descriptor,
new java.lang.String[] { "DataFilterMethod", "Parameters", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor =
getDescriptor().getMessageTypes().get(5);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_DataFilterSettings_descriptor,
new java.lang.String[] { "DataFilterType", "DataFilters", });
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor =
getDescriptor().getMessageTypes().get(6);
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_uk_ac_sussex_gdsc_smlm_data_config_FitEngineSettings_descriptor,
new java.lang.String[] { "FitSettings", "NoiseMethod", "DataFilterSettings", "Search", "Border", "Fitting", "IncludeNeighbours", "NeighbourHeightThreshold", "ResidualsThreshold", "DuplicateDistance", "FailuresLimit", "PassRate", });
}
// @@protoc_insertion_point(outer_class_scope)
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy