// Modified by Yen-Ju Chen /* ** Channel.h ** ** Copyright (c) 2002 ** ** Author: Ludovic Marcotte ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program; if not, write to the Free Software ** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef _Toolbox_Ploplet_H_Channel #define _Toolbox_Ploplet_H_Channel #include "Element.h" @class GSXMLNode; @class Plop; @class PlopletView; @class NSData; @class NSMutableArray; @class NSString; @class NSURL; @interface Channel : Element { NSMutableArray *allElements; Plop *plop; PlopletView *plopletView; int totalBytes; } - (id) initWithContentsOfFile: (NSString *) file; - (id) initWithURL: (NSURL *) url; // access / mutation methods - (void) addElement: (Element *) theElement; - (void) removeElement: (Element *) theElement; - (void) removeAllElements; - (int) count; - (int) itemCount; - (Element *) elementAtIndex: (int) theIndex; - (Plop *) plop; - (void) setPlop: (Plop *) thePlop; - (PlopletView *) plopletView; - (void) setPlopletView: (PlopletView *) theView; - (void) processData: (NSData *) data; @end // Private methods @interface Channel (Private) - (void) _parseNodeInformationUsingElement: (Element *) theElement node: (id) theNode; @end #endif /* _Toolbox_Ploplet_H_Channel */