class CTI::Builder::Fragment
Public Class Methods
          new(id)
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 9 def initialize(id) 10 @id = id 11 @prev = nil 12 @nxt = nil 13 @length = 0 14 @buffer = '' 15 end
Public Instance Methods
          flush(tempFile, out)
          click to toggle source
        
        フラグメントの内容を吐き出して、フラグメントを破棄します。
- tempFile
- 
一時ファイル 
- out
- 
出力先ストリーム( IO ) 
end¶ ↑
# File CTI/Builder/StreamBuilder.rb 74 def flush(tempFile, out) 75 unless @segments 76 out.write(@buffer) 77 @buffer = nil 78 else 79 segcount = @segments.size 80 for seg in @segments 81 tempFile.pos = seg * CTIP2::SEGMENT_SIZE 82 buff = tempFile.read(seg == @segments.last ? @segLen : CTIP2::SEGMENT_SIZE) 83 out.write(buff) 84 end 85 end 86 end
          id()
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 17 def id 18 @id 19 end
          nxt()
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 33 def nxt 34 @nxt 35 end
          nxt=(nxt)
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 29 def nxt=(nxt) 30 @nxt = nxt 31 end
          prev()
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 25 def prev 26 @prev 27 end
          prev=(prev)
          click to toggle source
        
        # File CTI/Builder/StreamBuilder.rb 21 def prev=(prev) 22 @prev = prev 23 end
          write(tempFile, onMemory, segment, bytes)
          click to toggle source
        
        フラグメントにデータを書き込みます。
- tempFile
- 
一時ファイル 
- onMemory
- 
メモリ上に置かれたデータの合計サイズ 
- segment
- 
セグメント番号シーケンス 
- bytes
- 
データ 
- 戻り値
- 
書き込んだバイト数 
end¶ ↑
# File CTI/Builder/StreamBuilder.rb 48 def write(tempFile, onMemory, segment, bytes) 49 len = bytes.bytesize 50 if (!@segments && 51 @length + len <= CTIP2::FRG_MEM_SIZE && 52 onMemory + len <= CTIP2::ON_MEMORY) 53 @buffer += bytes 54 onMemory += len 55 else 56 if @buffer 57 segment, wlen = raf_write(tempFile, segment, @buffer) 58 onMemory -= wlen 59 @buffer = nil 60 end 61 segment, len = raf_write(tempFile, segment, bytes) 62 end 63 @length += len 64 return onMemory, segment, len 65 end