예제 #1
0
파일: DeltaWindow.cs 프로젝트: shoff/ngit
 internal DeltaWindow(PackConfig pc, DeltaCache dc, ObjectReader or)
 {
     // The object we are currently considering needs a lot of state:
     config     = pc;
     deltaCache = dc;
     reader     = or;
     // C Git increases the window size supplied by the user by 1.
     // We don't know why it does this, but if the user asks for
     // window=10, it actually processes with window=11. Because
     // the window size has the largest direct impact on the final
     // pack file size, we match this odd behavior here to give us
     // a better chance of producing a similar sized pack as C Git.
     //
     // We would prefer to directly honor the user's request since
     // PackWriter has a minimum of 2 for the window size, but then
     // users might complain that JGit is creating a bigger pack file.
     //
     window = new DeltaWindowEntry[config.GetDeltaSearchWindowSize() + 1];
     for (int i = 0; i < window.Length; i++)
     {
         window[i] = new DeltaWindowEntry();
     }
     maxMemory = config.GetDeltaSearchMemoryLimit();
     maxDepth  = config.GetMaxDeltaDepth();
 }
 internal DeltaTask(PackConfig config, ObjectReader reader, DeltaCache dc, ThreadSafeProgressMonitor
                    pm, int batchSize, int start, ObjectToPack[] list)
 {
     this.config         = config;
     this.templateReader = reader;
     this.dc             = dc;
     this.pm             = pm;
     this.batchSize      = batchSize;
     this.start          = start;
     this.list           = list;
 }