extern "C" {
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <ctype.h>
}

#include "common.h"

typedef class message *messageP;

class message {
	public:
		message(char *_subject);
		int getPart() { return part; }
		int getTotal() { return total; }
		char *getFileName() { return fileName; }
		int isMultiPart() { return ((fileName!=NULL)&&(part!=0)&&(total!=0)); }
		int haveAllParts();
		void joinParts();
		char *getOutFName() { return outfName; }
	private:
		void checkForLongFilename(char *subject);
		void findPartNumber();
		void do_processing();
		int part, total;
		char *fileName; 
		char *subject;
		char *outfName;	// File for encoded part
};


syntax highlighted by Code2HTML, v. 0.9.1