Explorar o código

Only include GPU based gaussian code when appropriate

David Sehnal %!s(int64=6) %!d(string=hai) anos
pai
achega
35c6fcafab
Modificáronse 2 ficheiros con 7 adicións e 2 borrados
  1. 6 1
      src/mol-math/geometry/gaussian-density.ts
  2. 1 1
      src/servers/model/config.ts

+ 6 - 1
src/mol-math/geometry/gaussian-density.ts

@@ -8,9 +8,13 @@ import { Box3D } from '../geometry';
 import { Vec3 } from '../linear-algebra';
 import { RuntimeContext, Task } from 'mol-task';
 import { PositionData, DensityData } from './common';
-import { GaussianDensityGPU } from './gaussian-density/gpu';
 import { GaussianDensityCPU } from './gaussian-density/cpu';
 
+// import { GaussianDensityGPU } from './gaussian-density/gpu';
+const GaussianDensityGPU = typeof document !== 'undefined'
+    ? (require('./gaussian-density/gpu') as typeof import('./gaussian-density/gpu')).GaussianDensityGPU
+    : void 0;
+
 export const DefaultGaussianDensityProps = {
     resolution: 1,
     radiusOffset: 0,
@@ -36,6 +40,7 @@ export function computeGaussianDensity(position: PositionData, box: Box3D, radiu
 
 export async function GaussianDensity(ctx: RuntimeContext, position: PositionData, box: Box3D, radius: (index: number) => number,  props: GaussianDensityProps): Promise<DensityData> {
     if (props.useGpu) {
+        if (!GaussianDensityGPU) throw 'GPU computation not supported on this platform';
         return await GaussianDensityGPU(ctx, position, box, radius, props)
     } else {
         return await GaussianDensityCPU(ctx, position, box, radius, props)

+ 1 - 1
src/servers/model/config.ts

@@ -81,7 +81,7 @@ const config = {
     mapFile(source: string, id: string) {
         switch (source.toLowerCase()) {
             // case 'pdb': return `e:/test/quick/${id}_updated.cif`;
-            case 'pdb': return `c:/test/mol-star/model/out/${id}_updated.bcif`;
+            case 'pdb': return `e:/test/mol-star/model/out/${id}_updated.bcif`;
             case 'pdb-bcif': return `c:/test/mol-star/model/out/${id}_updated.bcif`;
             case 'pdb-cif': return `c:/test/mol-star/model/out/${id}_updated.cif`;
             default: return void 0;