This file is indexed.

/usr/include/choreonoid-1.1/cnoid/src/BodyPlugin/SimulatorItem.h is in libcnoid-dev 1.1.0+dfsg-6.1+b4.

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
/*!
  @file
  @author Shin'ichiro Nakaoka
*/

#ifndef CNOID_BODYPLUGIN_SIMULATOR_ITEM_H_INCLUDED
#define CNOID_BODYPLUGIN_SIMULATOR_ITEM_H_INCLUDED

#include <cnoid/Item>
#include <QWidget>
#include "exportdecl.h"

namespace cnoid {
        
    class SimulatorItemImpl;
        
    class CNOID_EXPORT SimulatorItem : public Item
    {
      public:
        SimulatorItem();
        SimulatorItem(const SimulatorItem& org);
        virtual ~SimulatorItem();

        void setAllLinkPositionOutputMode(bool on);
        bool isAllLinkPositionOutputMode();
            
        bool startSimulation();
        void stopSimulation();
        bool isSimulationRunning();

        SignalProxy< boost::signal<void()> > sigSimulationFinished();
            
      protected:
            
        virtual QWidget* settingPanel() = 0;
            
        virtual bool doStartSimulation() = 0;
        virtual bool doStepSimulation() = 0;

        /**
           @return time at the last flush
        */
        virtual double doFlushResults() = 0;

        /**
           @return finish time
        */
        virtual double doStopSimulation() = 0;

        void lockResults();
        void unlockResults();

        /**
           This must be called within the critical section
        */
        void requestToFlushResults();
            
      private:
            
        SimulatorItemImpl* impl;

        friend class SimulatorView;
        friend class SimulatorItemImpl;
    };
        
    typedef boost::intrusive_ptr<SimulatorItem> SimulatorItemPtr;
}

#endif