Changeset 3897 in Sophya for trunk/AddOn/TAcq/racqueth.h
- Timestamp:
- Oct 4, 2010, 4:19:59 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/AddOn/TAcq/racqueth.h
r3883 r3897 65 65 BRParList par_; // Parametres divers d'acquisition 66 66 67 uint_8 nmaxpaq_; // Nombre maxi de paquets traites 67 uint_8 nmaxpaq_; // Nombre maxi de paquets traites - DOIT etre mutiple de mmgr.NbPaquets() 68 68 BRDataFmtConv swapall_; // select data swap/format conversion for BRPaquet 69 69 bool stop_; … … 73 73 int tcpportid_; 74 74 vector< vector<ClientSocket> > vvec_skt_; 75 vector< uint_4 > vec_cntpaq_; 75 vector< vector<uint_8> > vvec_errorcnt_; 76 vector< uint_8 > vec_cntpaq_; 76 77 uint_4 packSize_; 77 78 uint_4 packSizeInMgr_; … … 89 90 class EthernetReader : public ZThread { 90 91 public: 91 EthernetReader(RAcqMemZoneMgr& mem, BRParList const& par, int portid=BRSPORTID, bool rdsamefc=false); 92 EthernetReader(RAcqMemZoneMgr& mem, BRParList const& par, int portid=BRSPORTID); 93 virtual ~EthernetReader(); 94 95 // Configuration du mode de lecture des paquets 96 // Si force_samefc=true, on essaye de lire des paquets avec meme FrameCounter, sans depasser une 97 // difference maximum de maxdiff_paqnum entre nombre de paquets lus sur chaque fibre 98 inline void SetReadMode(bool force_samefc=false, uint_4 maxdiff_paqnum=50, uint_4 maxresync=50) 99 { rdsamefc_=force_samefc; sfc_maxdpc_=maxdiff_paqnum; sfc_maxresync_=maxresync; } 100 92 101 virtual void run(); 93 102 inline void Stop() { stop_ = true; } … … 100 109 bool ReadNextAllFibers(); // Renvoie true si probleme 101 110 bool ReadNext(int fib); // Renvoie true si probleme 111 void CleanUpAllSockets(); // pour finir la lecture de toutes les fibres 102 112 size_t ReceiveFromSocket(int fib, char* data, size_t len); 113 114 // recale les links en cas d'ecart important entre nb de paquets lu sur chaque lien 115 int SkipAndSyncLinks(); // Renvoie 0 si rien fait, 1 si skip fait, 9 si probleme 103 116 104 117 // Permet d'avancer d'un paquet dans la zone - renvoie true si probleme … … 119 132 BRParList par_; // Parametres divers d'acquisition 120 133 int tcpportid_; 121 vector< Socket > vsok_; // Les sockets de lecture pour chaque fibre/lien 122 vector< uint_4 > vec_cntpaq_; 134 ServerSocket* srv_sokp_; // Le socket serveur 135 vector< Socket > vsok_; // Les sockets de lecture pour chaque lien ethernet (1 lien= 1 fibre a l'envoi) 136 vector< uint_8 > vec_cntpaq_; // vecteur de compteurs de paquet ( 1 compteur / lien ) 137 vector< uint_4 > vec_fgsokend_; // vecteur de flag, >0 : fin de reception (ou ereur) sur le lien 138 bool gl_fgsokend; // true -> au moins l'un de liens a termine 123 139 bool stop_; 124 140 bool rdsamefc_; // if true, read paquets with same value of FrameCounter on different fibers/link 141 uint_4 sfc_maxdpc_; // difference maxi entre nombre de paquets lu sur les liens 142 uint_4 sfc_maxresync_; // nb maximum de tentatives de resynchronisation 143 125 144 uint_8 totnbytesrd_; 126 145 uint_8 totnpaqrd_; 127 146 uint_8 totsamefc_; // nombre total de paquets avec meme framecounter 147 148 uint_8 totnbresync_; // nombre total de saut+resynchronisation 128 149 129 150 vector<BRPaquet> vpaq_; … … 140 161 Byte* mmbufib_[MAXANAFIB]; // Pointeurs zone memoire de chaque fibre rendu par RAcqMemZoneMgr 141 162 163 // zone tampon contenant zero si lecture sur fibre est fini 164 char* dummybuff_; 165 142 166 int prtlev_; // print level 143 167 uint_8 prtmodulo_; // print periodicity (modulo)
Note:
See TracChangeset
for help on using the changeset viewer.