From df6b163505ab5bd58eb2abc465b435a04b4458f0 Mon Sep 17 00:00:00 2001 From: Sebastian Bittrich <bittrich@hs-mittweida.de> Date: Fri, 7 Jun 2019 09:27:46 -0700 Subject: [PATCH] replace encoding string with union type --- src/mol-io/writer/_spec/cif.spec.ts | 27 +++++++++++++++++++++++++++ src/mol-io/writer/cif.ts | 7 ++++--- 2 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 src/mol-io/writer/_spec/cif.spec.ts diff --git a/src/mol-io/writer/_spec/cif.spec.ts b/src/mol-io/writer/_spec/cif.spec.ts new file mode 100644 index 000000000..efd8eac6e --- /dev/null +++ b/src/mol-io/writer/_spec/cif.spec.ts @@ -0,0 +1,27 @@ +import { CifWriter } from '../cif'; + +const cif = await downloadFromPdb('1brr') +const encoder = CifWriter.createEncoder({ + binary: true, + encoderName: 'mol*', + binaryAutoClassifyEncoding: true, + binaryEncodingPovider: CifWriter.createEncodingProviderFromJsonConfig([ + { + 'categoryName': 'atom_site', + 'columnName': 'Cartn_y', + 'encoding': 'rle', + 'precision': 0 + }, + { + 'categoryName': 'atom_site', + 'columnName': 'Cartn_z', + 'encoding': 'delta', + 'precision': 1 + }, + { + 'categoryName': 'atom_site', + 'columnName': 'label_seq_id', + 'encoding': 'delta-rle' + } + ]) +}); \ No newline at end of file diff --git a/src/mol-io/writer/cif.ts b/src/mol-io/writer/cif.ts index 762f1988f..3fd87a346 100644 --- a/src/mol-io/writer/cif.ts +++ b/src/mol-io/writer/cif.ts @@ -103,8 +103,9 @@ export namespace CifWriter { export interface EncodingStrategyHint { categoryName: string, columnName: string, - // 'pack', 'rle', 'delta', or 'delta-rle' - encoding: string, + encoding: EncodingType, // number of decimal places to keep - must be specified to float columns precision?: number -} \ No newline at end of file +} + +type EncodingType = 'pack' | 'rle' | 'delta' | 'delta-rle' \ No newline at end of file -- GitLab