API Changes

From Yade

Revision as of 10:45, 18 December 2009 by Eudoxos (talk | contribs)

This page should track invasive changes in yade interface so that people porting older code have some guidelines. Always link to the changeset at launchpad. Keep the contect reverse-chronological (newest first)


18.12.2009, r1907

  • AABB → Aabb
  • Interacting{Box,Sphere,Facet}2AABB → Bo1_{Box,Sphere,Facet}_Aabb
  • Wall2AABB → Bo1_Wall_Aabb
  • GLDrawAABB → Gl1_Aabb

13.12.2009, r1896, r1897

  • InteractingSphere → Sphere
  • InteractingFacet → Facet
  • InteractingBox → Box
  • SpheresContactGeometry → ScGeom
  • InteractingBox2InteractingSphere4SpheresContactGeometry → Ig2_Box_Sphere_ScGeom
  • InteractingFacet2InteractingSphere4SpheresContactGeometry → Ig2_Facet_Sphere_ScGeom
  • InteractingSphere2InteractingSphere4SpheresContactGeometry → Ig2_Sphere_Sphere_ScGeom


11.12.2009, r1890, r1891

  • Renames Sphere → SphereModel, Facet → FacetModel, Box → BoxModel (to make InteractionBox → Box etc possible)
  • GLDrawSphere → GLDrawSphereModel, GLDrawBox → GLDrawBoxModel

6.12.2009, r1862

  • Add const bool& force argument to all InteractionGeometryFunctor's. They make them never fail, even it the interaction is only potential (we used to abuse the isReal flag for this).
  • Add bool force arg to InteractionGeometryDispatcher::explicitAction; if in effect, the functor will throw on errors. Code adjusted everywhere.


5.12.2009, r1853, r1854, r1855

  • World → Scene (thanks, Bruno)
  • BoundingVolume{Dispatcher,Functor} → Bound{Dispatcher,Functor}
  • ConstitutiveLaw → LawFunctor; ConstitutiveLawDispatcher → LawDispatcher
  • ef2_*_Sphere_Dem3DofGeom → Ig2_*_Sphere_Dem3DofGeom
  • InteractingGeometry → Shape
  • Body::interactingGeometry → Body::shape (old name kept as deprecated reference)
  • Body::boundingVolume → Body::bound (old name kept as deprecated reference)


1.12.2009, r1835 & r1836

  • Rename MetaEngine → Dispatcher, EngineUnit → Functor.
  • Rename related classes as well (InteractionGeometryMetaEngine → InteractionGeometryFunctor &c)
  • Rename MetaBody to World
  • Add Engine::world which always holds pointer to current world. It will (in the future) replace World* being passed in calls to Engines all the time.

1.12.2009, r1832

  • Change prototype of InteractionGeometryMetaEngine::go from
 InteractionGeometryMetaEngine::go(const shared_ptr<InteractingGeometry>&, const shared_ptr<InteractingGeometry>&, const Se3r&, const Se3r&, const shared_ptr<Interaction>&)

to

 InteractionGeometryMetaEngine::go(const shared_ptr<InteractingGeometry>&, const shared_ptr<InteractingGeometry>&, const State&, const State&, const Vector3r& shift2, const shared_ptr<Interaction>&)

where the shift2 parameter is used for interaction over periodic boundary.

21.11.2009, r1806

  • PhysicalParameters were replaced by Material and State classes. Material_and_State_classes shows how to migrate, 'physpar' feature turns compilationof old code on.

17.11.2009, r1789

  • GeometricalModel classes were removed, they are functionally replaced by InteractingGeometry. Files depending on GeometricalModel are compiled only with the 'shape' feature on.
  • Don't compile (remove later) dispatchers & functors depending on GeometricalModel (InteractingGeometryMetaEngine)