00001 /*00002 * Licensed to the Apache Software Foundation (ASF) under one or more00003 * contributor license agreements. See the NOTICE file distributed with00004 * this work for additional information regarding copyright ownership.00005 * The ASF licenses this file to You under the Apache License, Version 2.000006 * (the "License"); you may not use this file except in compliance with00007 * the License. You may obtain a copy of the License at00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.000010 * 00011 * Unless required by applicable law or agreed to in writing, software00012 * distributed under the License is distributed on an "AS IS" BASIS,00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.00014 * See the License for the specific language governing permissions and00015 * limitations under the License.00016 */00017
00018 /*00019 * $Id: BinInputStream.hpp 568078 2007-08-21 11:43:25Z amassari $00020 */00021
00022 #if !defined(BININPUTSTREAM_HPP)00023#define BININPUTSTREAM_HPP00024
00025 #include <xercesc/util/XMemory.hpp>00026
00027 XERCES_CPP_NAMESPACE_BEGIN00028
00029class BinInputStream : publicXMemory00030 {
00031 public :
00032 // -----------------------------------------------------------------------00033 // Virtual destructor for derived classes00034 // -----------------------------------------------------------------------00035 virtual ~BinInputStream();
00036
00037
00038 // -----------------------------------------------------------------------00039 // The virtual input stream interface00040 // -----------------------------------------------------------------------00041 virtualunsignedint curPos() const = 0;
00042
00043 virtualunsignedint readBytes
00044 (
00045 XMLByte* const toFill
00046 , constunsignedint maxToRead
00047 ) = 0;
00048
00049
00050 protected :
00051 // -----------------------------------------------------------------------00052 // Hidden Constructors00053 // -----------------------------------------------------------------------00054 BinInputStream();
00055
00056
00057 private :
00058 // -----------------------------------------------------------------------00059 // Unimplemented Constructors00060 // -----------------------------------------------------------------------00061 BinInputStream(constBinInputStream&);
00062 BinInputStream& operator=(constBinInputStream&);
00063 };
00064
00065 XERCES_CPP_NAMESPACE_END00066
00067 #endif