Category : Alternate Operating Systems - Quarterdeck DesqView, CP/M, etc
Archive   : PCCAPP.ZIP
Filename : DATASINK.H

 
Output of file : DATASINK.H contained in archive : PCCAPP.ZIP
/*
* This file is part of the Choices Operating System
* Developed by: The TAPESTRY Parallel Computing Laboratory
* University of Illinois at Urbana-Champaign
* Department of Computer Science
* 1304 W. Springfield Ave.
* Urbana, IL 61801
*
* Copyright (c) 1987, 1988, 1989, 1990, 1991
* The University of Illinois Board of Trustees.
* All Rights Reserved.
* CONFIDENTIAL INFORMATION. Distribution restricted under license agreement.
*
* Author: Vincent F. Russo ([email protected])
* Contributing Author: Gary M. Johnston ([email protected])
* Contributing Author: Bjorn A. Helgaas ([email protected])
* Project Manager and Principal Investigator: Roy Campbell ([email protected])
*
* Funded by: NSF TAPESTRY Grant No. 1-5-30035, NASA ICLASS Grant
* No. 1-5-25469 and No. NSG1471 and AT&T Metronet Grant No. 1-5-37411.
*/
/*
* DataSink.h: definition of an outputstream-like object
*/

#ifndef DataSink_h
#define DataSink_h
#ifdef __GNUG__
#pragma once
#pragma interface
#endif

#include "FormatAssists.h"
class Object;


/*
* An OutputStream-like object that *should* compile away to nothing.
* An instance of this is used for a debugging sink when DEBUG is not
* defined.
*/
class DataSink {
int dummyToShutUpCfront;
public:
DataSink & operator << ( const char * );
DataSink & operator << ( int );
DataSink & operator << ( unsigned int );
DataSink & operator << ( Object * );
DataSink & operator << ( Object & );
DataSink & operator << ( ProxiableObjectRef & );
DataSink & operator << ( ProxiableObjectStar & );
DataSink & operator << ( char );
void printf( const char * f,
const formatArgs & a1 = *(formatArgs *)0,
const formatArgs & a2 = *(formatArgs *)0,
const formatArgs & a3 = *(formatArgs *)0,
const formatArgs & a4 = *(formatArgs *)0 );
};

extern DataSink BlackHole; // this is defined in FormatAssists.cc


inline DataSink & DataSink::operator << ( const char * ) { return( *this ); }
inline DataSink & DataSink::operator << ( int ) { return( *this ); }
inline DataSink & DataSink::operator << ( unsigned int ) { return( *this ); }
inline DataSink & DataSink::operator << ( Object * ) { return( *this ); }
inline DataSink & DataSink::operator << ( Object & ) { return( *this ); }
inline DataSink & DataSink::operator << ( ProxiableObjectRef & )
{ return( *this ); }
inline DataSink & DataSink::operator << ( ProxiableObjectStar & )
{ return( *this ); }
inline DataSink & DataSink::operator << ( char ) { return( *this ); }

inline DataSink & operator << ( DataSink & ds, asHex & ) { return( ds ); }
inline DataSink & operator << ( DataSink & ds, asAddress & ) { return( ds ); }
inline DataSink & operator << ( DataSink & ds, asOctal & ) { return( ds ); }
inline DataSink & operator << ( DataSink & ds, asBits & ) { return( ds ); }
inline DataSink & operator << ( DataSink & ds, Flush & ) { return( ds ); }

inline void DataSink::printf( const char *, const formatArgs & ,
const formatArgs & , const formatArgs & , const formatArgs & ) { }

#endif /* DataSink_h */


  3 Responses to “Category : Alternate Operating Systems - Quarterdeck DesqView, CP/M, etc
Archive   : PCCAPP.ZIP
Filename : DATASINK.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/