osgEarth 2.1.1
Public Types | Public Member Functions | Public Attributes | Private Member Functions

anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData Struct Reference

Collaboration diagram for anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData:

List of all members.

Public Types

typedef std::pair< std::string,
osg::ref_ptr
< StencilVolumeNode > > 
StyleGroup

Public Member Functions

 BuildData (int renderBinStart)
bool getStyleNode (const std::string &styleName, StencilVolumeNode *&out_svn, bool useLock)

Public Attributes

int _renderBin
Threading::ReadWriteMutex _mutex
std::vector< StyleGroup_styleGroups

Private Member Functions

bool getStyleNodeWithoutLocking (const std::string &styleName, StencilVolumeNode *&out_svn)

Detailed Description

Definition at line 312 of file FeatureStencilModelSource.cpp.


Member Typedef Documentation

typedef std::pair<std::string, osg::ref_ptr<StencilVolumeNode> > anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::StyleGroup

Definition at line 317 of file FeatureStencilModelSource.cpp.


Constructor & Destructor Documentation

anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::BuildData ( int  renderBinStart) [inline]

Definition at line 315 of file FeatureStencilModelSource.cpp.

: _renderBin( renderBinStart ) { }

Member Function Documentation

bool anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::getStyleNode ( const std::string &  styleName,
StencilVolumeNode *&  out_svn,
bool  useLock 
) [inline]

Definition at line 323 of file FeatureStencilModelSource.cpp.

        {
            if ( useLock )
            {
                Threading::ScopedReadLock lock( _mutex );
                return getStyleNodeWithoutLocking( styleName, out_svn );
            }
            else
            {
                return getStyleNodeWithoutLocking( styleName, out_svn );
            }
        }
bool anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::getStyleNodeWithoutLocking ( const std::string &  styleName,
StencilVolumeNode *&  out_svn 
) [inline, private]

Definition at line 337 of file FeatureStencilModelSource.cpp.

        {
            for(std::vector<StyleGroup>::iterator i = _styleGroups.begin(); i != _styleGroups.end(); ++i )
            {
                if( i->first == styleName )
                {
                    out_svn = i->second.get();
                    return true;
                }
            }
            return false;
        }

Member Data Documentation

Threading::ReadWriteMutex anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::_mutex

Definition at line 319 of file FeatureStencilModelSource.cpp.

int anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::_renderBin

Definition at line 318 of file FeatureStencilModelSource.cpp.

std::vector<StyleGroup> anonymous_namespace{FeatureStencilModelSource.cpp}::BuildData::_styleGroups

Definition at line 320 of file FeatureStencilModelSource.cpp.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines