Binary Ninja API C++: BinaryNinja::Project Class Reference

Public Member Functions

 Project (BNProject *project)
bool Open ()
bool Close ()
std::string GetId () const
bool IsOpen () const
std::string GetPath () const
std::string GetFilePathInProject (const Ref< ProjectFile > &file) const
std::string GetName () const
bool SetName (const std::string &name)
std::string GetDescription () const
bool SetDescription (const std::string &description)
Ref< MetadataQueryMetadata (const std::string &key)
bool StoreMetadata (const std::string &key, Ref< Metadata > value)
bool RemoveMetadata (const std::string &key)
Ref< ProjectFolderCreateFolderFromPath (const std::string &path, Ref< ProjectFolder > parent, const std::string &description, const ProgressFunction &progressCallback={})
Ref< ProjectFolderCreateFolder (Ref< ProjectFolder > parent, const std::string &name, const std::string &description)
Ref< ProjectFolderCreateFolderUnsafe (Ref< ProjectFolder > parent, const std::string &name, const std::string &description, const std::string &id)
std::vector< Ref< ProjectFolder > > GetFolders () const
Ref< ProjectFolderGetFolderById (const std::string &id) const
bool PushFolder (Ref< ProjectFolder > folder)
bool DeleteFolder (Ref< ProjectFolder > folder, const ProgressFunction &progressCallback={})
Ref< ProjectFileCreateFileFromPath (const std::string &path, Ref< ProjectFolder > folder, const std::string &name, const std::string &description, const ProgressFunction &progressCallback={})
Ref< ProjectFileCreateFileFromPathUnsafe (const std::string &path, Ref< ProjectFolder > folder, const std::string &name, const std::string &description, const std::string &id, int64_t creationTimestamp, const ProgressFunction &progressCallback={})
Ref< ProjectFileCreateFile_ (const std::vector< uint8_t > &contents, Ref< ProjectFolder > folder, const std::string &name, const std::string &description, const ProgressFunction &progressCallback={})
Ref< ProjectFileCreateFileUnsafe (const std::vector< uint8_t > &contents, Ref< ProjectFolder > folder, const std::string &name, const std::string &description, const std::string &id, int64_t creationTimestamp, const ProgressFunction &progressCallback={})
std::vector< Ref< ProjectFile > > GetFiles () const
Ref< ProjectFileGetFileById (const std::string &id) const
Ref< ProjectFileGetFileByPathOnDisk (const std::string &path) const
std::vector< Ref< ProjectFile > > GetFilesByPathInProject (const std::string &path) const
bool PushFile (Ref< ProjectFile > file)
bool DeleteFile_ (Ref< ProjectFile > file)
void RegisterNotification (ProjectNotification *notify)
void UnregisterNotification (ProjectNotification *notify)
bool BeginBulkOperation ()
bool EndBulkOperation ()
Ref< Collaboration::RemoteProjectGetRemoteProject ()
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNProject, BNNewProjectReference, BNFreeProject >
 CoreRefCountObject ()
virtual ~CoreRefCountObject ()
BNProjectGetObject () const
void AddRef ()
void Release ()
void AddRefForRegistration ()
void ReleaseForRegistration ()
void AddRefForCallback ()
void ReleaseForCallback ()

Static Public Member Functions

static Ref< ProjectCreateProject (const std::string &path, const std::string &name)
static Ref< ProjectOpenProject (const std::string &path)
static std::vector< Ref< Project > > GetOpenProjects ()

◆ CreateProject()

Ref< Project > Project::CreateProject ( const std::string & path,
const std::string & name )
static

◆ OpenProject()

Ref< Project > Project::OpenProject ( const std::string & path)
static

◆ GetOpenProjects()

std::vector< Ref< Project > > Project::GetOpenProjects ( )
static

◆ Open()

◆ Close()

◆ GetId()

std::string Project::GetId ( ) const

◆ IsOpen()

bool Project::IsOpen ( ) const

◆ GetPath()

std::string Project::GetPath ( ) const

◆ GetFilePathInProject()

std::string Project::GetFilePathInProject ( const Ref< ProjectFile > & file) const

◆ GetName()

std::string Project::GetName ( ) const

◆ SetName()

bool Project::SetName ( const std::string & name)

◆ GetDescription()

std::string Project::GetDescription ( ) const

◆ SetDescription()

bool Project::SetDescription ( const std::string & description)

◆ QueryMetadata()

Ref< Metadata > Project::QueryMetadata ( const std::string & key)

◆ StoreMetadata()

bool Project::StoreMetadata ( const std::string & key,
Ref< Metadata > value )

◆ RemoveMetadata()

bool Project::RemoveMetadata ( const std::string & key)

◆ CreateFolderFromPath()

◆ CreateFolder()

◆ CreateFolderUnsafe()

Ref< ProjectFolder > Project::CreateFolderUnsafe ( Ref< ProjectFolder > parent,
const std::string & name,
const std::string & description,
const std::string & id )

◆ GetFolders()

◆ GetFolderById()

◆ PushFolder()

◆ DeleteFolder()

◆ CreateFileFromPath()

◆ CreateFileFromPathUnsafe()

Ref< ProjectFile > Project::CreateFileFromPathUnsafe ( const std::string & path,
Ref< ProjectFolder > folder,
const std::string & name,
const std::string & description,
const std::string & id,
int64_t creationTimestamp,
const ProgressFunction & progressCallback = {} )

◆ CreateFile_()

◆ CreateFileUnsafe()

Ref< ProjectFile > Project::CreateFileUnsafe ( const std::vector< uint8_t > & contents,
Ref< ProjectFolder > folder,
const std::string & name,
const std::string & description,
const std::string & id,
int64_t creationTimestamp,
const ProgressFunction & progressCallback = {} )

◆ GetFiles()

◆ GetFileById()

Ref< ProjectFile > Project::GetFileById ( const std::string & id) const

◆ GetFileByPathOnDisk()

Ref< ProjectFile > Project::GetFileByPathOnDisk ( const std::string & path) const

◆ GetFilesByPathInProject()

std::vector< Ref< ProjectFile > > Project::GetFilesByPathInProject ( const std::string & path) const

◆ PushFile()

◆ DeleteFile_()

◆ RegisterNotification()

◆ UnregisterNotification()

◆ BeginBulkOperation()

bool Project::BeginBulkOperation ( )

◆ EndBulkOperation()

bool Project::EndBulkOperation ( )

◆ GetRemoteProject()