BinaryNinja::Transform Class Reference

Public Member Functions

 Transform (BNTransformType type, const std::string &name, const std::string &longName, const std::string &group)
 
BNTransformType GetType () const
 
std::string GetName () const
 
std::string GetLongName () const
 
std::string GetGroup () const
 
virtual std::vector< TransformParameterGetParameters () const
 
virtual bool Decode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > &params=std::map< std::string, DataBuffer >())
 
virtual bool Encode (const DataBuffer &input, DataBuffer &output, const std::map< std::string, DataBuffer > &params=std::map< std::string, DataBuffer >())
 
- Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform >
 StaticCoreRefCountObject ()
 
virtual ~StaticCoreRefCountObject ()
 
BNTransform * GetObject () const
 
void AddRef ()
 
void Release ()
 
void AddRefForRegistration ()
 

Static Public Member Functions

static void Register (Transform *xform)
 
static Ref< TransformGetByName (const std::string &name)
 
static std::vector< Ref< Transform > > GetTransformTypes ()
 
- Static Public Member Functions inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform >
static BNTransform * GetObject (StaticCoreRefCountObject *obj)
 

Protected Member Functions

 Transform (BNTransform *xform)
 

Static Protected Member Functions

static BNTransformParameterInfoGetParametersCallback (void *ctxt, size_t *count)
 
static void FreeParametersCallback (BNTransformParameterInfo *params, size_t count)
 
static bool DecodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount)
 
static bool EncodeCallback (void *ctxt, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount)
 
static std::vector< TransformParameterEncryptionKeyParameters (size_t fixedKeyLength=0)
 
static std::vector< TransformParameterEncryptionKeyAndIVParameters (size_t fixedKeyLength=0, size_t fixedIVLength=0)
 

Protected Attributes

BNTransformType m_typeForRegister
 
std::string m_nameForRegister
 
std::string m_longNameForRegister
 
std::string m_groupForRegister
 

Additional Inherited Members

- Public Attributes inherited from BinaryNinja::StaticCoreRefCountObject< BNTransform >
std::atomic< int > m_refs
 
BNTransform * m_object
 

Constructor & Destructor Documentation

◆ Transform() [1/2]

Transform::Transform ( BNTransform *  xform)
protected

◆ Transform() [2/2]

BinaryNinja::Transform::Transform ( BNTransformType  type,
const std::string &  name,
const std::string &  longName,
const std::string &  group 
)

Member Function Documentation

◆ Decode()

bool Transform::Decode ( const DataBuffer input,
DataBuffer output,
const std::map< std::string, DataBuffer > &  params = std::map<std::string, DataBuffer>() 
)
virtual

Reimplemented in BinaryNinja::CoreTransform.

◆ DecodeCallback()

bool Transform::DecodeCallback ( void *  ctxt,
BNDataBuffer *  input,
BNDataBuffer *  output,
BNTransformParameter params,
size_t  paramCount 
)
staticprotected

◆ Encode()

bool Transform::Encode ( const DataBuffer input,
DataBuffer output,
const std::map< std::string, DataBuffer > &  params = std::map<std::string, DataBuffer>() 
)
virtual

Reimplemented in BinaryNinja::CoreTransform.

◆ EncodeCallback()

bool Transform::EncodeCallback ( void *  ctxt,
BNDataBuffer *  input,
BNDataBuffer *  output,
BNTransformParameter params,
size_t  paramCount 
)
staticprotected

◆ EncryptionKeyAndIVParameters()

vector< TransformParameter > Transform::EncryptionKeyAndIVParameters ( size_t  fixedKeyLength = 0,
size_t  fixedIVLength = 0 
)
staticprotected

◆ EncryptionKeyParameters()

vector< TransformParameter > Transform::EncryptionKeyParameters ( size_t  fixedKeyLength = 0)
staticprotected

◆ FreeParametersCallback()

void Transform::FreeParametersCallback ( BNTransformParameterInfo params,
size_t  count 
)
staticprotected

◆ GetByName()

Ref< Transform > Transform::GetByName ( const std::string &  name)
static

◆ GetGroup()

string Transform::GetGroup ( ) const

◆ GetLongName()

string Transform::GetLongName ( ) const

◆ GetName()

string Transform::GetName ( ) const

◆ GetParameters()

vector< TransformParameter > Transform::GetParameters ( ) const
virtual

Reimplemented in BinaryNinja::CoreTransform.

◆ GetParametersCallback()

BNTransformParameterInfo * Transform::GetParametersCallback ( void *  ctxt,
size_t *  count 
)
staticprotected

◆ GetTransformTypes()

vector< Ref< Transform > > Transform::GetTransformTypes ( )
static

◆ GetType()

BNTransformType Transform::GetType ( ) const

◆ Register()

void Transform::Register ( Transform xform)
static

Member Data Documentation

◆ m_groupForRegister

std::string BinaryNinja::Transform::m_groupForRegister
protected

◆ m_longNameForRegister

std::string BinaryNinja::Transform::m_longNameForRegister
protected

◆ m_nameForRegister

std::string BinaryNinja::Transform::m_nameForRegister
protected

◆ m_typeForRegister

BNTransformType BinaryNinja::Transform::m_typeForRegister
protected

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