fcml  1.1.3
Public Types | Public Member Functions | List of all members
fcml::EntryPoint Class Reference

Holds instruction pointer, processor operating mode and memory segment flags. More...

#include <fcml_common.hpp>

Public Types

enum  OperatingMode {
  OM_16_BIT = FCML_OM_16_BIT,
  OM_32_BIT = FCML_OM_32_BIT,
  OM_64_BIT = FCML_OM_64_BIT
}
 Supported operating modes. More...
 

Public Member Functions

 EntryPoint ()
 Creates an empty entry point instance. More...
 
 EntryPoint (OperatingMode opMode, fcml_ip ip=0, fcml_usize addressSizeAttribute=FCML_DS_UNDEF, fcml_usize operandSizeAttribute=FCML_DS_UNDEF)
 Creates an entry point instance for given processor operating mode, instruction pointer and optionally size attributes. More...
 
bool operator== (const EntryPoint &ep) const
 Checks if two entry points are equal. More...
 
bool operator!= (const EntryPoint &ep) const
 Checks if two entry points are not equal. More...
 
fcml_usize getAddressSizeAttribute () const
 Gets address size attribute held by the entry point. More...
 
void setAddressSizeAttribute (fcml_usize addressSizeAttribute)
 Sets a new address size attribute for the entry point. More...
 
fcml_usize getOperandSizeAttribute () const
 Gets operand size attribute held by the entry point. More...
 
void setOperandSizeAttribute (fcml_usize operandSizeAttribute)
 Sets a new operand size attribute for the entry point. More...
 
fcml_ip getIP () const
 Gets instruction pointer held by the entry point. More...
 
void setIP (fcml_ip ip)
 Sets a new instruction pointer for the entry point. More...
 
OperatingMode getOpMode () const
 Gets processor operating mode. More...
 
void setOpMode (OperatingMode opMode)
 Sets a new processor operating mode for the entry point. More...
 
void incrementIP (fcml_ip ip)
 Increments the instruction pointer by given number of bytes. More...
 

Detailed Description

Holds instruction pointer, processor operating mode and memory segment flags.

Since
1.1.0

Member Enumeration Documentation

Supported operating modes.

Since
1.1.0

Constructor & Destructor Documentation

fcml::EntryPoint::EntryPoint ( )
inline

Creates an empty entry point instance.

Since
1.1.0
fcml::EntryPoint::EntryPoint ( OperatingMode  opMode,
fcml_ip  ip = 0,
fcml_usize  addressSizeAttribute = FCML_DS_UNDEF,
fcml_usize  operandSizeAttribute = FCML_DS_UNDEF 
)
inline

Creates an entry point instance for given processor operating mode, instruction pointer and optionally size attributes.

Parameters
opModeThe processor operating mode.
ipThe instruction pointer.
addressSizeAttributeThe optional address size attribute.
operandSizeAttributeThe optional operand size attribute.
Since
1.1.0

Member Function Documentation

fcml_usize fcml::EntryPoint::getAddressSizeAttribute ( ) const
inline

Gets address size attribute held by the entry point.

Returns
Address size attribute.
Since
1.1.0
fcml_ip fcml::EntryPoint::getIP ( ) const
inline

Gets instruction pointer held by the entry point.

Returns
Instruction pointer.
Since
1.1.0
fcml_usize fcml::EntryPoint::getOperandSizeAttribute ( ) const
inline

Gets operand size attribute held by the entry point.

Returns
Operand size attribute.
Since
1.1.0
OperatingMode fcml::EntryPoint::getOpMode ( ) const
inline

Gets processor operating mode.

Returns
Processor operating mode.
Since
1.1.0
void fcml::EntryPoint::incrementIP ( fcml_ip  ip)
inline

Increments the instruction pointer by given number of bytes.

Parameters
ipNumber for bytes the instruction pointer should be incremented by.
Since
1.1.0
bool fcml::EntryPoint::operator!= ( const EntryPoint ep) const
inline

Checks if two entry points are not equal.

Parameters
epThe source entry point.
Returns
True if they are not equal; otherwise false.
Since
1.1.0
bool fcml::EntryPoint::operator== ( const EntryPoint ep) const
inline

Checks if two entry points are equal.

Parameters
epThe source entry point.
Returns
True if they are equal; otherwise false.
Since
1.1.0
void fcml::EntryPoint::setAddressSizeAttribute ( fcml_usize  addressSizeAttribute)
inline

Sets a new address size attribute for the entry point.

Parameters
addressSizeAttributeThe address size attribute.
Since
1.1.0
void fcml::EntryPoint::setIP ( fcml_ip  ip)
inline

Sets a new instruction pointer for the entry point.

Parameters
ipThe new instruction pointer.
Since
1.1.0
void fcml::EntryPoint::setOperandSizeAttribute ( fcml_usize  operandSizeAttribute)
inline

Sets a new operand size attribute for the entry point.

Parameters
operandSizeAttributeThe operand size attribute.
Since
1.1.0
void fcml::EntryPoint::setOpMode ( OperatingMode  opMode)
inline

Sets a new processor operating mode for the entry point.

Parameters
opModeThe new processor operating mode.
Since
1.1.0

The documentation for this class was generated from the following file: