This API component provides functionality related to MDL archives. More...
#include <imdl_archive_api.h>

Public Member Functions | |
| virtual Sint32 | create_archive (const char *directory, const char *archive, const IArray *manifest_fields)=0 |
| Creates an MDL archive given a directory. More... | |
| virtual Sint32 | extract_archive (const char *archive, const char *directory)=0 |
| Unpacks an MDL archive into a given directory. More... | |
| virtual const IManifest * | get_manifest (const char *archive)=0 |
Returns the manifest for an MDL archive, or nullptr in case of failure. More... | |
| virtual IReader * | get_file (const char *archive, const char *filename)=0 |
| Returns an arbitrary file from an MDL archive. More... | |
| virtual IReader * | get_file (const char *filename)=0 |
| Returns an arbitrary file from an MDL archive. More... | |
| virtual Sint32 | set_extensions_for_compression (const char *extensions)=0 |
| Sets the file types to be compressed in archives. More... | |
| virtual const char * | get_extensions_for_compression () const =0 |
| Returns the file types to be compressed in archives. More... | |
Public Member Functions inherited from mi::base::IInterface | |
| virtual Uint32 | retain () const =0 |
| Increments the reference count. More... | |
| virtual Uint32 | release () const =0 |
| Decrements the reference count. More... | |
| virtual const IInterface * | get_interface (const Uuid &interface_id) const =0 |
| Acquires a const interface from another. More... | |
| template<class T> | |
| const T * | get_interface () const |
| Acquires a const interface from another. More... | |
| virtual IInterface * | get_interface (const Uuid &interface_id)=0 |
| Acquires a mutable interface from another. More... | |
| template<class T> | |
| T * | get_interface () |
| Acquires a mutable interface from another. More... | |
| virtual Uuid | get_iid () const =0 |
| Returns the interface ID of the most derived interface. More... | |
Additional Inherited Members | |
Public Types inherited from mi::base::Interface_declare< 0x4b41b483, ... > | |
| using | Self = Interface_declare< id1, ... > |
| Own type. More... | |
| using | IID = Uuid_t< id1, ... > |
| Declares the interface ID (IID) of this interface. More... | |
Public Types inherited from mi::base::IInterface | |
| using | IID = Uuid_t<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0> |
| Declares the interface ID (IID) of this interface. More... | |
Static Public Member Functions inherited from mi::base::Interface_declare< 0x4b41b483, ... > | |
| static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface and of its ancestors. More... | |
Static Public Member Functions inherited from mi::base::IInterface | |
| static bool | compare_iid (const Uuid &iid) |
Compares the interface ID iid against the interface ID of this interface. More... | |
This API component provides functionality related to MDL archives.
|
pure virtual |
Creates an MDL archive given a directory.
| directory | The contents of this directory will be packed into the archive. Logically, the directory needs to be on the same level as a directory of the search path, i.e., packages in the MDL archive name are represented as empty sub-directories of the given directory. |
| archive | The filename of the MDL archive to be created. |
| manifest_fields | A static or dynamic array of structs of type "Manifest_field" which holds fields with optional or user-defined keys to be added to the manifest. The struct has two members, "key" and "value", both of type "String". nullptr is treated like an empty array. |
nullptr).archive does not end in ".mdr".manifest_fields or a struct member of one of the array elements has an incorrect type.
|
pure virtual |
Unpacks an MDL archive into a given directory.
| archive | The filename of the MDL archive to be extracted. |
| directory | The directory into which the contents of the MDL archive will be extracted. |
nullptr).
|
pure virtual |
Returns the file types to be compressed in archives.
|
pure virtual |
Returns an arbitrary file from an MDL archive.
| archive | The filename of the MDL archive. |
| filename | The name of the file inside the MDL archive. |
nullptr in case of failures.
|
pure virtual |
Returns an arbitrary file from an MDL archive.
| filename | The name of the archive followed by a colon followed by the name of the file inside the archive (e. g. my_archive.mdr:my_package/my_file.mdl). |
nullptr in case of failures.
|
pure virtual |
Returns the manifest for an MDL archive, or nullptr in case of failure.
|
pure virtual |
Sets the file types to be compressed in archives.
| extensions | A comma-separated list of file name extensions. Files with a matching extension will be compressed when archives are created. Independent of this setting here, .mdl files will always be compressed, and textures as defined in [MDLLS] will never be compressed. |