Ghidra Decompiler Analysis Engine
loadimage_ghidra.hh
Go to the documentation of this file.
1 /* ###
2  * IP: GHIDRA
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
18 #ifndef __LOADIMAGE_GHIDRA__
19 #define __LOADIMAGE_GHIDRA__
20 
21 #include "loadimage.hh"
22 #include "ghidra_arch.hh"
23 
24 class ArchitectureGhidra;
25 
29 class LoadImageGhidra : public LoadImage {
30  ArchitectureGhidra *glb;
31 public:
33  // virtual ~LoadImage(void) {}
34  void open(void);
35  void close(void);
36  virtual void loadFill(uint1 *ptr,int4 size,const Address &addr);
37  // Read only flags are all controlled through the database interface
38  virtual string getArchType(void) const;
39  virtual void adjustVma(long adjust);
40 };
41 
42 #endif
ghidra_arch.hh
Ghidra specific architecture information and connection to a Ghidra client.
LoadImageGhidra::LoadImageGhidra
LoadImageGhidra(ArchitectureGhidra *g)
Constructor.
Definition: loadimage_ghidra.cc:18
LoadImageGhidra::getArchType
virtual string getArchType(void) const
Get a string indicating the architecture type.
Definition: loadimage_ghidra.cc:41
loadimage.hh
Classes and API for accessing a binary load image.
LoadImage
An interface into a particular binary executable image.
Definition: loadimage.hh:71
LoadImageGhidra
An implementation of the LoadImage interface using a Ghidra client as the back-end.
Definition: loadimage_ghidra.hh:29
Address
A low-level machine address for labelling bytes and data.
Definition: address.hh:46
LoadImageGhidra::adjustVma
virtual void adjustVma(long adjust)
Adjust load addresses with a global offset.
Definition: loadimage_ghidra.cc:47
ArchitectureGhidra
An implementation of the Architecture interface and connection to a Ghidra client.
Definition: ghidra_arch.hh:60
LoadImageGhidra::open
void open(void)
Open any descriptors.
Definition: loadimage_ghidra.cc:25
LoadImageGhidra::close
void close(void)
Close any descriptor.
Definition: loadimage_ghidra.cc:30
LoadImageGhidra::loadFill
virtual void loadFill(uint1 *ptr, int4 size, const Address &addr)
Get data from the LoadImage.
Definition: loadimage_ghidra.cc:35