Ejemplo n.º 1
0
class _VolumeDataSerializer(_TypeSerializer):
    __string = _StringSerializer()
    __cell = _UnitCellSerializer()

    def __init__(self):
        pass

    def version(self):
        return 0

    def name(self):
        return "VolumeData"

    def serialize(self, version, value, context):
        context.write_int(value._width)
        context.write_int(value._height)
        context.write_int(value._depth)

        context.write_float(value._mean)
        context.write_float(value._rmsd)
        context.write_int(value._type)
        context.write_using_serializer(_VolumeDataSerializer.__string,
                                       value._name)
        context.write_using_serializer(_VolumeDataSerializer.__cell,
                                       value._cell)

        context.write_float_array(value._data)

    def deserialize(self, version, context):
        raise NotImplementedError
Ejemplo n.º 2
0
 def __init__(self, shallow=False):
     self.shallow = shallow
     self.array = _ArraySerializer()
     self.atom = _AtomSerializerID()
     self.bond = _BondSerializer()
     self.color = _ColorSerializer()
     self.string = _StringSerializer()
Ejemplo n.º 3
0
class _FileExport(_TypeSerializer):
    _String = _StringSerializer()

    def version(self):
        return 0

    def name(self):
        return "ExportFile"

    def serialize(self, version, value, context):
        pass

    def deserialize(self, version, context):
        filename = context.read_using_serializer(_FileExport._String)
        data = context.read_byte_array()
        return (filename, data)
Ejemplo n.º 4
0
from nanome._internal._util._serializers import _TypeSerializer, _ArraySerializer, _StringSerializer
from nanome._internal._macro._serialization import _MacroSerializer

macro_serializer = _MacroSerializer()
string_serializer = _StringSerializer()
class _SaveMacro(_TypeSerializer):
    _macro_serializer = macro_serializer
    _string_serializer = string_serializer
    
    def __init__(self):
        pass

    def version(self):
        return 0

    def name(self):
        return "SaveMacro"

    def serialize(self, version, value, context):
        context.write_using_serializer(self._macro_serializer, value[0])
        context.write_bool(value[1])
        context.write_using_serializer(self._string_serializer, value[2])

    def deserialize(self, version, context):
        raise NotImplementedError

class _DeleteMacro(_TypeSerializer):
    _macro_serializer = macro_serializer
    _string_serializer = string_serializer

    def __init__(self):
Ejemplo n.º 5
0
 def __init__(self, shallow=False):
     self.shallow = shallow
     self.array_serializer = _ArraySerializer()
     self.array_serializer.set_type(_ResidueSerializer())
     self.string = _StringSerializer()
Ejemplo n.º 6
0
 def __init__(self):
     self.__string = _StringSerializer()
Ejemplo n.º 7
0
 def __init__(self):
     self.__dictionary = _DictionarySerializer()
     self.__dictionary.set_types(_StringSerializer(), _ByteSerializer())
Ejemplo n.º 8
0
 def __init__(self):
     self.color = _ColorSerializer()
     self.string = _StringSerializer()
     self.vector = _Vector3Serializer()
     self.array = _ArraySerializer()
     self.bool = _BoolSerializer()
Ejemplo n.º 9
0
 def __init__(self):
     self.__string_array = _ArraySerializer()
     self.__string_array.set_type(_StringSerializer())
     self.__file_data_array = _ArraySerializer()
     self.__file_data_array.set_type(_FileDataSerializer())
Ejemplo n.º 10
0
import os
import traceback
import zlib

from nanome.util import Logs
from nanome._internal._network._serialization import _ContextSerialization, _ContextDeserialization
from nanome._internal._structure._serialization import _WorkspaceSerializer, _AtomSerializer
from nanome._internal._util._serializers import _DictionarySerializer, _StringSerializer, _ByteSerializer, _TypeSerializer, _LongSerializer

# This package uses undocumented network code, in order to reuse already available serialization code

workspace_serializer = _WorkspaceSerializer()
dictionary_serializer = _DictionarySerializer()
dictionary_serializer.set_types(_StringSerializer(), _ByteSerializer())
atom_dictionary_serializer = _DictionarySerializer()
atom_dictionary_serializer.set_types(_LongSerializer(), _AtomSerializer())


def to_data(workspace):
    context = _ContextSerialization(0, _TypeSerializer.get_version_table())
    context.write_uint(0)  # Version
    context.write_using_serializer(dictionary_serializer,
                                   _TypeSerializer.get_version_table())

    subcontext = context.create_sub_context()
    subcontext.payload["Atom"] = {}
    subcontext.write_using_serializer(workspace_serializer, workspace)
    context.write_using_serializer(atom_dictionary_serializer,
                                   subcontext.payload["Atom"])
    context.write_bytes(subcontext.to_array())
Ejemplo n.º 11
0
 def __init__(self):
     self.__complex = _ComplexSerializer()
     self.__string = _StringSerializer()
     self.__dict = _DictionarySerializer()
     self.__dict.set_types(_LongSerializer(), _AtomSerializer())
Ejemplo n.º 12
0
 def __init__(self):
     self.__string = _StringSerializer()
     self.__directory_entry_array = _ArraySerializer()
     self.__directory_entry_array.set_type(_DirectoryEntrySerializer())
Ejemplo n.º 13
0
 def __init__(self):
     self.string = _StringSerializer()
     self.items = _ArraySerializer()
     self.items.set_type(_DropdownItemSerializer())
Ejemplo n.º 14
0
 def __init__(self, shallow=False):
     self.shallow = shallow
     self.array = _ArraySerializer()
     self.string = _StringSerializer()
     self.dictionary = _DictionarySerializer()
     self.dictionary.set_types(self.string, self.string)
Ejemplo n.º 15
0
 def __init__(self):
     self.string = _StringSerializer()
     self.color = _ColorSerializer()
     self.vector = _Vector3Serializer()
Ejemplo n.º 16
0
 def __init__(self):
     self.__tuple = _TupleSerializer(_IntSerializer(), _StringSerializer())
Ejemplo n.º 17
0
 def __init__(self):
     self.data = _ArraySerializer()
     self.data.set_type(_ByteSerializer())
     self.color = _ColorSerializer()
     self.string = _StringSerializer()
Ejemplo n.º 18
0
 def __init__(self):
     self.__array = _ArraySerializer()
     self.__array.set_type(_StringSerializer())