~~NOTOC~~
[[use_exported_control_api]] > [[BS2_GetLogSmallBlobFromDir]]
----
===== BS2_GetLogSmallBlobFromDir=====
[+ 2.6.4] Gets certain amount of logs based on the event mask from USB exported data in an efficient way. \\
The difference from [[BS2_GetLogBlobFromDir]] which is using [[Log_Management_API#BS2EventBlob]] is that the parameter imageObj in BS2EventSmallBlob is changed to pointer for memory efficiency. \\
Except this, everything is the same.
==== Declaration ====
#include "BS_API.h"
int BS2_GetLogSmallBlobFromDir(void* context, const char* szDir, uint16_t eventMask, BS2_EVENT_ID eventId, uint32_t amount, BS2EventSmallBlob** logsObj, uint32_t* numLog);
[[Log_Management_API#BS2EventSmallBlob|See BS2EventSmallBlob Structure]]
==== Parameter ====
* [In] ''//context//'' : Context
* [In] ''//szDir//'' : Data storage path
* [In] ''//eventMask//'' : event mask
* [In] ''//eventId//'' : Log record ID, retireves from the first record if it is 0
* [In] ''//amount//'' : Maximum log amount, retrieves all after eventID if it is 0
* [Out] ''//logsObj//'' : Pointer of storing the log record address
* [Out] ''//numLog//'' : The number of log records
**NOTE**\\
The logsObj variable needs to return the memory to the system by the [[BS2_ReleaseObject]] function after being used.
==== Return Value ====
If successfully done, ''BS_SDK_SUCCESS'' will be returned. \\
If there is an error, the corresponding error code will be returned.
==== See Also ====
[[BS2_AllocateUsbContext]]\\ [[BS2_ReleaseUsbContext]]\\ [[BS2_GetUserDatabaseInfoFromDir]]\\ [[BS2_GetUserListFromDir]]\\ [[BS2_GetUserInfosFromDir]]\\ [[BS2_GetUserDatasFromDir]]\\ [[BS2_GetUserInfosExFromDir]]\\ [[BS2_GetUserDatasExFromDir]]\\ [[BS2_GetLogFromDir]]\\ [[BS2_GetFilteredLogFromDir]]\\ [[BS2_GetLogBlobFromDir]]