Browse Source

mol-plugin: wip state manager

David Sehnal 5 years ago
parent
commit
d90e81b0e5

+ 17 - 0
src/mol-plugin/state/manager/base.ts

@@ -0,0 +1,17 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: primites
+
+// import { StateObject, State, StateObjectCell, StateBuilder, StateTransformer } from '../../../mol-state';
+// import { RuntimeContext } from '../../../mol-task';
+// import { PluginContext } from '../../context';
+
+// export type StateAction<P = any, O extends StateObject = StateObject, R = {}> =
+//     (ctx: RuntimeContext, state: State, cell: StateObjectCell<O>, params: P, plugin: PluginContext) => Promise<R> | R;
+
+// export type BuilderAction<P = any, O extends StateObject = StateObject, T extends StateTransformer = StateTransformer, R = {}> =
+//     (builder: StateBuilder.To<O, T>, params: P, plugin: PluginContext) => R;

+ 7 - 0
src/mol-plugin/state/manager/data.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: data manager (download / open file / parse)

+ 8 - 0
src/mol-plugin/state/manager/data/parsers.ts

@@ -0,0 +1,8 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: build in format parsers, allow to define custom formats
+// basically state actions that take data and return parsed format in appropriate built in representation (e.g. string|binary => )

+ 8 - 0
src/mol-plugin/state/manager/data/sources.ts

@@ -0,0 +1,8 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: basic types string, binary (both download and from file)
+// TODO: decompress functionality (string|binary --> string|binary)

+ 7 - 0
src/mol-plugin/state/manager/structure.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: manager that handles representation of models (assembly / symmetry / etc) and structures (components / visuals)

+ 7 - 0
src/mol-plugin/state/manager/structure/components.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: manager that handles structure selections

+ 0 - 0
src/mol-plugin/state/manager/structure/model.ts


+ 7 - 0
src/mol-plugin/state/manager/structure/representations.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: manager that handles representation structures

+ 7 - 0
src/mol-plugin/state/manager/structure/selection.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: manager that handles structure selections/components

+ 7 - 0
src/mol-plugin/state/manager/structure/volume.ts

@@ -0,0 +1,7 @@
+/**
+ * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author David Sehnal <david.sehnal@gmail.com>
+ */
+
+// TODO: manager that handles experimental volumes (and streaming)