Ignore:
Timestamp:
Dec 14, 2009 8:39:21 AM (14 years ago)
Author:
Gervaise Alina <gervyh@…>
Branches:
master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
6e9976b
Parents:
7975f2b
Message:

implement set and get state

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sansmodels/src/sans/models/SphereModel.py

    r27972c1d rfe9c19b4  
    2828class SphereModel(CSphereModel, BaseComponent): 
    2929    """ Class that evaluates a SphereModel model.  
    30         This file was auto-generated from ..\c_extensions\sphere.h. 
    31         Refer to that file and the structure it contains 
    32         for details of the model. 
    33         List of default parameters: 
     30        This file was auto-generated from ..\c_extensions\sphere.h. 
     31        Refer to that file and the structure it contains 
     32        for details of the model. 
     33        List of default parameters: 
    3434         scale           = 1.0  
    3535         radius          = 60.0 [A] 
     
    6060                """ 
    6161        
    62                 ## Parameter details [units, min, max] 
     62        ## Parameter details [units, min, max] 
    6363        self.details = {} 
    6464        self.details['scale'] = ['', None, None] 
     
    6767        self.details['background'] = ['[1/cm]', None, None] 
    6868 
    69                 ## fittable parameters 
     69        ## fittable parameters 
    7070        self.fixed=['radius.width'] 
    7171         
     
    7676        """ Return a identical copy of self """ 
    7777        return self._clone(SphereModel())    
     78         
     79    def __getstate__(self): 
     80        """ return object state for pickling and copying """ 
     81        print "__dict__",self.__dict__ 
     82        #self.__dict__['params'] = self.params 
     83        #self.__dict__['dispersion'] = self.dispersion 
     84        #self.__dict__['log'] = self.log 
     85        model_state = {'params': self.params, 'dispersion': self.dispersion, 'log': self.log} 
     86         
     87        return self.__dict__, model_state 
     88         
     89    def __setstate__(self, state): 
     90        """ create object from pickled state """ 
     91         
     92        self.__dict__, model_state = state 
     93        self.params = model_state['params'] 
     94        self.dispersion = model_state['dispersion'] 
     95        self.log = model_state['log'] 
     96         
    7897    
    7998    def run(self, x = 0.0): 
Note: See TracChangeset for help on using the changeset viewer.