class_docstr: This class will fill gaps in the source data using the following
  information bits from the underlying data source
  
    - timeframe and compression to dimension the output bars
  
    - sessionstart and sessionend
  
  If a data feed has missing bars in between 10:31 and 10:34 and the
  timeframe is minutes, the output will be filled with bars for minutes
  10:32 and 10:33 using the closing price of the last bar (10:31)
  
  Bars can be missinga amongst other things because
  
  Params:
    - ``fill_price`` (def: None): if None (or evaluates to False),the
      closing price will be used, else the passed value (which can be
      for example 'NaN' to have a missing bar in terms of evaluation but
      present in terms of time
  
    - ``fill_vol`` (def: NaN): used to fill the volume of missing bars
  
    - ``fill_oi`` (def: NaN): used to fill the openinterest of missing bars
code: def preload(self):
      if len(self.p.dataname) == self.p.dataname.buflen():
          # if data is not preloaded .... do it
          self.p.dataname.start()
          self.p.dataname.preload()
          self.p.dataname.home()
  
      # Copy timeframe from data after start (some sources do autodetection)
      self.p.timeframe = self._timeframe = self.p.dataname._timeframe
      self.p.compression = (
          self._compression
      ) = self.p.dataname._compression
  
      super(DataFiller, self).preload()
  
file_path: backtrader/backtrader/filters/datafiller.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import collections
  from datetime import datetime, timedelta
  from backtrader import AbstractDataBase, TimeFrame
label_desc: Use image node_id 2 for calling the DataFiller obj's underlying member method code with example usage: obj.preload() without return types