swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: syntax etc.


From: Marcus G. Daniels
Subject: Re: syntax etc.
Date: 12 Oct 2001 13:22:23 -0600
User-agent: Gnus/5.070084 (Pterodactyl Gnus v0.84) Emacs/20.7

>>>>> "HP" == Holger Perlt <address@hidden> writes:

HP> (I) Using the Averager
HP> (II) Adding to the list:

Here's an example of setting up a list with integer objects, and
getting an average and counts from the Averager interface.

#import <simtools.h>
#import <analysis.h>
#import <defobj/Create.h>
#import <collections.h>

@interface Integer: CreateDrop
{
  int val;
}
+ create: aZone setIntValue: (int)val;
- (int)getIntValue;
@end

@implementation Integer
+ create: aZone setIntValue: (int)_val
{
  Integer *obj = [super create: aZone];
  
  obj->val = _val;
  return obj;
}

- (int)getIntValue
{
  return val;
}
@end

int
main (int argc, const char **argv)
{
  id <List> l;
  id <Averager> averager;
  unsigned i;

  initSwarmBatch (argc, argv);
  
  l = [List create: globalZone];

  for (i = 0; i < 10; i++)
    [l addLast: [Integer create: globalZone setIntValue: i]];

  averager = [Averager createBegin: globalZone];
  [averager setProbedClass: [Integer class]];
  [averager setProbedSelector: M(getIntValue)];
  [averager setCollection: l];
  averager = [averager createEnd];


  [averager update];

  printf ("item count: %u average: %f\n",
          [averager getCount],
          [averager getAverage]);

}

/*
Local Variables:
  compile-command: "$SWARMHOME/bin/libtool-swarm --mode=link 
/opt/src/mgd/packages/development/gcc/bin/gcc -Wall -Werror -O3 -D_GNU_SOURCE 
-DAPPNAME=averager -o averager -g -Wno-import -I$SWARMHOME/include/swarm 
-L$SWARMHOME/lib/swarm averager2.m -lswarm -lobjc"
End:
*/

                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]