UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
FAQ
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
GUI-Related Classes
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
CIGI Client Plugin
Rendering-Related Classes

Unigine::PackageUng Class

Header: #include <UniginePackageUng.h>

This class is used to operate with UNG packages.

Notice
The maximum size for a file inside a UNG package is limited to 2 GB.

PackageUng Class

Members


static PackageUngPtr create ( const char * password = 0, int compression_type = 2 )

Constructor. Creates a package using specified compression type, protected by a given password, if provided. By default a package is created using ZLIB compression and without password protection.

Arguments

  • const char * password - Password.
  • int compression_type - Compression type. One of the COMPRESSION_* variables.

Ptr<PackageUng> clone( )

Clones the package.

void close( )

Closes the package.

int createPackage( const char * name )

Creates a package with a given name.

Arguments

  • const char * name - Package name.

Return value

1 if a package was created successfully; otherwise, 0.

int getCompressionType( )

Returns the type of compression used in the package.

Return value

Compression type. One of the COMPRESSION_* variables.

const char * getFileName( int num )

Returns the name of a file with a given ID.

Arguments

  • int num - File ID. A number between 0 and the total number of files in the package.

Return value

File name.

int getNumFiles( )

Returns the number of files in the package.

Return value

Number of files.

void grab( )

Grabs the package (sets the owner flag to 1). The package should not be handled by the engine after this function is called.

int isOwner( )

Returns the owner flag. If the pointer is the owner, on its deletion the package also will be deleted. Use grab() and release() functions to change ownership

Return value

Owner flag.

int isSupported( )

Returns a value indicating if UNG-packages are supported.

Return value

1 if UNG packages are supported; otherwise, 0.
Notice
UNG-packages are not supported in evaluation version.

int load( const char * name )

Loads a package with a given name.

Arguments

  • const char * name

Return value

1 if a package was loaded successfully; otherwise, 0.

int readFile( unsigned char * data, int size )

Reads the contents of the currently selected file and puts it into the data array.
Notice
This operation is performed for a currently selected file. To select a file use selectFile().

Arguments

  • unsigned char * data - Data array.
  • int size - File size, in bytes.

Return value

1 if a file was read successfully; otherwise, 0.

void release( )

Releases the package (sets the owner flag to 0). The package should be handled by the engine after this function is called.

int selectFile( const char * name, int & size )

Selects a file with a given name as a current one and puts its size to size.

Arguments

  • const char * name
  • int & size - Integer variable to store the size of the selected file.

Return value

1 if a file was selected successfully; otherwise, 0.

int writeFile( const char * name, unsigned char * data, int size )

Writes data to a file with a given name.

Arguments

  • const char * name
  • unsigned char * data - Data to be written.
  • int size - Size of the data to be written, in bytes.

Return value

1 if the data was successfully written to a file; otherwise, 0.
Last update: 2019-04-30