UNPKG

molstar

Version:

A comprehensive macromolecular library.

53 lines (52 loc) 1.8 kB
/** * Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ import { Column } from '../../../mol-data/db'; export declare const PlyTypeByteLength: { char: number; uchar: number; short: number; ushort: number; int: number; uint: number; float: number; double: number; int8: number; uint8: number; int16: number; uint16: number; int32: number; uint32: number; float32: number; float64: number; }; export declare type PlyType = keyof typeof PlyTypeByteLength; export declare const PlyTypes: Set<string>; export declare function PlyType(str: string): "int" | "float" | "ushort" | "float32" | "int32" | "uint32" | "uint16" | "char" | "uchar" | "short" | "uint" | "double" | "int8" | "uint8" | "int16" | "float64"; export interface PlyFile { readonly comments: ReadonlyArray<string>; readonly elementNames: ReadonlyArray<string>; getElement(name: string): PlyElement | undefined; } export declare function PlyFile(elements: PlyElement[], elementNames: string[], comments: string[]): PlyFile; export declare type PlyElement = PlyTable | PlyList; export interface PlyTable { readonly kind: 'table'; readonly rowCount: number; readonly propertyNames: ReadonlyArray<string>; readonly propertyTypes: ReadonlyArray<PlyType>; getProperty(name: string): Column<number> | undefined; } export interface PlyListValue { readonly entries: ArrayLike<number>; readonly count: number; } export interface PlyList { readonly kind: 'list'; readonly rowCount: number; readonly name: string; readonly type: PlyType; value: (row: number) => PlyListValue; }