
io system TODO list for 'write'      8/9/1997


sio_8211Leader:

	* "set" methods.

	// Design of Leader classes needs to be reconsidered. Probably something along
	// the lines of the field classes.... where there's a "raw" field class, and
	// several special purpose field classes that are wrappers around and interpreters
	// of the raw field class. This would eliminate the need for the dynamic casts
	// in clients of the leader classes.

sio_8211DRLeader:

	* streamInsert();

sio_8211DDRLeader:

	* "set" methods.
	* streamInsert();

sio_8211Directory:

	* operator<<()

DONE	* Make it so that sio_8211DirEntry instances (and not ptrs to instances) are stored.
		  This will mean (hopefully) nothing more than adding a default ctor to 
		  sio_8211DirEntry and tweaking some code.

	// For write, the 8211 record (either DR or DDR) will construct the directory.
	// I still need to design the directory interface to be used by the records.

sio_8211DirEntry:

	* operator<<()
	* "set" methods for Tag, Length and Position.


Reserved Field classes:

	* getField() method to return a sio_8211Field instance.

	* Design is incorrect for sio_8211FileTitleField and sio_8211RecordIndentifierField
	  classes. Remove 'isA' relationship with sio_8211DDR and move class declarations 
	  and definitions to new files. Add to ObjectDomain diagram.

	* Consider some sort of 'sio_8211SpecialField' ABC for each of the reserved
	  fields (including sio_8211DDRField) to inherit from. This class would
	  supply the 'virtual sio_8211Field getField() const' method.
 

sio_8211Field:

	* streamInsert()
	* There will probably have to be a "setData(char const* data, long length)"
	  method too.

sio_8211Record:

	* implement addField stub.

sio_8211DR:

	* streamInsert();

sio_8211DDR:

	* streamInsert();


