/usr/include/ossim/base/ossimConnectableContainerInterface.h is in libossim-dev 1.7.21-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 | //*******************************************************************
// Copyright (C) 2000 ImageLinks Inc.
//
// License: See top level LICENSE.txt file.
//
// Author: Garrett Potts
//
// Description: A brief description of the contents of the file.
//
//*************************************************************************
// $Id: ossimConnectableContainerInterface.h 14789 2009-06-29 16:48:14Z dburken $
#ifndef ossimConnectableContainerInterface_HEADER
#define ossimConnectableContainerInterface_HEADER
#include <ossim/base/ossimConstants.h>
#include <ossim/base/ossimRtti.h>
#include <ossim/base/ossimId.h>
#include <vector>
class ossimObject;
class ossimConnectableObject;
class ossimString;
class OSSIMDLLEXPORT ossimConnectableContainerInterface
{
public:
ossimConnectableContainerInterface(ossimObject* obj):theBaseObject(obj){}
virtual ~ossimConnectableContainerInterface(){theBaseObject=NULL;}
/*!
* Will find all objects of the past in type. Use the RTTI type info. An optional
* recurse flag will say if there is another container then recurse it to
* find the type you are looking for else it just looks within its immediate
* children
*
* Example: passing STATIC_TYPE_INFO(ossimImageRenderer) as an argument will
* look for all ossimImageRenderer's and return the list.
*/
virtual std::vector<ossimConnectableObject*> findAllObjectsOfType(const RTTItypeid& typeInfo,
bool recurse=true)=0;
virtual std::vector<ossimConnectableObject*> findAllObjectsOfType(const ossimString& className,
bool recurse=true)=0;
/*!
* Will find the firt object of the past in type. Use the RTTI type info.An optional
* recurse flag will say if there is another container then recurse it to
* find the type you are looking for else it just looks within its immediate
* children
*
* Example: passing STATIC_TYPE_INFO(ossimImageRenderer) as an argument will
* look for the first ossimImageRenderer and return that object.
*/
virtual ossimConnectableObject* findFirstObjectOfType(const RTTItypeid& typeInfo,
bool recurse=true)=0;
virtual ossimConnectableObject* findFirstObjectOfType(const ossimString& className,
bool recurse=true)=0;
/*!
* will search for the object given an id. If recurse is true it will recurse
* to other containers.
*/
virtual ossimConnectableObject* findObject(const ossimId& id,
bool recurse=true)=0;
virtual ossimConnectableObject* findObject(const ossimConnectableObject* obj,
bool recurse=true)=0;
/*!
* Will cycle through all sources setting their ids. the idLast wlil be updated
* so we can recurse into other containers.
*/
virtual void makeUniqueIds()=0;
/*!
* Returns the number of objects within this container and all child containers.
*/
virtual ossim_uint32 getNumberOfObjects(bool recurse=true)const=0;
/*!
* Will add an object to the container and then set the added objects owner
* to this.
*/
virtual bool addChild(ossimConnectableObject* attachableObject)=0;
/*!
* Will remove the child from the container. Changes the owner of the
* child to be NULL;
*/
virtual bool removeChild(ossimConnectableObject* object)=0;
/*!
* Gives access to the this point of the base object that everyone derives
* from.
*/
ossimObject* getObject(){return theBaseObject;}
const ossimObject* getObject()const{return theBaseObject;}
/**
* @param index Index of object to get.
*
* @see getNumberOfObjects(false) to get the number of objects inside
* the container.
*
* @return Container's object at that index or NULL if out of range.
*
* @note This does not recurse into other containers.
*/
virtual ossimConnectableObject* getConnectableObject(ossim_uint32 index)=0;
void deleteAllChildren();
virtual void getChildren(std::vector<ossimConnectableObject*>& children,
bool immediateChildrenOnlyFlag)=0;
protected:
ossimObject* theBaseObject;
TYPE_DATA
};
#endif
|