public DefaultRootFolderHandler(
     TheImport import,
     EnhancedDriveInfo drive_sInfo,
     string rootFolder,
     List<EnhancedFileInfo> foundFiles,
     ImageCache cachedImages)
     : base(import, drive_sInfo, rootFolder, foundFiles, cachedImages)
 {
 }
 public ChainByTagsRootFolderHandler(
     TheImport import,
     EnhancedDriveInfo driveSInfo,
     string rootFolder,
     List<EnhancedFileInfo> foundFiles,
     ImageCache cachedImages)
     : base(import, driveSInfo, rootFolder, foundFiles, cachedImages)
 {
     this.item2File = new Item2File();
 }
 protected RootFolderHandlerBase(
     TheImport import,
     EnhancedDriveInfo infoOfDrive,
     string rootFolder,
     List<EnhancedFileInfo> foundFiles,
     ImageCache cachedImages)
 {
     _import = import;
     _infoOfDrive = infoOfDrive;
     _files = foundFiles;
     RootFolder = rootFolder;
     _images = cachedImages;
 }
 internal static RootFolderHandlerBase ProvideRootFolderHandlerInstance(
     TheImport import,
     EnhancedDriveInfo infoOfDrive,
     string rootFolder,
     List<EnhancedFileInfo> foundFiles,
     ImageCache cachedImages)
 {
     if (import.Importer.ChainingOption == ChainOption.ChainByTags)
     {
         return new ChainByTagsRootFolderHandler(import, infoOfDrive, rootFolder, foundFiles, cachedImages);
     }
     else if (import.Importer.ChainingOption == ChainOption.ChainByFolder)
     {
         return new ChainByFolderRootFolderHandler(import, infoOfDrive, rootFolder, foundFiles, cachedImages);
     }
     else
     {
         return new DefaultRootFolderHandler(import, infoOfDrive, rootFolder, foundFiles, cachedImages);
     }
 }