I am trying to develop a simple reaction module, but when do it I encountered a little question. CAPE-OPEN manual defines a method of ICapeReactionChemistry as the following:
***************************************
Interface Name: ICapeReactionChemistry
Method Name: GetPhaseCompounds
Returns: CapeString
Arguments
Name Type Description
[in] phase CapeString Label of the required phase
[out] compNo CapeLong
[out] compIds CapeArrayString The ids of the compounds present in the specified phase
***************************
But when I import the interfaces from CAPE-OPENv1-1-0.tlb, the interface method looks like the following:
STDMETHOD(GetPhaseCompounds)(BSTR reacID, long * compNo, VARIANT * compIds);
The first argument is paradox.
And even though the first arguments are same, it's not rational by my opinion. Is the right method should looks like as the following:
STDMETHOD(GetPhaseCompounds)(BSTR reacID,BSTR phase, long * compNo, VARIANT * compIds);
Any response will be appreciated.