Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /branches/vis12-cl/src/include/Diderot/strands.h
ViewVC logotype

Diff of /branches/vis12-cl/src/include/Diderot/strands.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1444, Mon Jul 11 12:11:53 2011 UTC revision 1640, Wed Nov 16 02:19:51 2011 UTC
# Line 14  Line 14 
14  #ifndef _DIDEROT_TYPES_H_  #ifndef _DIDEROT_TYPES_H_
15  #include "Diderot/types.h"  #include "Diderot/types.h"
16  #endif  #endif
17    #ifndef _DIDEROT_WORLD_H_
18    #  include "Diderot/world.h"
19    #endif
20    
21  typedef StrandStatus_t (*update_method_t)(void *, void *);  typedef StrandStatus_t (*update_method_t)(void *, void *);
22    typedef void (*stabilize_method_t)(void *, void *);
23    typedef void (*convert_method_t)(void *, void *);
24  typedef void (*print_method_t)(FILE *, void *);  typedef void (*print_method_t)(FILE *, void *);
25    typedef void (*output_method_t)(void *, void *);
26    
27  /* hooks generated by the compiler for the runtime */  /* hooks generated by the compiler for the runtime */
28  typedef struct {  typedef struct {
29      char                *name;          // name of strand      char                *name;          //!< name of strand
30      size_t              stateSzb;       // sze of strand state      size_t              stateSzb;       //!< size of strand state in bytes
31      update_method_t     update;         // update method  #if defined(DIDEROT_TARGET_CL)
32      print_method_t      print;          // function for printing output state      size_t              shadowStrandSzb; //!< shadow strand size
33    #endif
34        size_t              nrrdSzb;      //!< size of strand output in bytes
35        size_t              outputSzb;      //!< size of strand output in bytes
36        int                 nrrdType;       //!< nrrd type tag for output
37        update_method_t     update;         //!< update method
38        stabilize_method_t  stabilize;      //!< stabilize method
39    #if defined(DIDEROT_TARGET_CL)
40        convert_method_t    strandCopy;     //!< method for copying
41    #endif
42        print_method_t      print;          //!< function for printing output state
43        output_method_t     output;         //!< function for outputing output state
44  } Strand_t;  } Strand_t;
45    
46  extern int Diderot_NumStrands;          // the number of strands in the program  extern int Diderot_NumStrands;          //!< the number of strands in the program
47  extern Strand_t *Diderot_Strands[];     // array of NumStrands strand descriptors  extern Strand_t *Diderot_Strands[];     //!< array of NumStrands strand descriptors
   
 typedef struct struct_world Diderot_World_t;  
48    
49  extern void Diderot_InitGlobals ();  extern void Diderot_InitGlobals ();
50    
# Line 47  Line 62 
62      int32_t *base,              // nDims array of base indices      int32_t *base,              // nDims array of base indices
63      uint32_t *size);            // nDims array of iteration sizes      uint32_t *size);            // nDims array of iteration sizes
64    
 // get strand state pointers  
 extern void *Diderot_InState (Diderot_World_t *wrld, uint32_t i);  
 extern void *Diderot_OutState (Diderot_World_t *wrld, uint32_t i);  
 extern bool Diderot_IsActive (Diderot_World_t *wrld, uint32_t i);  
   
 // strand allocation (no initializtion)  
 extern void *Diderot_AllocStrand (Strand_t *strand);  
   
65  #endif /* !_DIDEROT_STRANDS_H_ */  #endif /* !_DIDEROT_STRANDS_H_ */

Legend:
Removed from v.1444  
changed lines
  Added in v.1640

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0