Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SoTranSender — sends database changes for transcription

INHERITS FROM

       SoTranSender

SYNOPSIS

       #include <Inventor/misc/SoTranscribe.h>

          Methods from class SoTranSender:

                         SoTranSender(SoOutput *output)
                         ~SoTranSender()
     SoOutput *          getOutput() const
     void                insert(SoNode *node)
     void                insert(SoNode *node, SoNode *parent, int n)
     void                remove(SoNode *parent, int n)
     void                replace(SoNode *parent, int n, SoNode *newNode)
     void                modify(SoNode *node)
     void                prepareToSend()

DESCRIPTION

       This  class  is  used  for  transcribing  Inventor  data.  Transcription is the process of
       packaging changes to a database and sending them over a "wire" to another database.

       The SoTranSender class is used on the  sending  side  of  transcription.  It  packages  up
       changes to a Inventor database into a file or memory area defined by an SoOutput instance.
       It supports a limited set of changes to a database; each change is stored as a command  in
       the transcription area. The SoTranReceiver class can be used at the other end to interpret
       the transcribed commands.

METHODS

                         SoTranSender(SoOutput *output)
          The constructor takes a pointer to  an  SoOutput  instance  that  determines  what  the
          transcription area is (file or memory).

                         ~SoTranSender()
          Destructor.

     SoOutput *          getOutput() const
          Returns pointer to current SoOutput instance.

     void                insert(SoNode *node)
          Adds  an  INSERT command to the transcription area. The given node will be added as the
          last child of the root node on the receiving end.

     void                insert(SoNode *node, SoNode *parent, int n)
          Adds an INSERT command to the transcription area. The given node will be added  as  the
          nth  child of the given parent node on the receiving end. A NULL parent node causes the
          node to be added to the receiving end's root node.

     void                remove(SoNode *parent, int n)
          Adds a REMOVE command to the transcription area. The nth child of the given  (non-NULL)
          parent node on the receiving end will be removed.

     void                replace(SoNode *parent, int n, SoNode *newNode)
          Adds a REPLACE command to the transcription area. The nth child of the given (non-NULL)
          parent node on the receiving end will be replaced with newNode.

     void                modify(SoNode *node)
          Adds a MODIFY command to the transcription area. Updates the field data for  the  given
          node  to  the  new contents. Note that this changes only field data; children of groups
          are not affected, nor is any non-field instance data.

     void                prepareToSend()
          Prepares a SoTranSender instance for transcription, making sure the transcription  area
          is complete and all packaged to go. This must be called before the transcription can be
          performed.

SEE ALSO

       SoOutput, SoTranReceiver

                                                                              SoTranSender(3IV)()