This file is indexed.

/usr/include/paraview/vtkPVSessionServer.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
/*=========================================================================

  Program:   ParaView
  Module:    vtkPVSessionServer.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 vtkPVSessionServer
// .SECTION Description
// vtkSMSessionServer is a session used on data and/or render servers. It's
// designed for a process that works with a separate client process that acts as
// the visualization driver.
// .SECTION See Also
// vtkSMSessionClient

#ifndef vtkPVSessionServer_h
#define vtkPVSessionServer_h

#include "vtkPVServerImplementationCoreModule.h" //needed for exports
#include "vtkPVSessionBase.h"

class vtkMultiProcessController;
class vtkMultiProcessStream;

class VTKPVSERVERIMPLEMENTATIONCORE_EXPORT vtkPVSessionServer : public vtkPVSessionBase
{
public:
  static vtkPVSessionServer* New();
  vtkTypeMacro(vtkPVSessionServer, vtkPVSessionBase);
  void PrintSelf(ostream& os, vtkIndent indent);

  // Description:
  // Returns the active controller used to communicate with the process.
  // Value must be DATA_SERVER_ROOT or RENDER_SERVER_ROOT or CLIENT.
  // But only the CLIENT do return something different than NULL;
  virtual vtkMultiProcessController* GetController(ServerFlags processType);

  // Description:
  // Connects a remote server. URL can be of the following format:
  // cs://<pvserver-host>:<pvserver-port>
  // cdsrs://<pvdataserver-host>:<pvdataserver-port>/<pvrenderserver-host>:<pvrenderserver-port>
  // In both cases the port is optional. When not provided default
  // pvserver/pvdataserver port // is 11111, while default pvrenderserver port
  // is 22221.
  // For reverse connect i.e. the client waits for the server to connect back,
  // simply add "rc" to the protocol e.g.
  // csrc://<pvserver-host>:<pvserver-port>
  // cdsrsrc://<pvdataserver-host>:<pvdataserver-port>/<pvrenderserver-host>:<pvrenderserver-port>
  // In this case, the hostname is irrelevant and is ignored.
  virtual bool Connect(const char* url);

  // Description:
  // Overload that constructs the url using the command line parameters
  // specified and then calls Connect(url).
  bool Connect();

  // Description:
  // Returns true is this session is active/alive/valid.
  virtual bool GetIsAlive();

  // Description:
  // Client-Server Communication tags.
  enum {
    PUSH                            = 12,
    PULL                            = 13,
    EXECUTE_STREAM                  = 14,
    GATHER_INFORMATION              = 15,
    REGISTER_SI                     = 16,
    UNREGISTER_SI                   = 17,
    LAST_RESULT                     = 18,
    SERVER_NOTIFICATION_MESSAGE_RMI = 55624,
    CLIENT_SERVER_MESSAGE_RMI       = 55625,
    CLOSE_SESSION                   = 55626,
    REPLY_GATHER_INFORMATION_TAG    = 55627,
    REPLY_PULL                      = 55628,
    REPLY_LAST_RESULT               = 55629,
    EXECUTE_STREAM_TAG              = 55630
  };

  // Description:
  // Enable or Disable multi-connection support.
  // The MultipleConnection is only used inside the DATA_SERVER to support
  // several clients to connect to it.
  // By default we allow collaboration (this->MultipleConnection = true)
  vtkBooleanMacro(MultipleConnection, bool);
  vtkSetMacro(MultipleConnection, bool);
  vtkGetMacro(MultipleConnection, bool);

//BTX
  void OnClientServerMessageRMI(void* message, int message_length);
  void OnCloseSessionRMI();

  // Description:
  // Sends the message to all clients.
  virtual void NotifyAllClients(const vtkSMMessage*);

  // Description:
  // Sends the message to all but the active client-session.
  virtual void NotifyOtherClients(const vtkSMMessage*);

protected:
  vtkPVSessionServer();
  ~vtkPVSessionServer();

  // Description:
  // Called when client triggers GatherInformation().
  void GatherInformationInternal(
    vtkTypeUInt32 location, const char* classname, vtkTypeUInt32 globalid,
    vtkMultiProcessStream&);

  // Description:
  // Sends the last result to client.
  void SendLastResultToClient();

  vtkMPIMToNSocketConnection* MPIMToNSocketConnection;

  bool MultipleConnection;

  class vtkInternals;
  vtkInternals* Internal;
  friend class vtkInternals;

private:
  vtkPVSessionServer(const vtkPVSessionServer&); // Not implemented
  void operator=(const vtkPVSessionServer&); // Not implemented
//ETX
};

#endif