strarray.h #1

  • //
  • guest/
  • alan_petersen/
  • piper/
  • mac/
  • R2.0/
  • Perforce/
  • p4api/
  • Headers/
  • strarray.h
  • View
  • Commits
  • Open Download .zip Download (1 KB)
/*
 * Copyright 1995, 1996 Perforce Software.  All rights reserved.
 */

/*
 * strarray.h - 0 based arrays of StrBufs, StrPtrs
 *
 * Class Defined:
 *
 *	StrArray - a linear list of StrBufs
 *	StrPtrArray - a linear list of StrPtrs
 *
 * Public methods:
 *
 * Private methods:
 */

class StrVarArray;

class StrArray {
	
    public:

			StrArray();
			~StrArray();

	StrBuf *	Put();
	const StrBuf *	Get(int i) const;
	StrBuf *	Edit(int i);
	int		Count() const ;
	void		Sort( int caseFolding );
	void		Remove( int i );
	int		Search( const StrBuf *key );
	const StrBuf *	Find( const StrBuf *key );

    private:

	StrVarArray	*array;
} ;

class StrPtrArray {

    public:
			StrPtrArray();
			~StrPtrArray();

	void		Put( const StrPtr &val );
	const StrPtr *	Get( int i ) const { return &tabVal[i]; }
	void		Clear() { tabLength = 0; }
	int		Count() const { return tabLength; }
	StrPtr *	Table() const { return tabVal; }

    private:

	// our own VarArray-like implementation
	
	StrRef		*tabVal;	
	int		tabSize;
	int		tabLength;

} ;

# Change User Description Committed
#1 15071 alan_petersen Populate -o //guest/perforce_software/piper/...
//guest/alan_petersen/piper/....
//guest/perforce_software/piper/mac/R2.0/Perforce/p4api/Headers/strarray.h
#2 13626 alan_petersen Copying using piper_mac_main2r2.0
#1 12962 alan_petersen Populate -o //guest/perforce_software/piper/mac/main/...
//guest/perforce_software/piper/mac/R2.0/....
//guest/perforce_software/piper/mac/main/Perforce/p4api/Headers/strarray.h
#1 11252 alan_petersen Rename/move file(s)
//guest/perforce_software/piper/mac/Perforce/p4api/Headers/strarray.h
#1 10744 alan_petersen Rename/move file(s)
//guest/perforce_software/piper/Perforce/p4api/Headers/strarray.h
#1 8919 Matt Attaway Initial add of Piper, a lightweight Perforce client for artists and designers.