Skip to content

Loading Data from Custom TREs and Custom NITFs #621

@RaRasputinRGLM

Description

@RaRasputinRGLM

I have tried both a plugin via an .so and have also done inline programmatically definition and registering of the TRE and can see the plugin, however when the tre shows up the nitf::Extensions object it has not passed through the loaded plugin and I only recieve 'raw_data' The Tag is the same as the tag that I named my TRE. I receive no errors that I can tell I am building with cmake, version of nitro 2.11.6 with the build_0 commands.

There may be errors that I am just not getting/seeing. Any advice to that I could be guided to that would help as well. I also tried to add the plugin to the source and it just was looked over by cmake.

Is there a way to test the plugin with a static str that represents the TRE data?

My nitf plugin inline looks like
static nitf_TREDescriptionSet mytredescset = {0, descriptions};
static const char* mytreident []={NITF_PLUGIN_TRE_KEY, "myTRE", NULL};
static nitf_TREHandler myTREHandler;
const char** myTre_init(nitf_Error* error)
{ if(!nitf_TREUtils_createBasicHandler(&mytredescset,&myTREHandler))
{return NULL; return mytreident;}
}
nitf_TREHandler* myTRE_handler(nitf_Error* error){ (void)error; return &myTREHandler;)

Also, getting
cannot convert 'nitf_TREHandler*' {aka '_nitf_TREHandler*'} to 'NITF_PLUGIN_TRE_HANDLER_FUNCTION' {aka '_nitf_TREHandler* ()(_NRT_Error'}
When trying the static method and had to use the original name so i got rid of the underscore, but I am uncertain of the issues that causes.
e.g. nitf_TREHandler* myTREhandler(nitf_Error* error){ (void)error; return &myTREHandler;)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions