#ifndef CONNECTION_H #define CONNECTION_H #include #include #include #include "BufferedFile.h" /* * 5.1.1.1 Connection Interface * disconnect() Disconnect Connection from Connector * getName(): string Get Connections Name sent from Header. * readable(): booleanCan this connection be read from. Not to be confused with polling for data. * writable(): booleanCan this connection be written to? Not to be confused with polling for non blocking writes. * write(data:byte [],size: int)Writes data out to connection. * read(data:byte [],maxsize: int)Reads data from a connection. */ template class Connection { public: virtual void disconnect(); virtual string getName(); virtual bool readable(); virtual bool writable(); virtual int write(const SAMPLE * data, int size); virtual int read(SAMPLE * data, int size); int getFileHandle(); virtual string getType(); virtual void setType(string type); Connection(BufferedFile fd); Connection(BufferedFile fd,string name); virtual ~Connection(); protected: string type; string connectionName; BufferedFile file; void init(BufferedFile fd,string name); }; #endif