diff options
Diffstat (limited to 'lib/pman/src/pman_buf_buffer.erl')
-rw-r--r-- | lib/pman/src/pman_buf_buffer.erl | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/lib/pman/src/pman_buf_buffer.erl b/lib/pman/src/pman_buf_buffer.erl deleted file mode 100644 index ad92eb1f3e..0000000000 --- a/lib/pman/src/pman_buf_buffer.erl +++ /dev/null @@ -1,102 +0,0 @@ -%% -%% %CopyrightBegin% -%% -%% Copyright Ericsson AB 1997-2009. All Rights Reserved. -%% -%% The contents of this file are subject to the Erlang Public License, -%% Version 1.1, (the "License"); you may not use this file except in -%% compliance with the License. You should have received a copy of the -%% Erlang Public License along with this software. If not, it can be -%% retrieved online at http://www.erlang.org/. -%% -%% Software distributed under the License is distributed on an "AS IS" -%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See -%% the License for the specific language governing rights and limitations -%% under the License. -%% -%% %CopyrightEnd% -%% -%%%---------------------------------------------------------------------- -%%% Purpose : The purpouse of the buffer process is to take -%%% care of the data that is received by the converter -%%% process and pass it on to the printer process in chunks -%%% that can be handled. -%%% -%%% This module is a part of the buffering system, and -%%% should not be used except through the API defined -%%% in the pman_buf module. -%%% -%%%---------------------------------------------------------------------- - --module(pman_buf_buffer). - -%%-compile(export_all). --export([init/1]). - --include("pman_buf.hrl"). - - - -%% -%% Initialization function for the buffer process. -%% To be started with spawn from the calling process. -%% - -init(Editor) -> - Printer_pid = spawn_link(pman_buf_printer,init,[Editor,self()]), - receive - {converter_pid,Pid} -> - Pid!{buffer,accept}, - buffer_loop([],0,0,Printer_pid,Pid) - end. - - - -%% -%% Receive loop for the buffer process. -%% - -buffer_loop(Buffer,Size,Acc,Printer,Converter) -> - receive - {save_buffer,Name} -> - Printer!{save_buffer,Name}, - buffer_loop(Buffer,Size,Acc,Printer,Converter); - {raw,Raw,Length} -> %%output to editor - New_Size = Size + Length, - if New_Size < ?BUFF_SIZE -> - Converter!{buffer,accept}; - true -> ok - end, - Print = lists:map(fun(X) -> pman_buf_utils:textformat(X) end, Raw), - New_Buff = lists:append(Buffer,Print), - buffer_loop(New_Buff,New_Size,Acc,Printer,Converter); - {clear,Text,N_Converter} -> - Converter!{buffer,accept}, - Printer!clear, - buffer_loop([Text],1,1,Printer,N_Converter); - {printer,send} when Buffer /= [] -> - if - Acc > ?EDITOR_MAX -> - Printer!clear, - Printer !{buffer,"Cleared Buffer due to Size\n\n"}, - buffer_loop(Buffer,Size,1,Printer,Converter); - true -> - {Length,Rest,Print} = pman_buf_utils:split(Buffer, - ?PRINT_LEN, - 0, - []), - Printer ! {buffer,Print}, - New_Size = Size - Length, - if New_Size < ?BUFF_SIZE -> - Converter!{buffer,accept}; - true -> ok - end, - buffer_loop(Rest,New_Size,Acc+Length,Printer,Converter) - end; - {converter,file} -> - Converter!{buffer,Buffer}, - self()!{raw,[to_file],1}, - buffer_loop([],0,Acc,Printer,Converter) - end. - - |