campo-sirio/arch/spinner.h

101 lines
2.6 KiB
C++
Executable File

/*
* SPINNER.H
*
* Header file for ArchiveLib 1.0
*
* Copyright (c) 1994 Greenleaf Software, Inc.
* All Rights Reserved
*
* DESCRIPTION
*
* This header file contains the class definition for the ALMonitor
* derived object ALSpinner.
*
* CLASS DEFINITIONS:
*
* ALSpinner
*
* REVISION HISTORY
*
* May 26, 1994 1.0A : First release
*
*/
#ifndef _SPINNER_H
#define _SPINNER_H
#include "arclib.h"
#if defined( __cplusplus )
/*
* class ALSpinner : public ALMonitor
*
* DESCRIPTION
*
* ALSpinner is a very simple monitor class, and is only useful under
* DOS, not Windows. All ALSpinner does is spin a little propellor
* around while the file is being processed. This lets you know
* that something is happening in an otherwise boring process.
*
* DATA MEMBERS
*
* miSpinIndex : A Static variable that keeps track of which
* position the propellor should be in. The
* propellor travels through one of four different
* positions.
*
* mrStream : A reference to the stream that the propellor is
* going to be written on.
*
* MEMBER FUNCTIONS
*
* ALSpinner() : The one and only constructor.
* ~ALSpinner() : The virtual destructor.
* Progress() : The routine that gets called to make the
* propellor twitch.
* ArchiveOperation() : The routine that gets called when archiving
* starts, stops, etc.
*
* REVISION HISTORY
*
* May 26, 1994 1.0A : First release
*
*/
class AL_CLASS_TYPE ALSpinner : public ALMonitor {
/*
* Constructors, destructors, and friend classes
*/
public :
AL_PROTO ALSpinner( ALMonitorType monitor_type,
ostream& stream = cout );
virtual AL_PROTO ~ALSpinner();
/*
* The copy constructor and assignment operator do not exist.
*/
protected :
ALSpinner( const ALSpinner& );
ALSpinner& operator=( const ALSpinner& );
/*
* Member functions
*/
protected :
virtual void AL_PROTO Progress( long mlObjectSoFar, ALStorage& object );
virtual void AL_PROTO ArchiveOperation( ALArchiveOperation operation,
ALArchiveBase *archive,
ALEntry *job );
/*
* Data Members
*/
protected :
static int miSpinIndex;
ostream& mrStream;
public :
AL_CLASS_TAG( _ALSpinnerTag );
};
#endif /* #if defined( __cplusplus ) */
#endif /* #ifdef SPINNER_H */