• Main Page
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

/data/development/ViennaCL/ViennaCL-1.1.2/viennacl/ocl/forwards.h

Go to the documentation of this file.
00001 /* =======================================================================
00002    Copyright (c) 2010, Institute for Microelectronics, TU Vienna.
00003    http://www.iue.tuwien.ac.at
00004                              -----------------
00005                      ViennaCL - The Vienna Computing Library
00006                              -----------------
00007                             
00008    authors:    Karl Rupp                          rupp@iue.tuwien.ac.at
00009                Florian Rudolf                     flo.rudy+viennacl@gmail.com
00010                Josef Weinbub                      weinbub@iue.tuwien.ac.at
00011 
00012    license:    MIT (X11), see file LICENSE in the ViennaCL base directory
00013 ======================================================================= */
00014 
00019 #ifndef _VIENNACL_OCL_FORWARDS_H_
00020 #define _VIENNACL_OCL_FORWARDS_H_
00021 
00022 #define VIENNACL_OCL_MAX_DEVICE_NUM  8
00023 
00024 #include <stddef.h>
00025 
00026 namespace viennacl
00027 {
00028   namespace ocl
00029   {
00030     //device type tags (cf. OpenCL standard)
00031     struct gpu_tag {};
00032     struct cpu_tag {};
00033     struct accelerator_tag {};
00034     struct default_tag {};
00035     
00036     
00037     class kernel;
00038     class device;
00039     class command_queue;
00040     class context;
00041     class program;
00042 
00043     template<class OCL_TYPE>
00044     class handle;
00045 
00046     template <typename KernelType>
00047     void enqueue(KernelType & k, viennacl::ocl::command_queue const & queue);
00048     
00049     inline viennacl::ocl::context & current_context();
00050     inline viennacl::ocl::device const & current_device();
00051   }
00052 } //namespace viennacl
00053 
00054 #endif
00055 

Generated on Sat May 21 2011 20:36:50 for ViennaCL - The Vienna Computing Library by  doxygen 1.7.1