use of cbit.vcell.mapping.MicroscopeMeasurement in project vcell by virtualcell.
the class XmlReader method getMicroscopeMeasurement.
public void getMicroscopeMeasurement(Element element, SimulationContext simContext) {
MicroscopeMeasurement microscopeMeasurement = simContext.getMicroscopeMeasurement();
String name = element.getAttributeValue(XMLTags.NameAttrTag);
microscopeMeasurement.setName(name);
Element kernelElement = element.getChild(XMLTags.ConvolutionKernel, vcNamespace);
String type = kernelElement.getAttributeValue(XMLTags.TypeAttrTag);
ConvolutionKernel ck = null;
if (type.equals(XMLTags.ConvolutionKernel_Type_ProjectionZKernel)) {
ck = new ProjectionZKernel();
} else if (type.equals(XMLTags.ConvolutionKernel_Type_GaussianConvolutionKernel)) {
Element e = kernelElement.getChild(XMLTags.KernelGaussianSigmaXY, vcNamespace);
String s = e.getText();
Expression sigmaXY = unMangleExpression(s);
e = kernelElement.getChild(XMLTags.KernelGaussianSigmaZ, vcNamespace);
s = e.getText();
Expression sigmaZ = unMangleExpression(s);
ck = new GaussianConvolutionKernel(sigmaXY, sigmaZ);
}
microscopeMeasurement.setConvolutionKernel(ck);
List<Element> children = element.getChildren(XMLTags.FluorescenceSpecies, vcNamespace);
for (Element c : children) {
String speciesName = c.getAttributeValue(XMLTags.NameAttrTag);
SpeciesContext sc = simContext.getModel().getSpeciesContext(speciesName);
microscopeMeasurement.addFluorescentSpecies(sc);
}
}
use of cbit.vcell.mapping.MicroscopeMeasurement in project vcell by virtualcell.
the class IssueTableModel method getSourceObjectPathDescription.
private String getSourceObjectPathDescription(VCDocument vcDocument, Issue issue) {
VCAssert.assertValid(issue);
Object source = issue.getSource();
{
IssueOrigin io = BeanUtils.downcast(IssueOrigin.class, source);
if (io != null) {
return io.getDescription();
}
}
if (vcDocument instanceof BioModel) {
BioModel bioModel = (BioModel) vcDocument;
String description = "";
if (source instanceof SymbolTableEntry) {
if (source instanceof SpeciesContext) {
description = "Model / Species";
} else if (source instanceof RbmObservable) {
description = "Model / Observables";
} else {
description = ((SymbolTableEntry) source).getNameScope().getPathDescription();
}
} else if (source instanceof MolecularType) {
description = "Model / Molecules";
} else if (source instanceof ReactionStep) {
ReactionStep reactionStep = (ReactionStep) source;
description = ((ReactionNameScope) reactionStep.getNameScope()).getPathDescription();
} else if (source instanceof ReactionRule) {
ReactionRule reactionRule = (ReactionRule) source;
description = ((ReactionRuleNameScope) reactionRule.getNameScope()).getPathDescription();
} else if (source instanceof SpeciesPattern) {
// if (issue.getIssueContext().hasContextType(ContextType.SpeciesContext)){
// description = "Model / Species";
// }else if(issue.getIssueContext().hasContextType(ContextType.ReactionRule)) {
// ReactionRule thing = (ReactionRule)issue.getIssueContext().getContextObject(ContextType.ReactionRule);
// description = ((ReactionRuleNameScope)thing.getNameScope()).getPathDescription();
// }else if(issue.getIssueContext().hasContextType(ContextType.RbmObservable)) {
// description = "Model / Observables";
// } else {
System.err.println("Bad issue context for " + ((SpeciesPattern) source).toString());
description = ((SpeciesPattern) source).toString();
// }
} else if (source instanceof Structure) {
Structure structure = (Structure) source;
description = "Model / " + structure.getTypeName() + "(" + structure.getName() + ")";
} else if (source instanceof StructureMapping) {
StructureMapping structureMapping = (StructureMapping) source;
description = ((StructureMappingNameScope) structureMapping.getNameScope()).getPathDescription();
} else if (source instanceof OutputFunctionIssueSource) {
SimulationContext simulationContext = (SimulationContext) ((OutputFunctionIssueSource) source).getOutputFunctionContext().getSimulationOwner();
description = "App(" + simulationContext.getName() + ") / " + "Simulations" + " / " + "Output Functions";
} else if (source instanceof Simulation) {
Simulation simulation = (Simulation) source;
try {
SimulationContext simulationContext = bioModel.getSimulationContext(simulation);
description = "App(" + simulationContext.getName() + ") / Simulations";
} catch (ObjectNotFoundException e) {
e.printStackTrace();
description = "App(" + "unknown" + ") / Simulations";
}
} else if (source instanceof UnmappedGeometryClass) {
UnmappedGeometryClass unmappedGC = (UnmappedGeometryClass) source;
description = "App(" + unmappedGC.getSimulationContext().getName() + ") / Subdomain(" + unmappedGC.getGeometryClass().getName() + ")";
} else if (source instanceof GeometryContext) {
description = "App(" + ((GeometryContext) source).getSimulationContext().getName() + ")";
} else if (source instanceof ModelOptimizationSpec) {
description = "App(" + ((ModelOptimizationSpec) source).getSimulationContext().getName() + ") / Parameter Estimation";
} else if (source instanceof MicroscopeMeasurement) {
description = "App(" + ((MicroscopeMeasurement) source).getSimulationContext().getName() + ") / Microscope Measurements";
} else if (source instanceof SpatialObject) {
description = "App(" + ((SpatialObject) source).getSimulationContext().getName() + ") / Spatial Objects";
} else if (source instanceof SpatialProcess) {
description = "App(" + ((SpatialProcess) source).getSimulationContext().getName() + ") / Spatial Processes";
} else if (source instanceof SpeciesContextSpec) {
SpeciesContextSpec scs = (SpeciesContextSpec) source;
description = "App(" + scs.getSimulationContext().getName() + ") / Specifications / Species";
} else if (source instanceof ReactionCombo) {
ReactionCombo rc = (ReactionCombo) source;
description = "App(" + rc.getReactionContext().getSimulationContext().getName() + ") / Specifications / Reactions";
} else if (source instanceof RbmModelContainer) {
IssueCategory ic = issue.getCategory();
switch(ic) {
case RbmMolecularTypesTableBad:
description = "Model / " + MolecularType.typeName + "s";
break;
case RbmReactionRulesTableBad:
description = "Model / Reactions";
break;
case RbmObservablesTableBad:
description = "Model / Observables";
break;
case RbmNetworkConstraintsBad:
description = "Network Constrains";
break;
default:
description = "Model";
break;
}
} else if (source instanceof SimulationContext) {
SimulationContext sc = (SimulationContext) source;
IssueCategory ic = issue.getCategory();
switch(ic) {
case RbmNetworkConstraintsBad:
description = "Specifications / Network";
break;
default:
description = "Application";
break;
}
} else if (source instanceof Model) {
description = "Model";
} else if (source instanceof BioEvent) {
return "Protocols / Events";
} else if (source instanceof MathDescription) {
return "Math Description";
} else {
System.err.println("unknown source type in IssueTableModel.getSourceObjectPathDescription(): " + source.getClass());
}
return description;
} else if (vcDocument instanceof MathModel) {
if (source instanceof Geometry) {
return GuiConstants.DOCUMENT_EDITOR_FOLDERNAME_MATH_GEOMETRY;
} else if (source instanceof OutputFunctionIssueSource) {
return GuiConstants.DOCUMENT_EDITOR_FOLDERNAME_MATH_OUTPUTFUNCTIONS;
} else if (source instanceof Simulation) {
return "Simulation(" + ((Simulation) source).getName() + ")";
} else {
return GuiConstants.DOCUMENT_EDITOR_FOLDERNAME_MATH_VCML;
}
} else {
System.err.println("unknown document type in IssueTableModel.getSourceObjectPathDescription()");
return "";
}
}
use of cbit.vcell.mapping.MicroscopeMeasurement in project vcell by virtualcell.
the class IssueTableModel method getSourceObjectDescription.
private String getSourceObjectDescription(VCDocument vcDocument, Issue issue) {
if (vcDocument instanceof BioModel) {
Object object = issue.getSource();
{
DecoratedIssueSource dis = BeanUtils.downcast(DecoratedIssueSource.class, object);
if (dis != null) {
return dis.getSourcePath();
}
}
String description = "";
if (object instanceof SymbolTableEntry) {
description = ((SymbolTableEntry) object).getName();
} else if (object instanceof ReactionStep) {
description = ((ReactionStep) object).getName();
} else if (object instanceof ReactionRule) {
description = ((ReactionRule) object).getName();
} else if (object instanceof SpeciesPattern) {
// Object parent = issue.getIssueContext().getContextObject();
// if (parent instanceof SpeciesContext){
// description = ((SpeciesContext)parent).getName();
// }
// if (issue.getIssueContext().hasContextType(ContextType.SpeciesContext)){
// SpeciesContext thing = (SpeciesContext)issue.getIssueContext().getContextObject(ContextType.SpeciesContext);
// description = thing.getName();
// }else if(issue.getIssueContext().hasContextType(ContextType.ReactionRule)) {
// ReactionRule thing = (ReactionRule)issue.getIssueContext().getContextObject(ContextType.ReactionRule);
// description = thing.getName();
// }else if(issue.getIssueContext().hasContextType(ContextType.RbmObservable)) {
// RbmObservable thing = (RbmObservable)issue.getIssueContext().getContextObject(ContextType.RbmObservable);
// description = thing.getName();
// } else {
System.err.println("Bad issue context for " + ((SpeciesPattern) object).toString());
description = ((SpeciesPattern) object).toString();
// }
} else if (object instanceof MolecularType) {
description = ((MolecularType) object).getName();
} else if (object instanceof MolecularComponent) {
description = ((MolecularComponent) object).getName();
} else if (object instanceof ComponentStateDefinition) {
description = ((ComponentStateDefinition) object).getName();
} else if (object instanceof Structure) {
description = ((Structure) object).getName();
} else if (object instanceof SubDomain) {
description = ((SubDomain) object).getName();
} else if (object instanceof Geometry) {
description = ((Geometry) object).getName();
} else if (object instanceof StructureMapping) {
description = ((StructureMapping) object).getStructure().getName();
} else if (object instanceof OutputFunctionIssueSource) {
description = ((OutputFunctionIssueSource) object).getAnnotatedFunction().getName();
} else if (object instanceof UnmappedGeometryClass) {
description = ((UnmappedGeometryClass) object).getGeometryClass().getName();
} else if (object instanceof MicroscopeMeasurement) {
description = ((MicroscopeMeasurement) object).getName();
} else if (object instanceof SpatialObject) {
description = ((SpatialObject) object).getName();
} else if (object instanceof SpatialProcess) {
description = ((SpatialProcess) object).getName();
} else if (object instanceof GeometryContext) {
description = "Geometry";
} else if (object instanceof ModelOptimizationSpec) {
description = ((ModelOptimizationSpec) object).getParameterEstimationTask().getName();
} else if (object instanceof Simulation) {
description = ((Simulation) object).getName();
} else if (object instanceof SpeciesContextSpec) {
SpeciesContextSpec scs = (SpeciesContextSpec) object;
description = scs.getSpeciesContext().getName();
} else if (object instanceof ReactionCombo) {
ReactionSpec rs = ((ReactionCombo) object).getReactionSpec();
description = rs.getReactionStep().getName();
} else if (object instanceof RbmModelContainer) {
// RbmModelContainer mc = (RbmModelContainer)object;
description = "Rules validator";
} else if (object instanceof SimulationContext) {
SimulationContext sc = (SimulationContext) object;
description = sc.getName();
} else if (object instanceof Model) {
Model m = (Model) object;
description = m.getName();
} else if (object instanceof BioEvent) {
return ((BioEvent) object).getName() + "";
} else if (object instanceof MathDescription) {
return ((MathDescription) object).getName() + "";
} else {
System.err.println("unknown object type in IssueTableModel.getSourceObjectDescription(): " + object.getClass());
}
return description;
} else if (vcDocument instanceof MathModel) {
Object object = issue.getSource();
String description = "";
if (object instanceof Variable) {
description = ((Variable) object).getName();
} else if (object instanceof SubDomain) {
description = ((SubDomain) object).getName();
} else if (object instanceof Geometry) {
description = "Geometry";
} else if (object instanceof OutputFunctionIssueSource) {
description = ((OutputFunctionIssueSource) object).getAnnotatedFunction().getName();
} else if (object instanceof MathDescription) {
return "math";
} else if (object instanceof Simulation) {
return "Simulation " + ((Simulation) object).getName() + "";
}
return description;
} else {
System.err.println("unknown document type in IssueTableModel.getSourceObjectDescription()");
return "";
}
}
use of cbit.vcell.mapping.MicroscopeMeasurement in project vcell by virtualcell.
the class MicroscopeMeasurementPanel method setKernel.
protected void setKernel() {
MicroscopeMeasurement microscopeMeasurement = simulationContext.getMicroscopeMeasurement();
if (rdbtnZprojection.isSelected()) {
microscopeMeasurement.setConvolutionKernel(new ProjectionZKernel());
BeanUtils.enableComponents(gaussianPsfPanel, false);
BeanUtils.enableComponents(experimentalPsfPanel, false);
} else if (radioButtonGaussian.isSelected()) {
microscopeMeasurement.setConvolutionKernel(new GaussianConvolutionKernel());
BeanUtils.enableComponents(gaussianPsfPanel, true);
BeanUtils.enableComponents(experimentalPsfPanel, false);
} else if (rdbtnExperimental.isSelected()) {
String psfName = (String) pointSpreadFunctionsComboBox.getSelectedItem();
for (DataSymbol dataSymbol : simulationContext.getDataContext().getDataSymbols()) {
if (dataSymbol.getName().equals(psfName)) {
microscopeMeasurement.setConvolutionKernel(new ExperimentalPSF(dataSymbol));
break;
}
}
BeanUtils.enableComponents(gaussianPsfPanel, false);
BeanUtils.enableComponents(experimentalPsfPanel, true);
}
}
use of cbit.vcell.mapping.MicroscopeMeasurement in project vcell by virtualcell.
the class MicroscopeMeasurementPanel method refreshInterface.
protected void refreshInterface() {
if (simulationContext == null) {
return;
}
MicroscopeMeasurement microscopeMeasurement = simulationContext.getMicroscopeMeasurement();
nameTextField.setText(microscopeMeasurement.getName());
refreshFluorescenceSpeciesList(microscopeMeasurement);
refreshAllSpeciesList();
ConvolutionKernel ck = microscopeMeasurement.getConvolutionKernel();
if (ck instanceof ProjectionZKernel) {
rdbtnZprojection.setSelected(true);
BeanUtils.enableComponents(gaussianPsfPanel, false);
BeanUtils.enableComponents(experimentalPsfPanel, false);
} else if (ck instanceof GaussianConvolutionKernel) {
radioButtonGaussian.setSelected(true);
BeanUtils.enableComponents(gaussianPsfPanel, true);
BeanUtils.enableComponents(experimentalPsfPanel, false);
sigmaXYTextField.setText(((GaussianConvolutionKernel) ck).getSigmaXY_um().infix());
sigmaZTextField.setText(((GaussianConvolutionKernel) ck).getSigmaZ_um().infix());
} else if (ck instanceof ExperimentalPSF) {
rdbtnExperimental.setSelected(true);
BeanUtils.enableComponents(gaussianPsfPanel, false);
BeanUtils.enableComponents(experimentalPsfPanel, true);
}
pointSpreadFunctionsComboModel.removeAllElements();
if (simulationContext.getDataContext() != null) {
for (DataSymbol dataSymbol : simulationContext.getDataContext().getDataSymbols()) {
if (dataSymbol.getDataSymbolType().equals(DataSymbolType.POINT_SPREAD_FUNCTION)) {
pointSpreadFunctionsComboModel.addElement(dataSymbol.getName());
}
}
}
}
Aggregations