/*
* 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,
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 {
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 */
} 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 */
used for the 8x8x8 CUDA kernels */
} nonbonded_verlet_t;
+/*! \brief Getter for bUseGPU */
+gmx_bool
+usingGpu(nonbonded_verlet_t *nbv);
+
#ifdef __cplusplus
}
#endif