FileLoader_ELF.h Source File
Back to the index.
src
include
FileLoader_ELF.h
Go to the documentation of this file.
1
#ifndef FILELOADER_ELF_H
2
#define FILELOADER_ELF_H
3
4
/*
5
* Copyright (C) 2008-2010 Anders Gavare. All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions are met:
9
*
10
* 1. Redistributions of source code must retain the above copyright
11
* notice, this list of conditions and the following disclaimer.
12
* 2. Redistributions in binary form must reproduce the above copyright
13
* notice, this list of conditions and the following disclaimer in the
14
* documentation and/or other materials provided with the distribution.
15
* 3. The name of the author may not be used to endorse or promote products
16
* derived from this software without specific prior written permission.
17
*
18
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28
* SUCH DAMAGE.
29
*/
30
31
#include "
misc.h
"
32
33
#include "
Component.h
"
34
#include "
FileLoaderImpl.h
"
35
#include "
UnitTest.h
"
36
37
38
/**
39
* \brief ELF binary loader.
40
*
41
* TODO: Longer comment.
42
*/
43
class
FileLoader_ELF
44
:
public
UnitTestable
45
,
public
FileLoaderImpl
46
{
47
public
:
48
FileLoader_ELF
(
const
string
& filename);
49
50
~FileLoader_ELF
()
51
{
52
}
53
54
string
DetectFileType
(
unsigned
char
*buf,
size_t
buflen,
float
& matchness)
const
;
55
56
bool
LoadIntoComponent
(
refcount_ptr<Component>
component, ostream& messages)
const
;
57
58
59
/********************************************************************/
60
61
static
void
RunUnitTests
(
int
& nSucceeded,
int
& nFailures);
62
};
63
64
65
#endif // FILELOADER_ELF_H
FileLoaderImpl.h
FileLoader_ELF::RunUnitTests
static void RunUnitTests(int &nSucceeded, int &nFailures)
refcount_ptr< Component >
FileLoader_ELF
ELF binary loader.
Definition:
FileLoader_ELF.h:46
FileLoader_ELF::DetectFileType
string DetectFileType(unsigned char *buf, size_t buflen, float &matchness) const
Attempt to detect file type.
Definition:
FileLoader_ELF.cc:117
FileLoader_ELF::LoadIntoComponent
bool LoadIntoComponent(refcount_ptr< Component > component, ostream &messages) const
Loads the file into a Component.
Definition:
FileLoader_ELF.cc:148
misc.h
UnitTest.h
Component.h
FileLoader_ELF::FileLoader_ELF
FileLoader_ELF(const string &filename)
Definition:
FileLoader_ELF.cc:111
UnitTestable
Base class for unit testable classes.
Definition:
UnitTest.h:75
FileLoaderImpl
A file loader.
Definition:
FileLoaderImpl.h:42
FileLoader_ELF::~FileLoader_ELF
~FileLoader_ELF()
Definition:
FileLoader_ELF.h:50
Generated on Tue Aug 25 2020 19:25:06 for GXemul by
1.8.18