add: Action::ResultE intersect(Action *action);
context: OSG_BEGIN_NAMESPACEclass OSG_SYSTEMLIB_DLLMAPPING Switch : public SwitchBase{    /*==========================  PUBLIC  =================================*/  public:    /*---------------------------------------------------------------------*/    /*! \name                       Sync                                   */    /*! \{                                                                 */    virtual void changed(BitVector whichField,                         UInt32    origin    );    /*! \}                                                                 */    /*---------------------------------------------------------------------*/    /*! \name                        Dump                                  */    /*! \{                                                                 */    virtual void dump(      UInt32    uiIndent = 0,                      const BitVector bvFlags  = 0) const;    /*! \}                                                                 */    /*=========================  PROTECTED  ===============================*/  protected:    typedef SwitchBase Inherited;    /*---------------------------------------------------------------------*/    /*! \name                   Constructors                               */    /*! \{                                                                 */    Switch(void);    Switch(const Switch &source);    /*! \}                                                                 */    /*---------------------------------------------------------------------*/    /*! \name                   Destructors                                */    /*! \{                                                                 */    virtual ~Switch(void);    /*! \}                                                                 */    /*---------------------------------------------------------------------*/    /*! \name                   Draw                                       */    /*! \{                                                                 */    Action::ResultE draw(Action *action);    /*! \}                                                                 */    /*==========================  PRIVATE  ================================*/  private:    friend class FieldContainer;    friend class SwitchBase;    /*---------------------------------------------------------------------*/    /*! \name                   Class Specific                             */    /*! \{                                                                 */    static void initMethod(void);    /*! \}                                                                 */    /*---------------------------------------------------------------------*/    /*!\brief prohibit default function (move to 'public' if needed) */    void operator =(const Switch &source);};