summaryrefslogtreecommitdiff
path: root/README.md
blob: ec20e21dff871207ba01f88df83cf1c629b91eac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

# TASD

This is a python library for the serialization and deserialization of tasd files using the [tasd file specfication](https://tasd.io/)


## Installation

Install tasd with pip

```bash
  pip install tasd
```
    
## Usage/Examples


Read a file in a print all the packets in it
```py
from tasd import TASD

with open("example.tasd", "rb") as f:
    file = TASD.from_bytes(f.read())

print(file)
for packet in file. packets:
    print(packet)
```

Create a tasd file from scratch and add packets to it
```py
from tasd import TASD, packets

file = TASD()
file.packets.append(packets.extra.Comment(comment="This is a comment"))
file.packets.append(packets.general.Attribution(type=packets.general.Attribution.ATTRIBUTION_TYPE.TASD_FILE_CREATOR, name="Me"))

for packet in file. packets:
    print(packet)

print(file.to_bytes())
```
## Brief API Reference

Not an exhaustive list

`tasd.TASD`

Class holding properties of the tasd file itself: Version and KeyLength

`tasd.constants.PACKET_TYPES`

Enumlike class containing the different packet type indentifiers

`tasd.packets`

Submodule containing all the different packet classes

For details about the different packet types i suggest reading the specification document to determine what packets you need to consider for your use case
## Appendix

Any additional information goes here