This file is indexed.

/usr/include/paraview/vtkCompositeMultiProcessController.h is in paraview-dev 5.0.1+dfsg1-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
/*=========================================================================

  Program:   ParaView
  Module:    vtkCompositeMultiProcessController.h

  Copyright (c) Kitware, Inc.
  All rights reserved.
  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.

     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notice for more information.

=========================================================================*/
// .NAME vtkCompositeMultiProcessController
// .SECTION Description
// vtkCompositeMultiProcessController offer a composite implementation of
// vtkMultiProcessController that allow us to deal with collaborative
// MultiProcessController by switching transparently underneath the active one
// and forwarding the method call to that specific one.
// RMICallBack are simply set on all of the MultiProcessController inside the
// composite.

#ifndef vtkCompositeMultiProcessController_h
#define vtkCompositeMultiProcessController_h

#include "vtkMultiProcessController.h"
#include "vtkPVVTKExtensionsCoreModule.h" // needed for export macro

class VTKPVVTKEXTENSIONSCORE_EXPORT vtkCompositeMultiProcessController : public vtkMultiProcessController
{
public:
  static vtkCompositeMultiProcessController* New();
  vtkTypeMacro(vtkCompositeMultiProcessController, vtkMultiProcessController);
  void PrintSelf(ostream& os, vtkIndent indent);

  //  --------------------- Composite API -------------------------------

  // Description:
  // Return a unique identifier for the given selected controller.
  // This is only used as information to id which client is currently talking
  // to the server. In fact it is used inside vtkPVServerInformation so the client
  // could know what is its unique ID in respect to the server.
  int GetActiveControllerID();

  // Description:
  // Return the number of currently connected controllers.
  int GetNumberOfControllers();

  // Description:
  // Return the id of the nth controller.
  int GetControllerId(int idx);

  // Description:
  // Promote the given controller (ID) to be the next master controller.
  // Making a controller to be the master one, doesn't change anything on the
  // controller itself. It is just a meta-data information that helps client
  // application to build master/slave collaborative mechanism on top
  void SetMasterController(int id);

  // Description:
  // Retrun the ID of the designed "Master" controller. That master controller
  // is nothing else than a tag that can only be set on a single controller at
  // a time.
  int GetMasterController();

  // Description:
  // Append the given controller to the composite set.
  // We focus on vtkSocketController because most of the API method are empty
  void RegisterController(vtkMultiProcessController* controller);

  // Description:
  // Remove the given controller to the composite set.
  void UnRegisterController(vtkMultiProcessController* controller);

  // Description:
  // Remove the active controller and return the number of registered controler
  // left.
  int UnRegisterActiveController();

  // Description:
  // Provides access to the active controller.
  vtkMultiProcessController* GetActiveController();

  // Description:
  // Allow server to broadcast data to all connected client with our without
  // sending to the active client
  virtual void TriggerRMI2All(int remote, void* data, int length, int tag,
                              bool sendToActiveToo);

  //  --------------- vtkMultiProcessController API ----------------------
  // Make sure inner vtkSocketController are initialized
  virtual void Initialize();
  virtual void Initialize(int*,char***)     {this->Initialize();};
  virtual void Initialize(int*,char***,int) {this->Initialize();};
  virtual void Finalize() {};             // Empty: Same as vtkSocketController
  virtual void Finalize(int) {};          // Empty: Same as vtkSocketController
  virtual void SingleMethodExecute() {};  // Empty: Same as vtkSocketController
  virtual void MultipleMethodExecute() {};// Empty: Same as vtkSocketController
  virtual void CreateOutputWindow() {};   // Empty: Same as vtkSocketController


  virtual vtkCommunicator* GetCommunicator();

  //  --------------- RMIs Overloaded API -------------------
//BTX
  // Description:
  // These methods are a part of the newer API to add multiple rmi callbacks.
  // When the RMI is triggered, all the callbacks are called
  // Adds a new callback for an RMI. Returns the identifier for the callback.
  virtual unsigned long AddRMICallback(vtkRMIFunctionType, void* localArg, int tag);

  // Description:
  // These methods are a part of the newer API to add multiple rmi callbacks.
  // When the RMI is triggered, all the callbacks are called
  // Removes all callbacks for the tag.
  virtual void RemoveAllRMICallbacks(int tag);
  virtual int RemoveFirstRMI(int tag)
    {
    vtkWarningMacro("RemoveRMICallbacks will remove all...");
    this->RemoveAllRMICallbacks(tag);
    return 1;
    }
  virtual bool RemoveRMICallback(unsigned long observerTagId);

  enum EventId
    {
    CompositeMultiProcessControllerChanged = 2345
    };

protected:
  vtkCompositeMultiProcessController();
  ~vtkCompositeMultiProcessController();

private:
  vtkCompositeMultiProcessController(const vtkCompositeMultiProcessController&); // Not implemented
  void operator=(const vtkCompositeMultiProcessController&); // Not implemented

  class vtkCompositeInternals;
  vtkCompositeInternals* Internal;
  friend class vtkCompositeInternals;
//ETX
};

#endif