[Developers] Announce API spec

Erik Schnetter schnetter at cct.lsu.edu
Tue Sep 12 15:30:12 CDT 2006

On Sep 8, 2006, at 12:41:28, Thomas Radke wrote:

> Hi,
> as I had announced earlier on this mailing list, I've been working  
> over
> the last couple weeks on a specification for a generic Cactus API to
> announce simulation metadata. Attached is my first draft of it.
> Like many (most?) other software developers, I had to actually write
> some code first in order to come up with a spec that is practically
> useful. So a prototype implementation exists, however I haven't put  
> into
> CVS yet. Before that can happen I'd like to post the spec here for
> discussion and get answers specifically to the following open  
> questions:
>  1) Is it okay to call my implementation of the Announce API, as
>     proposed in this spec, thorn 'Announce' ?
>     There exists already a thorn of same name in the Portal  
> arrangement.
>     It provides functionality to publish metadata, but only to one
>     specific type of external information service: a Cactus portal.
>     Portal/Announce doesn't provide a generic API for application  
> thorns
>     to announce arbitrary user-defined runtime simulation metadata.

I would use a different name, e.g. "MetaData".  Also, having two  
thorns with the same name is asking for trouble.

>  2) Do the Announce user API functions need a 'severity' level  
> argument?
>     This was suggested in earlier discussions by Tom and Erik, in
>     analogy to the warning level argument passed to CCTK_VWarn().
>     I'm  not sure how levels would be practically used in an Announce
>     context. What individual levels should be predefined ? Should the
>     level argument be interpreted as a bitmask rather than an  
> integer ?

I would not add such an argument.  One cannot assign severities to  
events.  Rather, there would be parameters for each announcing thorn  
that then decide locally whether CCTK_Announce is called.  One user  
may be interested in horizons, the other in wave forms, the third in  
I/O performance data, and it won't be possible to handle that via  
severities.  Bit masks would make it only more complicated.

>  3) Should the Announce user API functions take an additional argument
>     'CCTK_POINTER_TO_CONST cctkGH' ? It's not clear to me why announce
>     callbacks would need access to a cGH structure.

I would add it just for completeness.


Erik Schnetter <schnetter at cct.lsu.edu>

My email is as private as my paper mail.  I therefore support encrypting
and signing email messages.  Get my PGP key from www.keyserver.net.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : http://www.cactuscode.org/pipermail/developers/attachments/20060912/2e4b6e67/attachment.bin 

More information about the Developers mailing list