39 public static function create(array $categories, array $presets,
int $operation) : self{
41 $result->categories = $categories;
42 $result->presets = $presets;
43 $result->operation = $operation;
60 $this->categories = [];
61 for($i = 0, $count = VarInt::readUnsignedInt($in); $i < $count; ++$i){
62 $this->categories[] = CameraAimAssistCategory::read($in);
66 for($i = 0, $count = VarInt::readUnsignedInt($in); $i < $count; ++$i){
67 $this->presets[] = CameraAimAssistPreset::read($in);
70 $this->operation = Byte::readUnsigned($in);
74 VarInt::writeUnsignedInt($out, count($this->categories));
75 foreach($this->categories as $category){
76 $category->write($out);
79 VarInt::writeUnsignedInt($out, count($this->presets));
80 foreach($this->presets as $preset){
84 Byte::writeUnsigned($out, $this->operation);