13d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby/* 23d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * Copyright (C) 2014 The Android Open Source Project 33d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * 43d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * Licensed under the Apache License, Version 2.0 (the "License"); 53d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * you may not use this file except in compliance with the License. 63d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * You may obtain a copy of the License at 73d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * 83d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * http://www.apache.org/licenses/LICENSE-2.0 93d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * 103d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * Unless required by applicable law or agreed to in writing, software 113d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * distributed under the License is distributed on an "AS IS" BASIS, 123d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 133d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * See the License for the specific language governing permissions and 143d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * limitations under the License. 153d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby */ 163d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 173d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#ifndef SYNCML_DM_WRITER_H 183d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#define SYNCML_DM_WRITER_H 193d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 203d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#ifndef __cplusplus 213d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#error "This is a C++ header file; it requires C++ to compile." 223d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#endif 233d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 243d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#include "SyncML_DM_FileHandle.H" 253d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 263d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hambyclass SyncML_DM_Writer 273d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby{ 283d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 293d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby public: 303d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 313d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* Class constructor */ 323d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby SyncML_DM_Writer(DMFileHandler* handle) : fileHandle(handle){ } 333d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 343d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* Class destructor */ 353d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby virtual ~SyncML_DM_Writer(){ } 363d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 373d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* Accessor for setting the file handle used by this class */ 383d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby virtual void setFileHandle(DMFileHandler* fileHandle){ this->fileHandle = fileHandle; } 393d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 403d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* write a byte into the file 413d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * implementations of this class will take advantage of this method 423d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby */ 433d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby virtual SYNCML_DM_RET_STATUS_T writeByte(UINT8 bYte) = 0; 443d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 453d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* write a string into the file 463d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby * implementations of this class will take advantage of this method 473d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby */ 483d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby virtual SYNCML_DM_RET_STATUS_T writeString(CPCHAR string) = 0; 493d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 503d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby protected: 513d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 523d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby /* file handle used by class' utility methods */ 533d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby DMFileHandler* fileHandle; 543d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 553d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby}; 563d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby 573d91e7ce47853dc4e6ec7e1fc675c3d1585e3c51Jake Hamby#endif /* SYNCML_DM_WRITER_H */ 58