示例#1
0
    virtual bool visit(const SBase &x)
    {
        if (&x == NULL || x.getPackageName() != "arrays")
        {
            return SBMLVisitor::visit(x);
        }

        int code = x.getTypeCode();

        const ListOf* list = dynamic_cast<const ListOf*>(&x);

        if (list != NULL)
        {
            return SBMLVisitor::visit(x);
        }
        else
        {
            if (code == SBML_ARRAYS_DIMENSION)
            {
                return visit((const Dimension&)x);
            }
            else if (code == SBML_ARRAYS_INDEX)
            {
                return visit((const Index&)x);
            }
            else
            {
                return SBMLVisitor::visit(x);
            }
        }
    }
/*
 * Accept the SBMLVisitor.
 */
bool
FbcModelPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  for (unsigned int i = 0; i < getNumFluxBounds(); i++)
  {
    getFluxBound(i)->accept(v);
  }
  for (unsigned int i = 0; i < getNumObjectives(); i++)
  {
    getListOfObjectives()->accept(v);
    getObjective(i)->accept(v);
  }

  for(unsigned int i = 0; i < getNumGeneProducts(); i++)
  {
    getGeneProduct(i)->accept(v);
  }

  return true;
}
示例#3
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
Priority::accept (SBMLVisitor& v) const
{
  v.visit(*this);
  v.leave(*this);
  return true;
}
/** @cond doxygenLibsbmlInternal */
bool
GeneAssociation::accept (SBMLVisitor& v) const
{
  v.visit(*this);
  v.leave(*this);

  return true;
}
示例#5
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
ListOf::accept (SBMLVisitor& v) const
{
  v.visit(*this, getItemTypeCode() );
  for (unsigned int n = 0 ; n < mItems.size() && mItems[n]->accept(v); ++n) ;
  v.leave(*this, getItemTypeCode() );

  return true;
}
/** @cond doxygenLibsbmlInternal */
bool 
FbcSBMLDocumentPlugin::accept(SBMLVisitor& v) const
{
  const SBMLDocument *doc = static_cast<const SBMLDocument *>(this->getParentSBMLObject());
  v.visit(*doc);

  v.leave(*doc);

  return true;
}
示例#7
0
/*
 * Accepts the given SBMLVisitor
 */
bool
Group::accept(SBMLVisitor& v) const
{
  v.visit(*this);

  mMembers.accept(v);

  v.leave(*this);
  return true;
}
/*
 * Accept the SBMLVisitor.
 */
bool
MultiSimpleSpeciesReferencePlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  return true;
}
/*
 * Accept the SBMLVisitor.
 */
bool
DistribFunctionDefinitionPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  return true;
}
/*
 * Accept the SBMLVisitor.
 */
bool
SpatialSpeciesPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  return true;
}
/*
 * Accepts the given SBMLVisitor.
 */
bool
CoordinateComponent::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
示例#12
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
SpeciesFeatureType::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
/*
 * Accepts the given SBMLVisitor.
 */
bool
SampledFieldGeometry::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
/*
 * Accepts the given SBMLVisitor.
 */
bool
SpeciesTypeComponentMapInProduct::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
示例#15
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
AnalyticGeometry::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
示例#16
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
CSGTransformation::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
/*
 * Accepts the given SBMLVisitor.
 */
bool
ParametricObject::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
示例#18
0
/** @cond doxygenLibsbmlInternal */
bool
Curve::accept (SBMLVisitor& v) const
{
  v.visit(*this);
  
  mCurveSegments.accept(v);
  
  v.leave(*this);
  
  return true;
}
示例#19
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
Domain::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */

  v.leave(*this);

  return true;
}
示例#20
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
FbcAnd::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */
  mAssociations.accept(v);

  v.leave(*this);

  return true;
}
bool
ListOfExternalModelDefinitions::accept(SBMLVisitor& v) const
{
  v.visit(*this);
  for (unsigned int n = 0 ; n < mItems.size(); n++)
  {
    static_cast<ExternalModelDefinition*>(mItems[n])->accept(v);
  }
  v.leave(*this);

  return true;
}
示例#22
0
/** @cond doxygenLibsbmlInternal */
bool
BoundingBox::accept (SBMLVisitor& v) const
{
  v.visit(*this);

  mPosition.accept(v);
  mDimensions.accept(v);
  
  v.leave(*this);
  
  return true;
}
示例#23
0
/*
 * Accepts the given SBMLVisitor.
 */
bool
Objective::accept (SBMLVisitor& v) const
{
  v.visit(*this);
  for (unsigned int n = 0; n < getNumFluxObjectives(); n++)
  {
    getFluxObjective(n)->accept(v);
  }
  v.leave(*this);

  return true;
}
示例#24
0
/** @cond doxygenLibsbmlInternal */
bool
Transition::accept (SBMLVisitor& v) const
{
  v.visit(*this);

  mInputs.accept(v);
  mOutputs.accept(v);
  mFunctionTerms.accept(v);

  v.leave(*this);

  return true;
}
示例#25
0
/** @cond doxygenLibsbmlInternal */
bool
Submodel::accept (SBMLVisitor& v) const
{
  v.visit(*this);

  for (unsigned int i = 0; i < getNumDeletions(); i++)
  {
    getDeletion(i)->accept(v);
  }

  v.leave(*this);

  return true;
}
/*
 * Accepts the given SBMLVisitor.
 */
bool
GeneProductAssociation::accept (SBMLVisitor& v) const
{
  v.visit(*this);

/* VISIT CHILDREN */
  if (mAssociation != NULL)
  {
    mAssociation->accept(v);
  }
  v.leave(*this);

  return true;
}
示例#27
0
/** @cond doxygenLibsbmlInternal */
bool
CubicBezier::accept (SBMLVisitor& v) const
{
  v.visit(*this);
  
  this->mStartPoint.accept(v);
  this->mBasePoint1.accept(v);
  this->mBasePoint2.accept(v);
  this->mEndPoint.accept(v);
  
  v.leave(*this);
  
  return true;
}
/*
 * Accept the SBMLVisitor.
 */
bool
LayoutModelPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  for(int i = 0; i < getNumLayouts(); i++)
  {
    getLayout((unsigned int)i)->accept(v);
  }

  return true;
}
示例#29
0
/*
 * Accept the SBMLVisitor.
 */
bool
DynEventPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  for(unsigned int i = 0; i < getNumElements(); i++)
  {
    getElement(i)->accept(v);
  }

  return true;
}
示例#30
0
/*
 * Accept the SBMLVisitor.
 */
bool
MultiModelPlugin::accept(SBMLVisitor& v) const
{
  const Model * model = static_cast<const Model * >(this->getParentSBMLObject());

  v.visit(*model);
  v.leave(*model);

  for(unsigned int i = 0; i < getNumMultiSpeciesTypes(); i++)
  {
    getMultiSpeciesType(i)->accept(v);
  }

  return true;
}