21 #include <ndb_global.h> 
   22 #include <ndb_limits.h> 
   23 #include <kernel_types.h> 
   25 #include <ErrorReporter.hpp> 
   26 #include <NodeBitmask.hpp> 
   28 #include <RefConvert.hpp> 
   29 #include <TransporterDefinitions.hpp> 
   44   void clear() { m_cnt = 0;}
 
   67   Uint32 m_sectionPtrI[3];
 
   86   Uint32 getLength() 
const;
 
   87   Uint32 getTrace() 
const;
 
   88   Uint32 getSendersBlockRef() 
const;
 
   90   const Uint32* getDataPtr() 
const ;
 
   91   Uint32* getDataPtrSend() ;
 
   93   void setTrace(Uint32);
 
   95   Uint32 getNoOfSections() 
const;
 
  100   Uint32 
length()
 const { 
return getLength();}
 
  101   BlockReference senderBlockRef()
 const { 
return getSendersBlockRef();}
 
  104   void setLength(Uint32);
 
  107 #define VMS_DATA_SIZE \ 
  108   (MAX_ATTRIBUTES_IN_TABLE + MAX_TUPLE_SIZE_IN_WORDS + MAX_KEY_SIZE_IN_WORDS) 
  110 #if VMS_DATA_SIZE > 8192 
  111 #error "VMSignal buffer is too small" 
  114   Uint32 m_sectionPtrI[3];
 
  117     Uint32 theData[8192];  
 
  120   void garbage_register();
 
  134   void save(
Signal* signal) {
 
  136     for (Uint32 
i = 0; 
i<len; 
i++)
 
  137       m_copy[
i] = m_signal->theData[
i];
 
  140   void clear() { m_signal = 0;}
 
  143     for (Uint32 
i = 0; 
i<len; 
i++)
 
  144       m_signal->theData[
i] = m_copy[
i];
 
  156 Signal::getLength()
 const {
 
  157   return header.theLength;
 
  162 Signal::getTrace()
 const {
 
  163   return header.theTrace;
 
  168 Signal::getSendersBlockRef()
 const {
 
  169   return header.theSendersBlockRef;
 
  174 Signal::getDataPtr()
 const { 
 
  180 Signal::getDataPtrSend() { 
 
  186 Signal::setLength(Uint32 len){
 
  187   header.theLength = len;
 
  192 Signal::setTrace(Uint32 t){
 
  198 Signal::getNoOfSections()
 const {
 
  199   return header.m_noOfSections;
 
  203 NodeReceiverGroup::NodeReceiverGroup() : m_block(0){
 
  208 NodeReceiverGroup::NodeReceiverGroup(Uint32 blockRef){
 
  210   m_block = refToBlock(blockRef);
 
  211   m_nodes.
set(refToNode(blockRef));
 
  215 NodeReceiverGroup::NodeReceiverGroup(Uint32 blockNo, 
 
  223 NodeReceiverGroup::NodeReceiverGroup(Uint32 blockNo, 
 
  230 #include "SignalCounter.hpp" 
  233 NodeReceiverGroup::NodeReceiverGroup(Uint32 blockNo, 
 
  236   m_nodes = nodes.m_nodes;
 
  241 NodeReceiverGroup::operator=(BlockReference blockRef){
 
  243   m_block = refToBlock(blockRef);
 
  244   m_nodes.
set(refToNode(blockRef));
 
  257   : m_cnt(s->header.m_noOfSections),
 
  260   Uint32 * ptr = s->m_sectionPtrI;
 
  261   Uint32 ptr0 = * ptr++;
 
  262   Uint32 ptr1 = * ptr++;
 
  263   Uint32 ptr2 = * ptr++;
 
  269   getSections(m_cnt, m_ptr);
 
  271   s->header.m_noOfSections = 0;
 
  280   getSections(1, m_ptr);
 
  287   if (likely(no < m_cnt))