[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
CAPE-OPEN • View topic - Question on GetPhaseCompounds of ICapeReactionChemistry
Page 1 of 1

Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 18 February 2016, 07:59
by bcbooo
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.

Re: Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 18 February 2016, 08:08
by jasper
There are only very few implementations of this standard (COCO implements it - of the top of my head I cannot think of other implementations). There are other items about this standard that are not convenient, such as the units of measure (COCO ignores the specification on this and uses SI units) and the double specification of ICapeThermoMaterialContext.

While implementing this interface I could also not make sense of the signature of the GetPhaseCompounds routine - I left it unimplemented; it returns an error if called.

Please note that a much improved and much more elaborate standard for chemical reactions is in the making - unfortunately the document is not published, nor finished at this point. But the thermo SIG is working hard on its completion.

If you would like to preview this new interface specification, which works in conjunction with thermo 1.1, please contact the thermo SIG leader (Sergej Blagov).

Re: Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 18 February 2016, 08:09
by jasper
Re units of measure: see the warning in the CORN help here:

Re: Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 18 February 2016, 08:18
by bcbooo
OK, Thank you Jasper for your response.

Could you send me the email address of Sergej Blagov? Thank you.

Re: Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 18 February 2016, 10:05
by jasper
Yes - please send me a mail and I will reply.

Re: Question on GetPhaseCompounds of ICapeReactionChemistry

PostPosted: 19 February 2016, 00:54
by bcbooo
Have sent.