Objectives
- Simple interface for a variety of scripting and programming languages
- User friendly in that the library should sensibly set default parameters to minimise the amount of information the programmer/user has to send
- Should be extensible so that extra parameters can be added at a later stage without causing problems
General Rules
- Objects identified by a unique user number
- Objects are initialised with a CMISSObjectTypeInitialise call
- Objects are finalised with a CMISSObjectTypeFinalise call
- Objects are created with a pair of CMISSObjectCreateStart and CMISSObjectCreateFinish calls
- Objects are destroyed with a CMISSObjectDestroy call
- Object parameters are set with a number of CMISSObjectParameterSet calls between the CreateStart and CreateFinish calls
- CreateStart call initialises Object and sets default parameters. Set calls modify default parameters. CreateFinish call finalises the object
Example(Basis functions)
!Initialise the basis functions.
CALL CMISSBasesTypeInitialise(Basis,Err)
!Start the creation of
a basis with
a user number of 1.
!The default is tri-linear Lagrange
CALL CMISSBasisCreateStart(1,Basis,Err)
!Set the number of xi directions to 2.
CALL CMISSBasisNumberOfXiSet(Basis,2,Err)
!Set the interpolation to be cubic Hermite*quadratic Lagrange.
CALL CMISSBasisInterpolationXiSet(Basis,[CMISSBasisCubicHermiteInterpolation,CMISSBasisQuadraticLagrangeInterpolation],Err)
!Finish the creation of the basis.
CALL CMISSBasisCreateFinish(Basis,Err)
!Destroy the basis with the user number 1.
CALL CMISSBasisDestroy(1,Err)
!Finalise the basis functions.
CALL CMISSBasisTypeFinalise(Basis,Err)