Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:36

0001 #pragma once
0002 /**
0003 sflow.h
0004 ==========
0005 
0006 Flow control enum and CPU only presentation
0007 
0008 **/
0009 
0010 enum { 
0011    UNDEFINED, 
0012    BREAK, 
0013    CONTINUE, 
0014    BOUNDARY,
0015    PASS, 
0016    START, 
0017    RETURN,
0018    LAST
0019    }; 
0020 
0021 
0022 #if defined(__CUDACC__) || defined(__CUDABE__)
0023 #else
0024 struct sflow
0025 {
0026     static const char* desc( unsigned ctrl ); 
0027     static constexpr const char* UNDEFINED_ = "UNDEFINED";
0028     static constexpr const char* BREAK_     = "BREAK";
0029     static constexpr const char* CONTINUE_  = "CONTINUE" ;
0030     static constexpr const char* BOUNDARY_  = "BOUNDARY" ;
0031     static constexpr const char* PASS_      = "PASS" ;
0032     static constexpr const char* START_     = "START" ;
0033     static constexpr const char* RETURN_    = "RETURN" ;
0034     static constexpr const char* LAST_      = "LAST" ;
0035 };
0036 inline const char* sflow::desc(unsigned ctrl )
0037 {
0038     const char* d = nullptr ; 
0039     switch(ctrl)
0040     {
0041         case UNDEFINED: d = UNDEFINED_ ; break ; 
0042         case BREAK    : d = BREAK_     ; break ; 
0043         case CONTINUE : d = CONTINUE_  ; break ; 
0044         case BOUNDARY : d = BOUNDARY_  ; break ; 
0045         case PASS:      d = PASS_      ; break ; 
0046         case START:     d = START_     ; break ; 
0047         case RETURN:    d = RETURN_    ; break ; 
0048         case LAST:      d = LAST_      ; break ; 
0049     }
0050     return d ; 
0051 }
0052 #endif
0053