Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

CUDAQuickSurf.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *cr                                                                       
00003  *cr            (C) Copyright 1995-2019 The Board of Trustees of the           
00004  *cr                        University of Illinois                       
00005  *cr                         All Rights Reserved                        
00006  *cr                                                                   
00007  ***************************************************************************/
00008 /***************************************************************************
00009  * RCS INFORMATION:
00010  *
00011  *      $RCSfile: CUDAQuickSurf.h,v $
00012  *      $Author: johns $        $Locker:  $             $State: Exp $
00013  *      $Revision: 1.11 $       $Date: 2021/10/05 06:03:00 $
00014  *
00015  ***************************************************************************/
00042 #ifndef CUDAQUICKSURF_H
00043 #define CUDAQUICKSURF_H
00044 
00045 class VMDDisplayList;
00046 
00047 class CUDAQuickSurf {
00048   void *voidgpu; 
00049 
00050 public:
00051   enum VolTexFormat { RGB3F, RGB4U }; 
00052  
00053   CUDAQuickSurf(void);
00054   ~CUDAQuickSurf(void);
00055 
00056   int calc_surf(long int natoms, const float *xyzr, const float *colors,
00057                 int colorperatom, VolTexFormat vtexformat,
00058                 float *origin, int* numvoxels, float maxrad,
00059                 float radscale, float gridspacing,
00060                 float isovalue, float gausslim,
00061                 VMDDisplayList *cmdList);
00062 
00063 private:
00064   int free_bufs(void);
00065 
00066   int check_bufs(long int natoms, int colorperatom,
00067                  VolTexFormat vtexformat,
00068                  int acx, int acy, int acz,
00069                  int gx, int gy, int gz);
00070 
00071   int alloc_bufs(long int natoms, int colorperatom, 
00072                  VolTexFormat vtexformat,
00073                  int acx, int acy, int acz,
00074                  int gx, int gy, int gz);
00075 
00076   int get_chunk_bufs(int testexisting,
00077                      long int natoms, int colorperatom, 
00078                      VolTexFormat vtexformat,
00079                      int acx, int acy, int acz,
00080                      int gx, int gy, int gz,
00081                      int &cx, int &cy, int &cz,
00082                      int &sx, int &sy, int &sz);
00083 
00084 
00085 };
00086 
00087 #endif
00088 

Generated on Fri Apr 19 02:44:15 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002