Add KBOOT.
This commit is contained in:
50
apps/elftosb/common/BootImage.h
Normal file
50
apps/elftosb/common/BootImage.h
Normal file
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
* File: BootImage.h
|
||||
*
|
||||
* Copyright (c) Freescale Semiconductor, Inc. All rights reserved.
|
||||
* See included license file for license details.
|
||||
*/
|
||||
#if !defined(_BootImage_h_)
|
||||
#define _BootImage_h_
|
||||
|
||||
#include <iostream>
|
||||
#include "Version.h"
|
||||
|
||||
namespace elftosb
|
||||
{
|
||||
/*!
|
||||
* \brief Abstract base class for all boot image format classes.
|
||||
*
|
||||
* Provides virtual methods for all of the common features between different
|
||||
* boot image formats. These are the product and component version numbers
|
||||
* and the drive tag.
|
||||
*
|
||||
* Also provided is the virtual method writeToStream() that lets the caller
|
||||
* stream out the boot image without knowing the underlying format type.
|
||||
*/
|
||||
class BootImage
|
||||
{
|
||||
public:
|
||||
//! \brief Constructor.
|
||||
BootImage() {}
|
||||
//! \brief Destructor.
|
||||
virtual ~BootImage() {}
|
||||
//! \name Versions
|
||||
//@{
|
||||
virtual void setProductVersion(const version_t &version) = 0;
|
||||
virtual void setComponentVersion(const version_t &version) = 0;
|
||||
//@}
|
||||
|
||||
//! \brief Specify the drive tag to be set in the output file header.
|
||||
virtual void setDriveTag(uint16_t tag) = 0;
|
||||
|
||||
//! \brief Returns a string containing the preferred file extension for image format.
|
||||
virtual std::string getFileExtension() const = 0;
|
||||
|
||||
//! \brief Write the boot image to an output stream.
|
||||
virtual void writeToStream(std::ostream &stream) = 0;
|
||||
};
|
||||
|
||||
}; // namespace elftosb
|
||||
|
||||
#endif // _BootImage_h_
|
||||
Reference in New Issue
Block a user