KnowledgeInterfaces Interface CATICkeFunction

Usage: you can reimplement this interface by deriving the supplied CATCkeLawAdapter adapter class.


interface CATICkeFunction

Interface to describe functions.
Role: This interface defines functions that can be used in our language.
This interface gives access to a CATICkeSignature which contains the
description of this function (arguments, name, comment, etc...
It is also used to evaluate the function.
Implementations of that interface should derive from CATCkeLawAdapter.

BOA information: this interface CANNOT be implemented using the BOA (Basic Object Adapter). To know more about the BOA, refer to the CAA Encyclopedia home page. Click Middleware at the bottom left, then click the Object Modeler tab page. Several articles deal with the BOA.

See also:
, , ,


Method Index


o GetDescription()
Returns the description of this function.
o IsRunnable()
Indicates if this Knowledge function can be evaluated.
o Run(CATCkeListOfParm,CATICkeParm_var&,CATCkeEvalContext*)
Evaluates the function on a list of parameters.

Methods


o GetDescription
public virtual GetDescription()
Returns the description of this function.
Returns:
The signature of the function.
o IsRunnable
public virtual IsRunnable()
Indicates if this Knowledge function can be evaluated.
Returns:
TRUE if Knowledge function can be evaluated
o Run
public virtual Run( iListOfParameters,
const iReturnedParameter,
const iEvaluationContext=NULL)
Evaluates the function on a list of parameters.
This method may raise evaluation error (CATLifEvaluationError). No ability to catch them in CAA.
Parameters:
iListOfParameters
List of parameters in argument of the function.
Those arguments can be in input or in output of the function.
(Note that CATCkeListOfParm is a CATLISTV(CATBaseUnknown_var)* )
iReturnedParameter
parameter returned by the function.
iEvaluationContext
context of evaluation.

This object is included in the file: CATICkeFunction.h
If needed, your Imakefile.mk should include the module: KnowledgeItf

Copyright © 1999-2015, Dassault Systèmes. All rights reserved.