parameters: (self,
                   debug=False,
                   config_path="securetea/lib/antivirus/config/config.json",
                   vt_api_key=None,
                   use_clamav=False,
                   use_yara=False,
                   monitor_changes=1,
                   monitor_usb=1,
                   update=1,
                   custom_scan=None,
                   auto_delete=0)
docstring: Initialize CoreEngine.
  
          Args:
              debug (bool): Log on terminal or not
              config_path (str): Configuration JSON file path
              vt_api_key (str): VirusTotal API Key
              monitor_changes (int): Monitor changes (1) or not (0)
              monitor_usb (int): Monitor USB (1) or not (0)
  
          Raises:
              None
  
          Returns:
              None
docstring_summary: Initialize CoreEngine.
docstring_tokens: Initialize CoreEngine .
function: def __init__(self,
                   debug=False,
                   config_path="securetea/lib/antivirus/config/config.json",
                   vt_api_key=None,
                   use_clamav=False,
                   use_yara=False,
                   monitor_changes=1,
                   monitor_usb=1,
                   update=1,
                   custom_scan=None,
                   auto_delete=0):
          """
          Initialize CoreEngine.
  
          Args:
              debug (bool): Log on terminal or not
              config_path (str): Configuration JSON file path
              vt_api_key (str): VirusTotal API Key
              monitor_changes (int): Monitor changes (1) or not (0)
              monitor_usb (int): Monitor USB (1) or not (0)
  
          Raises:
              None
  
          Returns:
              None
          """
          self.debug = debug
          # Initialize logger
          self.logger = AntiVirusLogger(
                  __name__,
                  debug=debug
          )
          if config_path is not None:
              self._CONFIG_PATH = config_path
          else:
              self.logger.log(
                  "Configuration file path not found.",
                  logtype="error"
              )
              sys.exit(0)
  
          # Initialize variables
          self.update = int(update)
          self.monitor_changes = int(monitor_changes)
          self.monitor_usb = int(monitor_usb)
          self.auto_delete = int(auto_delete)
  
          if custom_scan:
              path = custom_scan
          else:
              path = "~/"
  
          # Create GatherFile object
          self.gather_file_obj = GatherFile(path=path)
          # Get list of files
          self.file_list = self.gather_file_obj.scan_dir()
          # Initialize list of process
          self.process_pool = []
  
          if vt_api_key and vt_api_key != "XXXX":
              self.vt_api_key = vt_api_key
          else:
              self.vt_api_key = None
  
          self.use_clamav = use_clamav
          self.use_yara = use_yara
  
          # Create ScannerEngine object
          self.scanner_engine_obj = ScannerEngine(debug=debug,
                                                  config_path=self._CONFIG_PATH,
                                                  file_list=self.file_list,
                                                  vt_api_key=self.vt_api_key,
                                                  use_clamav=self.use_clamav,
                                                  use_yara=self.use_yara)
          # Create MonitorEngine object
          self.monitor_engine_obj = MonitorEngine(debug=debug,
                                                  config_path=self._CONFIG_PATH,
                                                  monitor_changes=self.monitor_changes,
                                                  monitor_usb=self.monitor_usb,
                                                  vt_api_key=self.vt_api_key,
                                                  use_clamav=self.use_clamav,
                                                  use_yara=self.use_yara)
          # Create Cleaner object
          self.cleaner_obj = Cleaner(debug=debug, config_path=self._CONFIG_PATH)
function_tokens: def __init__ ( self , debug = False , config_path = "securetea/lib/antivirus/config/config.json" , vt_api_key = None , use_clamav = False , use_yara = False , monitor_changes = 1 , monitor_usb = 1 , update = 1 , custom_scan = None , auto_delete = 0 ) : self . debug = debug # Initialize logger self . logger = AntiVirusLogger ( __name__ , debug = debug ) if config_path is not None : self . _CONFIG_PATH = config_path else : self . logger . log ( "Configuration file path not found." , logtype = "error" ) sys . exit ( 0 ) # Initialize variables self . update = int ( update ) self . monitor_changes = int ( monitor_changes ) self . monitor_usb = int ( monitor_usb ) self . auto_delete = int ( auto_delete ) if custom_scan : path = custom_scan else : path = "~/" # Create GatherFile object self . gather_file_obj = GatherFile ( path = path ) # Get list of files self . file_list = self . gather_file_obj . scan_dir ( ) # Initialize list of process self . process_pool = [ ] if vt_api_key and vt_api_key != "XXXX" : self . vt_api_key = vt_api_key else : self . vt_api_key = None self . use_clamav = use_clamav self . use_yara = use_yara # Create ScannerEngine object self . scanner_engine_obj = ScannerEngine ( debug = debug , config_path = self . _CONFIG_PATH , file_list = self . file_list , vt_api_key = self . vt_api_key , use_clamav = self . use_clamav , use_yara = self . use_yara ) # Create MonitorEngine object self . monitor_engine_obj = MonitorEngine ( debug = debug , config_path = self . _CONFIG_PATH , monitor_changes = self . monitor_changes , monitor_usb = self . monitor_usb , vt_api_key = self . vt_api_key , use_clamav = self . use_clamav , use_yara = self . use_yara ) # Create Cleaner object self . cleaner_obj = Cleaner ( debug = debug , config_path = self . _CONFIG_PATH )