pak

package
v1.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Magic           = (('K' << 24) + ('C' << 16) + ('A' << 8) + 'P')
	HeaderLength    = 12
	FileBlockLength = 64 // name + offset + length
	FileNameLength  = 56
	FileOffset      = 56
	FileLength      = 60
	Separator       = "/" // always use linux-style, even on windows
)

Variables

This section is empty.

Functions

This section is empty.

Types

type PKZFile

type PKZFile struct {
	Filename string
	Handle   *os.File
	Size     int64
}

func NewPKZFile

func NewPKZFile(filename string) (*PKZFile, error)

func OpenPKZFile

func OpenPKZFile(filename string) (*PKZFile, error)

func (*PKZFile) AddFile

func (pkz *PKZFile) AddFile(filepath string) error

Add a new file to our PKZ archive

func (*PKZFile) Close

func (pkz *PKZFile) Close()

func (*PKZFile) ListFiles

func (pkz *PKZFile) ListFiles() ([]string, error)

type PackedFile

type PackedFile struct {
	Name   string
	Offset int
	Length int
	Data   []byte
}

a file contained inside a pak file

type PakFile

type PakFile struct {
	Filename string
	Handle   *os.File
	Size     uint64
	Header   m.MessageBuffer
	Index    PakFileIndex
	Files    []PackedFile
}

A .pak archive

func NewPak

func NewPak(s string) *PakFile

func OpenPakFile

func OpenPakFile(f string) (*PakFile, error)

func (*PakFile) AddFile

func (pak *PakFile) AddFile(f string) error

func (*PakFile) Close

func (pak *PakFile) Close()

func (*PakFile) Delete

func (pak *PakFile) Delete() error

func (*PakFile) ParseFileData

func (pak *PakFile) ParseFileData() error

func (*PakFile) ParseFileIndex

func (pak *PakFile) ParseFileIndex() error

the end of a pak file contains an index to all the files contained

func (*PakFile) RemoveFile

func (pak *PakFile) RemoveFile(f string) error

func (*PakFile) Validate

func (pak *PakFile) Validate() bool

Make sure the first 4 bytes match the magic number

func (*PakFile) Write

func (pak *PakFile) Write() error

create a new pak file on disk from the PakFile structure

type PakFileIndex

type PakFileIndex struct {
	Location uint32
	Length   uint32
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL