aboutsummaryrefslogtreecommitdiff
path: root/pkg/classes/serverClassInfo.go
diff options
context:
space:
mode:
authorArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-12 20:53:09 +0300
committerArda Serdar Pektezol <1669855+pektezol@users.noreply.github.com>2023-09-16 21:39:42 +0300
commit82871ba1bac1d62f69e1933b66659e62d2e5e063 (patch)
treea906310fba89b670bcfda9625a6d776553d482f6 /pkg/classes/serverClassInfo.go
parentnet/svc messages finally getting parsed correctly (diff)
downloadsdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.tar.gz
sdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.tar.bz2
sdp.go-82871ba1bac1d62f69e1933b66659e62d2e5e063.zip
another rewrite, v1.0.0
Diffstat (limited to 'pkg/classes/serverClassInfo.go')
-rw-r--r--pkg/classes/serverClassInfo.go30
1 files changed, 30 insertions, 0 deletions
diff --git a/pkg/classes/serverClassInfo.go b/pkg/classes/serverClassInfo.go
new file mode 100644
index 0000000..c60dad1
--- /dev/null
+++ b/pkg/classes/serverClassInfo.go
@@ -0,0 +1,30 @@
1package classes
2
3import (
4 "github.com/pektezol/bitreader"
5)
6
7type ServerClassInfo struct {
8 ClassId int16
9 ClassName string
10 DataTableName string
11}
12
13func ParseServerClassInfo(reader *bitreader.ReaderType, count int, numOfClasses int) ServerClassInfo {
14 return ServerClassInfo{
15 ClassId: int16(reader.TryReadBits(16)),
16 ClassName: reader.TryReadString(),
17 DataTableName: reader.TryReadString(),
18 }
19}
20
21// func serverClassBits(numOfClasses int) int {
22// return highestBitIndex(uint(numOfClasses)) + 1
23// }
24
25// func highestBitIndex(i uint) int {
26// var j int
27// for j = 31; j >= 0 && (i&(1<<j)) == 0; j-- {
28// }
29// return j
30// }