Orbiter 2022
Combinatorial Objects
semifield_flag_orbit_node.cpp
Go to the documentation of this file.
1/*
2 * semifield_flag_orbit_node.cpp
3 *
4 * Created on: Apr 17, 2019
5 * Author: betten
6 */
7
8
9
10
11#include "orbiter.h"
12
13using namespace std;
14
15namespace orbiter {
16namespace layer5_applications {
17namespace semifields {
18
19
20
22{
25 pt_local = 0;
26 pt = 0;
29 upstep_orbit = 0;
31 fusion_with = 0;
32 fusion_elt = NULL;
33
34 //longinteger_object go;
35 gens = NULL;
36
37 //null();
38}
39
41{
42 //freeself();
43}
44
45
47 int downstep_primary_orbit, int downstep_secondary_orbit,
48 int pt_local, long int pt, int downstep_orbit_len, int f_long_orbit,
49 int verbose_level)
50{
51 int f_v = (verbose_level >= 1);
52
53 if (f_v) {
54 cout << "semifield_flag_orbit_node:init" << endl;
55 }
62 if (f_v) {
63 cout << "semifield_flag_orbit_node:init done" << endl;
64 }
65
66}
67
69{
70 if (f_long_orbit) {
71 go.create(1, __FILE__, __LINE__);
72 }
73 else {
75 }
76}
77
79{
80 if (f_long_orbit) {
81 return 1;
82 }
83 else {
84 return go.as_int();;
85 }
86}
87
89 semifield_lifting *SL, ofstream &fp,
90 int verbose_level)
91{
92 int f_v = (verbose_level >= 1);
93
94 if (f_v) {
95 cout << "semifield_flag_orbit_node::write_to_file_binary" << endl;
96 }
97 fp.write((char *) &downstep_primary_orbit, sizeof(int));
98 fp.write((char *) &downstep_secondary_orbit, sizeof(int));
99 fp.write((char *) &pt_local, sizeof(int));
100 fp.write((char *) &pt, sizeof(long int));
101 fp.write((char *) &downstep_orbit_len, sizeof(int));
102 fp.write((char *) &f_long_orbit, sizeof(int));
103 fp.write((char *) &f_fusion_node, sizeof(int));
104 if (f_fusion_node) {
105 fp.write((char *) &fusion_with, sizeof(int));
107 }
108 else {
109 fp.write((char *) &upstep_orbit, sizeof(int));
110 }
111 if (!f_long_orbit) {
112 gens->write_to_file_binary(fp, verbose_level - 1);
113 }
114 if (f_v) {
115 cout << "semifield_flag_orbit_node::write_to_file_binary done" << endl;
116 }
117}
118
120 semifield_lifting *SL, ifstream &fp,
121 int verbose_level)
122{
123 int f_v = (verbose_level >= 1);
124
125 if (f_v) {
126 cout << "semifield_flag_orbit_node::read_from_file_binary" << endl;
127 }
128 fp.read((char *) &downstep_primary_orbit, sizeof(int));
129 fp.read((char *) &downstep_secondary_orbit, sizeof(int));
130 fp.read((char *) &pt_local, sizeof(int));
131 fp.read((char *) &pt, sizeof(long int));
132 fp.read((char *) &downstep_orbit_len, sizeof(int));
133 fp.read((char *) &f_long_orbit, sizeof(int));
134 fp.read((char *) &f_fusion_node, sizeof(int));
135 if (f_fusion_node) {
136 fp.read((char *) &fusion_with, sizeof(int));
139 }
140 else {
141 fp.read((char *) &upstep_orbit, sizeof(int));
142 }
143 if (!f_long_orbit) {
145 gens->read_from_file_binary(SL->SC->A, fp, verbose_level - 1);
146 }
147 if (f_v) {
148 cout << "semifield_flag_orbit_node::read_from_file_binary done" << endl;
149 }
150}
151
152
153
154
155
156}}}
157
a class to represent arbitrary precision integers
Definition: ring_theory.h:366
void create(long int i, const char *file, int line)
void element_read_from_file_binary(int *Elt, std::ifstream &fp, int verbose_level)
Definition: action_cb.cpp:737
void element_write_to_file_binary(int *Elt, std::ofstream &fp, int verbose_level)
Definition: action_cb.cpp:708
a strong generating set for a permutation group with respect to a fixed action
Definition: groups.h:1703
void read_from_file_binary(actions::action *A, std::ifstream &fp, int verbose_level)
void write_to_file_binary(std::ofstream &fp, int verbose_level)
void read_from_file_binary(semifield_lifting *SL, std::ifstream &fp, int verbose_level)
void write_to_file_binary(semifield_lifting *SL, std::ofstream &fp, int verbose_level)
void init(int downstep_primary_orbit, int downstep_secondary_orbit, int pt_local, long int pt, int downstep_orbit_len, int f_long_orbit, int verbose_level)
One step of lifting for classifying semifields.
Definition: semifields.h:465
#define NEW_OBJECT(type)
Definition: foundations.h:638
#define NEW_int(n)
Definition: foundations.h:625
#define FALSE
Definition: foundations.h:234
the orbiter library for the classification of combinatorial objects