Merge branch release-5-0
[alexxy/gromacs.git] / src / gromacs / mdlib / nb_verlet.h
similarity index 89%
rename from src/gromacs/legacyheaders/types/nb_verlet.h
rename to src/gromacs/mdlib/nb_verlet.h
index aaeeaa8b3616d2603c4e84dd64d90cdc96e5632a..c435262ce7697a80ee36cd4cc699e40fa1e5d48e 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the GROMACS molecular simulation package.
  *
- * Copyright (c) 2012,2013,2014, by the GROMACS development team, led by
+ * Copyright (c) 2012,2013,2014,2015, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
 #ifndef NB_VERLET_H
 #define NB_VERLET_H
 
-#include "nbnxn_pairlist.h"
-#include "nbnxn_cuda_types_ext.h"
+#include "gromacs/legacyheaders/types/nbnxn_cuda_types_ext.h"
+#include "gromacs/mdlib/nbnxn_pairlist.h"
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 
-/*! Nonbonded NxN kernel types: plain C, CPU SIMD, GPU CUDA, GPU emulation */
+/** Nonbonded NxN kernel types: plain C, CPU SIMD, GPU CUDA, GPU emulation */
 typedef enum
 {
     nbnxnkNotSet = 0,
@@ -56,7 +56,7 @@ typedef enum
     nbnxnkNR
 } nbnxn_kernel_type;
 
-/*! Return a string indentifying the kernel type */
+/** Return a string indentifying the kernel type */
 const char *lookup_nbnxn_kernel_name(int kernel_type);
 
 enum {
@@ -88,7 +88,7 @@ enum {
     enbvClearFNo, enbvClearFYes
 };
 
-typedef struct {
+typedef struct nonbonded_verlet_group_t {
     nbnxn_pairlist_set_t  nbl_lists;   /* pair list(s)                       */
     nbnxn_atomdata_t     *nbat;        /* atom data                          */
     int                   kernel_type; /* non-bonded kernel - see enum above */
@@ -96,7 +96,7 @@ typedef struct {
 } nonbonded_verlet_group_t;
 
 /* non-bonded data structure with Verlet-type cut-off */
-typedef struct {
+typedef struct nonbonded_verlet_t {
     nbnxn_search_t           nbs;             /* n vs n atom pair searching data       */
     int                      ngrp;            /* number of interaction groups          */
     nonbonded_verlet_group_t grp[2];          /* local and non-local interaction group */
@@ -107,6 +107,10 @@ typedef struct {
                                                  used for the 8x8x8 CUDA kernels    */
 } nonbonded_verlet_t;
 
+/*! \brief Getter for bUseGPU */
+gmx_bool
+usingGpu(nonbonded_verlet_t *nbv);
+
 #ifdef __cplusplus
 }
 #endif