Added support for set/getUniform and set/getProgram into osg::StateSet.
This commit is contained in:
parent
3005f34cc4
commit
a2e8bc6267
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
|||||||
# Doxyfile 1.2.16
|
# Doxyfile 1.3.6
|
||||||
|
|
||||||
# This file describes the settings to be used by the documentation system
|
# This file describes the settings to be used by the documentation system
|
||||||
# doxygen (www.doxygen.org) for a project
|
# doxygen (www.doxygen.org) for a project
|
||||||
@ -11,13 +11,13 @@
|
|||||||
# Values that contain spaces should be placed between quotes (" ")
|
# Values that contain spaces should be placed between quotes (" ")
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# General configuration options
|
# Project related configuration options
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
|
# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
|
||||||
# by quotes) that should identify the project.
|
# by quotes) that should identify the project.
|
||||||
|
|
||||||
PROJECT_NAME = "OpenSceneGraph"
|
PROJECT_NAME = OpenSceneGraph
|
||||||
|
|
||||||
# The PROJECT_NUMBER tag can be used to enter a project or revision number.
|
# The PROJECT_NUMBER tag can be used to enter a project or revision number.
|
||||||
# This could be handy for archiving the generated documentation or
|
# This could be handy for archiving the generated documentation or
|
||||||
@ -36,13 +36,158 @@ OUTPUT_DIRECTORY = $(OSGHOME)/doc/
|
|||||||
# documentation generated by doxygen is written. Doxygen will use this
|
# documentation generated by doxygen is written. Doxygen will use this
|
||||||
# information to generate all constant output in the proper language.
|
# information to generate all constant output in the proper language.
|
||||||
# The default language is English, other supported languages are:
|
# The default language is English, other supported languages are:
|
||||||
# Brazilian, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
|
# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
|
||||||
# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean,
|
# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
|
||||||
# Norwegian, Polish, Portuguese, Romanian, Russian, Slovak, Slovene,
|
# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese,
|
||||||
# Spanish, Swedish and Ukrainian.
|
# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
|
||||||
|
|
||||||
OUTPUT_LANGUAGE = English
|
OUTPUT_LANGUAGE = English
|
||||||
|
|
||||||
|
# This tag can be used to specify the encoding used in the generated output.
|
||||||
|
# The encoding is not always determined by the language that is chosen,
|
||||||
|
# but also whether or not the output is meant for Windows or non-Windows users.
|
||||||
|
# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
|
||||||
|
# forces the Windows encoding (this is the default for the Windows binary),
|
||||||
|
# whereas setting the tag to NO uses a Unix-style encoding (the default for
|
||||||
|
# all platforms other than Windows).
|
||||||
|
|
||||||
|
USE_WINDOWS_ENCODING = NO
|
||||||
|
|
||||||
|
# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
|
||||||
|
# include brief member descriptions after the members that are listed in
|
||||||
|
# the file and class documentation (similar to JavaDoc).
|
||||||
|
# Set to NO to disable this.
|
||||||
|
|
||||||
|
BRIEF_MEMBER_DESC = YES
|
||||||
|
|
||||||
|
# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
|
||||||
|
# the brief description of a member or function before the detailed description.
|
||||||
|
# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
|
||||||
|
# brief descriptions will be completely suppressed.
|
||||||
|
|
||||||
|
REPEAT_BRIEF = YES
|
||||||
|
|
||||||
|
# This tag implements a quasi-intelligent brief description abbreviator
|
||||||
|
# that is used to form the text in various listings. Each string
|
||||||
|
# in this list, if found as the leading text of the brief description, will be
|
||||||
|
# stripped from the text and the result after processing the whole list, is used
|
||||||
|
# as the annotated text. Otherwise, the brief description is used as-is. If left
|
||||||
|
# blank, the following values are used ("$name" is automatically replaced with the
|
||||||
|
# name of the entity): "The $name class" "The $name widget" "The $name file"
|
||||||
|
# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
|
||||||
|
|
||||||
|
ABBREVIATE_BRIEF =
|
||||||
|
|
||||||
|
# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
|
||||||
|
# Doxygen will generate a detailed section even if there is only a brief
|
||||||
|
# description.
|
||||||
|
|
||||||
|
ALWAYS_DETAILED_SEC = NO
|
||||||
|
|
||||||
|
# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
|
||||||
|
# members of a class in the documentation of that class as if those members were
|
||||||
|
# ordinary class members. Constructors, destructors and assignment operators of
|
||||||
|
# the base classes will not be shown.
|
||||||
|
|
||||||
|
INLINE_INHERITED_MEMB = NO
|
||||||
|
|
||||||
|
# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
|
||||||
|
# path before files name in the file list and in the header files. If set
|
||||||
|
# to NO the shortest path that makes the file name unique will be used.
|
||||||
|
|
||||||
|
FULL_PATH_NAMES = NO
|
||||||
|
|
||||||
|
# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
|
||||||
|
# can be used to strip a user-defined part of the path. Stripping is
|
||||||
|
# only done if one of the specified strings matches the left-hand part of
|
||||||
|
# the path. It is allowed to use relative paths in the argument list.
|
||||||
|
# If left blank the directory from which doxygen is run is used as the
|
||||||
|
# path to strip.
|
||||||
|
|
||||||
|
STRIP_FROM_PATH =
|
||||||
|
|
||||||
|
# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
|
||||||
|
# (but less readable) file names. This can be useful is your file systems
|
||||||
|
# doesn't support long names like on DOS, Mac, or CD-ROM.
|
||||||
|
|
||||||
|
SHORT_NAMES = NO
|
||||||
|
|
||||||
|
# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
|
||||||
|
# will interpret the first line (until the first dot) of a JavaDoc-style
|
||||||
|
# comment as the brief description. If set to NO, the JavaDoc
|
||||||
|
# comments will behave just like the Qt-style comments (thus requiring an
|
||||||
|
# explicit @brief command for a brief description.
|
||||||
|
|
||||||
|
JAVADOC_AUTOBRIEF = YES
|
||||||
|
|
||||||
|
# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
|
||||||
|
# treat a multi-line C++ special comment block (i.e. a block of //! or ///
|
||||||
|
# comments) as a brief description. This used to be the default behaviour.
|
||||||
|
# The new default is to treat a multi-line C++ comment block as a detailed
|
||||||
|
# description. Set this tag to YES if you prefer the old behaviour instead.
|
||||||
|
|
||||||
|
MULTILINE_CPP_IS_BRIEF = NO
|
||||||
|
|
||||||
|
# If the DETAILS_AT_TOP tag is set to YES then Doxygen
|
||||||
|
# will output the detailed description near the top, like JavaDoc.
|
||||||
|
# If set to NO, the detailed description appears after the member
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
DETAILS_AT_TOP = NO
|
||||||
|
|
||||||
|
# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
|
||||||
|
# member inherits the documentation from any documented member that it
|
||||||
|
# re-implements.
|
||||||
|
|
||||||
|
INHERIT_DOCS = YES
|
||||||
|
|
||||||
|
# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
|
||||||
|
# tag is set to YES, then doxygen will reuse the documentation of the first
|
||||||
|
# member in the group (if any) for the other members of the group. By default
|
||||||
|
# all members of a group must be documented explicitly.
|
||||||
|
|
||||||
|
DISTRIBUTE_GROUP_DOC = NO
|
||||||
|
|
||||||
|
# The TAB_SIZE tag can be used to set the number of spaces in a tab.
|
||||||
|
# Doxygen uses this value to replace tabs by spaces in code fragments.
|
||||||
|
|
||||||
|
TAB_SIZE = 8
|
||||||
|
|
||||||
|
# This tag can be used to specify a number of aliases that acts
|
||||||
|
# as commands in the documentation. An alias has the form "name=value".
|
||||||
|
# For example adding "sideeffect=\par Side Effects:\n" will allow you to
|
||||||
|
# put the command \sideeffect (or @sideeffect) in the documentation, which
|
||||||
|
# will result in a user-defined paragraph with heading "Side Effects:".
|
||||||
|
# You can put \n's in the value part of an alias to insert newlines.
|
||||||
|
|
||||||
|
ALIASES =
|
||||||
|
|
||||||
|
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
|
||||||
|
# only. Doxygen will then generate output that is more tailored for C.
|
||||||
|
# For instance, some of the names that are used will be different. The list
|
||||||
|
# of all members will be omitted, etc.
|
||||||
|
|
||||||
|
OPTIMIZE_OUTPUT_FOR_C = NO
|
||||||
|
|
||||||
|
# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
|
||||||
|
# only. Doxygen will then generate output that is more tailored for Java.
|
||||||
|
# For instance, namespaces will be presented as packages, qualified scopes
|
||||||
|
# will look different, etc.
|
||||||
|
|
||||||
|
OPTIMIZE_OUTPUT_JAVA = NO
|
||||||
|
|
||||||
|
# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
|
||||||
|
# the same type (for instance a group of public functions) to be put as a
|
||||||
|
# subgroup of that type (e.g. under the Public Functions section). Set it to
|
||||||
|
# NO to prevent subgrouping. Alternatively, this can be done per class using
|
||||||
|
# the \nosubgrouping command.
|
||||||
|
|
||||||
|
SUBGROUPING = YES
|
||||||
|
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# Build related configuration options
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
|
# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
|
||||||
# documentation are documented, even if no documentation was available.
|
# documentation are documented, even if no documentation was available.
|
||||||
# Private class members and static file members will be hidden unless
|
# Private class members and static file members will be hidden unless
|
||||||
@ -76,50 +221,24 @@ HIDE_UNDOC_MEMBERS = NO
|
|||||||
|
|
||||||
# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
|
# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
|
||||||
# undocumented classes that are normally visible in the class hierarchy.
|
# undocumented classes that are normally visible in the class hierarchy.
|
||||||
# If set to NO (the default) these class will be included in the various
|
# If set to NO (the default) these classes will be included in the various
|
||||||
# overviews. This option has no effect if EXTRACT_ALL is enabled.
|
# overviews. This option has no effect if EXTRACT_ALL is enabled.
|
||||||
|
|
||||||
HIDE_UNDOC_CLASSES = NO
|
HIDE_UNDOC_CLASSES = NO
|
||||||
|
|
||||||
# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
|
# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
|
||||||
# include brief member descriptions after the members that are listed in
|
# friend (class|struct|union) declarations.
|
||||||
# the file and class documentation (similar to JavaDoc).
|
# If set to NO (the default) these declarations will be included in the
|
||||||
# Set to NO to disable this.
|
# documentation.
|
||||||
|
|
||||||
BRIEF_MEMBER_DESC = YES
|
HIDE_FRIEND_COMPOUNDS = NO
|
||||||
|
|
||||||
# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
|
# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
|
||||||
# the brief description of a member or function before the detailed description.
|
# documentation blocks found inside the body of a function.
|
||||||
# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
|
# If set to NO (the default) these blocks will be appended to the
|
||||||
# brief descriptions will be completely suppressed.
|
# function's detailed documentation block.
|
||||||
|
|
||||||
REPEAT_BRIEF = YES
|
HIDE_IN_BODY_DOCS = NO
|
||||||
|
|
||||||
# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
|
|
||||||
# Doxygen will generate a detailed section even if there is only a brief
|
|
||||||
# description.
|
|
||||||
|
|
||||||
ALWAYS_DETAILED_SEC = NO
|
|
||||||
|
|
||||||
# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
|
|
||||||
# members of a class in the documentation of that class as if those members were
|
|
||||||
# ordinary class members. Constructors, destructors and assignment operators of
|
|
||||||
# the base classes will not be shown.
|
|
||||||
|
|
||||||
INLINE_INHERITED_MEMB = NO
|
|
||||||
|
|
||||||
# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
|
|
||||||
# path before files name in the file list and in the header files. If set
|
|
||||||
# to NO the shortest path that makes the file name unique will be used.
|
|
||||||
|
|
||||||
FULL_PATH_NAMES = NO
|
|
||||||
|
|
||||||
# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
|
|
||||||
# can be used to strip a user defined part of the path. Stripping is
|
|
||||||
# only done if one of the specified strings matches the left-hand part of
|
|
||||||
# the path. It is allowed to use relative paths in the argument list.
|
|
||||||
|
|
||||||
STRIP_FROM_PATH =
|
|
||||||
|
|
||||||
# The INTERNAL_DOCS tag determines if documentation
|
# The INTERNAL_DOCS tag determines if documentation
|
||||||
# that is typed after a \internal command is included. If the tag is set
|
# that is typed after a \internal command is included. If the tag is set
|
||||||
@ -128,65 +247,26 @@ STRIP_FROM_PATH =
|
|||||||
|
|
||||||
INTERNAL_DOCS = NO
|
INTERNAL_DOCS = NO
|
||||||
|
|
||||||
# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
|
|
||||||
# doxygen to hide any special comment blocks from generated source code
|
|
||||||
# fragments. Normal C and C++ comments will always remain visible.
|
|
||||||
|
|
||||||
STRIP_CODE_COMMENTS = YES
|
|
||||||
|
|
||||||
# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
|
# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
|
||||||
# file names in lower case letters. If set to YES upper case letters are also
|
# file names in lower-case letters. If set to YES upper-case letters are also
|
||||||
# allowed. This is useful if you have classes or files whose names only differ
|
# allowed. This is useful if you have classes or files whose names only differ
|
||||||
# in case and if your file system supports case sensitive file names. Windows
|
# in case and if your file system supports case sensitive file names. Windows
|
||||||
# users are adviced to set this option to NO.
|
# users are advised to set this option to NO.
|
||||||
|
|
||||||
CASE_SENSE_NAMES = YES
|
CASE_SENSE_NAMES = YES
|
||||||
|
|
||||||
# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
|
|
||||||
# (but less readable) file names. This can be useful is your file systems
|
|
||||||
# doesn't support long names like on DOS, Mac, or CD-ROM.
|
|
||||||
|
|
||||||
SHORT_NAMES = NO
|
|
||||||
|
|
||||||
# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
|
# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
|
||||||
# will show members with their full class and namespace scopes in the
|
# will show members with their full class and namespace scopes in the
|
||||||
# documentation. If set to YES the scope will be hidden.
|
# documentation. If set to YES the scope will be hidden.
|
||||||
|
|
||||||
HIDE_SCOPE_NAMES = NO
|
HIDE_SCOPE_NAMES = NO
|
||||||
|
|
||||||
# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
|
|
||||||
# will generate a verbatim copy of the header file for each class for
|
|
||||||
# which an include is specified. Set to NO to disable this.
|
|
||||||
|
|
||||||
VERBATIM_HEADERS = YES
|
|
||||||
|
|
||||||
# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
|
# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
|
||||||
# will put list of the files that are included by a file in the documentation
|
# will put a list of the files that are included by a file in the documentation
|
||||||
# of that file.
|
# of that file.
|
||||||
|
|
||||||
SHOW_INCLUDE_FILES = YES
|
SHOW_INCLUDE_FILES = YES
|
||||||
|
|
||||||
# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
|
|
||||||
# will interpret the first line (until the first dot) of a JavaDoc-style
|
|
||||||
# comment as the brief description. If set to NO, the JavaDoc
|
|
||||||
# comments will behave just like the Qt-style comments (thus requiring an
|
|
||||||
# explict @brief command for a brief description.
|
|
||||||
|
|
||||||
JAVADOC_AUTOBRIEF = YES
|
|
||||||
|
|
||||||
# If the DETAILS_AT_TOP tag is set to YES then Doxygen
|
|
||||||
# will output the detailed description near the top, like JavaDoc.
|
|
||||||
# If set to NO, the detailed description appears after the member
|
|
||||||
# documentation.
|
|
||||||
|
|
||||||
DETAILS_AT_TOP = NO
|
|
||||||
|
|
||||||
# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
|
|
||||||
# member inherits the documentation from any documented member that it
|
|
||||||
# reimplements.
|
|
||||||
|
|
||||||
INHERIT_DOCS = YES
|
|
||||||
|
|
||||||
# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
|
# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
|
||||||
# is inserted in the documentation for inline members.
|
# is inserted in the documentation for inline members.
|
||||||
|
|
||||||
@ -199,17 +279,22 @@ INLINE_INFO = YES
|
|||||||
|
|
||||||
SORT_MEMBER_DOCS = YES
|
SORT_MEMBER_DOCS = YES
|
||||||
|
|
||||||
# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
|
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
|
||||||
# tag is set to YES, then doxygen will reuse the documentation of the first
|
# brief documentation of file, namespace and class members alphabetically
|
||||||
# member in the group (if any) for the other members of the group. By default
|
# by member name. If set to NO (the default) the members will appear in
|
||||||
# all members of a group must be documented explicitly.
|
# declaration order.
|
||||||
|
|
||||||
DISTRIBUTE_GROUP_DOC = NO
|
SORT_BRIEF_DOCS = NO
|
||||||
|
|
||||||
# The TAB_SIZE tag can be used to set the number of spaces in a tab.
|
# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
|
||||||
# Doxygen uses this value to replace tabs by spaces in code fragments.
|
# sorted by fully-qualified names, including namespaces. If set to
|
||||||
|
# NO (the default), the class list will be sorted only by class name,
|
||||||
|
# not including the namespace part.
|
||||||
|
# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
|
||||||
|
# Note: This option applies only to the class list, not to the
|
||||||
|
# alphabetical list.
|
||||||
|
|
||||||
TAB_SIZE = 8
|
SORT_BY_SCOPE_NAME = NO
|
||||||
|
|
||||||
# The GENERATE_TODOLIST tag can be used to enable (YES) or
|
# The GENERATE_TODOLIST tag can be used to enable (YES) or
|
||||||
# disable (NO) the todo list. This list is created by putting \todo
|
# disable (NO) the todo list. This list is created by putting \todo
|
||||||
@ -229,14 +314,11 @@ GENERATE_TESTLIST = YES
|
|||||||
|
|
||||||
GENERATE_BUGLIST = YES
|
GENERATE_BUGLIST = YES
|
||||||
|
|
||||||
# This tag can be used to specify a number of aliases that acts
|
# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
|
||||||
# as commands in the documentation. An alias has the form "name=value".
|
# disable (NO) the deprecated list. This list is created by putting
|
||||||
# For example adding "sideeffect=\par Side Effects:\n" will allow you to
|
# \deprecated commands in the documentation.
|
||||||
# put the command \sideeffect (or @sideeffect) in the documentation, which
|
|
||||||
# will result in a user defined paragraph with heading "Side Effects:".
|
|
||||||
# You can put \n's in the value part of an alias to insert newlines.
|
|
||||||
|
|
||||||
ALIASES =
|
GENERATE_DEPRECATEDLIST= YES
|
||||||
|
|
||||||
# The ENABLED_SECTIONS tag can be used to enable conditional
|
# The ENABLED_SECTIONS tag can be used to enable conditional
|
||||||
# documentation sections, marked by \if sectionname ... \endif.
|
# documentation sections, marked by \if sectionname ... \endif.
|
||||||
@ -244,28 +326,14 @@ ALIASES =
|
|||||||
ENABLED_SECTIONS =
|
ENABLED_SECTIONS =
|
||||||
|
|
||||||
# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
|
# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
|
||||||
# the initial value of a variable or define consist of for it to appear in
|
# the initial value of a variable or define consists of for it to appear in
|
||||||
# the documentation. If the initializer consists of more lines than specified
|
# the documentation. If the initializer consists of more lines than specified
|
||||||
# here it will be hidden. Use a value of 0 to hide initializers completely.
|
# here it will be hidden. Use a value of 0 to hide initializers completely.
|
||||||
# The appearance of the initializer of individual variables and defines in the
|
# The appearance of the initializer of individual variables and defines in the
|
||||||
# documentation can be controlled using \showinitializer or \hideinitializer
|
# documentation can be controlled using \showinitializer or \hideinitializer
|
||||||
# command in the documentation regardless of this setting.
|
# command in the documentation regardless of this setting.
|
||||||
|
|
||||||
MAX_INITIALIZER_LINES =
|
MAX_INITIALIZER_LINES = 30
|
||||||
|
|
||||||
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
|
|
||||||
# only. Doxygen will then generate output that is more tailored for C.
|
|
||||||
# For instance some of the names that are used will be different. The list
|
|
||||||
# of all members will be omitted, etc.
|
|
||||||
|
|
||||||
OPTIMIZE_OUTPUT_FOR_C = NO
|
|
||||||
|
|
||||||
# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
|
|
||||||
# only. Doxygen will then generate output that is more tailored for Java.
|
|
||||||
# For instance namespaces will be presented as packages, qualified scopes
|
|
||||||
# will look different, etc.
|
|
||||||
|
|
||||||
OPTIMIZE_OUTPUT_JAVA = NO
|
|
||||||
|
|
||||||
# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
|
# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
|
||||||
# at the bottom of the documentation of classes and structs. If set to YES the
|
# at the bottom of the documentation of classes and structs. If set to YES the
|
||||||
@ -294,6 +362,13 @@ WARNINGS = YES
|
|||||||
|
|
||||||
WARN_IF_UNDOCUMENTED = YES
|
WARN_IF_UNDOCUMENTED = YES
|
||||||
|
|
||||||
|
# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
|
||||||
|
# potential errors in the documentation, such as not documenting some
|
||||||
|
# parameters in a documented function, or documenting parameters that
|
||||||
|
# don't exist or using markup commands wrongly.
|
||||||
|
|
||||||
|
WARN_IF_DOC_ERROR = YES
|
||||||
|
|
||||||
# The WARN_FORMAT tag determines the format of the warning messages that
|
# The WARN_FORMAT tag determines the format of the warning messages that
|
||||||
# doxygen can produce. The string should contain the $file, $line, and $text
|
# doxygen can produce. The string should contain the $file, $line, and $text
|
||||||
# tags, which will be replaced by the file and line number from which the
|
# tags, which will be replaced by the file and line number from which the
|
||||||
@ -334,7 +409,7 @@ INPUT = $(OSGHOME)/include/osg \
|
|||||||
# and *.h) to filter out the source-files in the directories. If left
|
# and *.h) to filter out the source-files in the directories. If left
|
||||||
# blank the following patterns are tested:
|
# blank the following patterns are tested:
|
||||||
# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
|
# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
|
||||||
# *.h++ *.idl *.odl
|
# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
|
||||||
|
|
||||||
FILE_PATTERNS = *include* \
|
FILE_PATTERNS = *include* \
|
||||||
*.cpp
|
*.cpp
|
||||||
@ -399,7 +474,7 @@ INPUT_FILTER =
|
|||||||
|
|
||||||
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
|
# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
|
||||||
# INPUT_FILTER) will be used to filter the input files when producing source
|
# INPUT_FILTER) will be used to filter the input files when producing source
|
||||||
# files to browse.
|
# files to browse (i.e. when SOURCE_BROWSER is set to YES).
|
||||||
|
|
||||||
FILTER_SOURCE_FILES = NO
|
FILTER_SOURCE_FILES = NO
|
||||||
|
|
||||||
@ -408,7 +483,9 @@ FILTER_SOURCE_FILES = NO
|
|||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# If the SOURCE_BROWSER tag is set to YES then a list of source files will
|
# If the SOURCE_BROWSER tag is set to YES then a list of source files will
|
||||||
# be generated. Documented entities will be cross-referenced with these sources.
|
# be generated. Documented entities will be cross-referenced with these sources.
|
||||||
|
# Note: To get rid of all source code in the generated output, make sure also
|
||||||
|
# VERBATIM_HEADERS is set to NO.
|
||||||
|
|
||||||
SOURCE_BROWSER = NO
|
SOURCE_BROWSER = NO
|
||||||
|
|
||||||
@ -417,6 +494,12 @@ SOURCE_BROWSER = NO
|
|||||||
|
|
||||||
INLINE_SOURCES = NO
|
INLINE_SOURCES = NO
|
||||||
|
|
||||||
|
# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
|
||||||
|
# doxygen to hide any special comment blocks from generated source code
|
||||||
|
# fragments. Normal C and C++ comments will always remain visible.
|
||||||
|
|
||||||
|
STRIP_CODE_COMMENTS = YES
|
||||||
|
|
||||||
# If the REFERENCED_BY_RELATION tag is set to YES (the default)
|
# If the REFERENCED_BY_RELATION tag is set to YES (the default)
|
||||||
# then for each documented function all documented
|
# then for each documented function all documented
|
||||||
# functions referencing it will be listed.
|
# functions referencing it will be listed.
|
||||||
@ -429,6 +512,12 @@ REFERENCED_BY_RELATION = YES
|
|||||||
|
|
||||||
REFERENCES_RELATION = YES
|
REFERENCES_RELATION = YES
|
||||||
|
|
||||||
|
# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
|
||||||
|
# will generate a verbatim copy of the header file for each class for
|
||||||
|
# which an include is specified. Set to NO to disable this.
|
||||||
|
|
||||||
|
VERBATIM_HEADERS = YES
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# configuration options related to the alphabetical class index
|
# configuration options related to the alphabetical class index
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
@ -485,10 +574,12 @@ HTML_HEADER =
|
|||||||
|
|
||||||
HTML_FOOTER = $(OSGHOME)/doc/Doxyfiles/custom_Footer.html
|
HTML_FOOTER = $(OSGHOME)/doc/Doxyfiles/custom_Footer.html
|
||||||
|
|
||||||
# The HTML_STYLESHEET tag can be used to specify a user defined cascading
|
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
|
||||||
# style sheet that is used by each HTML page. It can be used to
|
# style sheet that is used by each HTML page. It can be used to
|
||||||
# fine-tune the look of the HTML output. If the tag is left blank doxygen
|
# fine-tune the look of the HTML output. If the tag is left blank doxygen
|
||||||
# will generate a default style sheet
|
# will generate a default style sheet. Note that doxygen will try to copy
|
||||||
|
# the style sheet file to the HTML output directory, so don't put your own
|
||||||
|
# stylesheet in the HTML output directory as well, or it will be erased!
|
||||||
|
|
||||||
HTML_STYLESHEET =
|
HTML_STYLESHEET =
|
||||||
|
|
||||||
@ -505,6 +596,20 @@ HTML_ALIGN_MEMBERS = YES
|
|||||||
|
|
||||||
GENERATE_HTMLHELP = NO
|
GENERATE_HTMLHELP = NO
|
||||||
|
|
||||||
|
# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
|
||||||
|
# be used to specify the file name of the resulting .chm file. You
|
||||||
|
# can add a path in front of the file if the result should not be
|
||||||
|
# written to the html output directory.
|
||||||
|
|
||||||
|
CHM_FILE =
|
||||||
|
|
||||||
|
# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
|
||||||
|
# be used to specify the location (absolute path including file name) of
|
||||||
|
# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
|
||||||
|
# the HTML help compiler on the generated index.hhp.
|
||||||
|
|
||||||
|
HHC_LOCATION =
|
||||||
|
|
||||||
# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
|
# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
|
||||||
# controls if a separate .chi index file is generated (YES) or that
|
# controls if a separate .chi index file is generated (YES) or that
|
||||||
# it should be included in the master .chm file (NO).
|
# it should be included in the master .chm file (NO).
|
||||||
@ -518,7 +623,7 @@ GENERATE_CHI = NO
|
|||||||
BINARY_TOC = NO
|
BINARY_TOC = NO
|
||||||
|
|
||||||
# The TOC_EXPAND flag can be set to YES to add extra items for group members
|
# The TOC_EXPAND flag can be set to YES to add extra items for group members
|
||||||
# to the contents of the Html help documentation and to the tree view.
|
# to the contents of the HTML help documentation and to the tree view.
|
||||||
|
|
||||||
TOC_EXPAND = NO
|
TOC_EXPAND = NO
|
||||||
|
|
||||||
@ -531,15 +636,14 @@ DISABLE_INDEX = NO
|
|||||||
# This tag can be used to set the number of enum values (range [1..20])
|
# This tag can be used to set the number of enum values (range [1..20])
|
||||||
# that doxygen will group on one line in the generated HTML documentation.
|
# that doxygen will group on one line in the generated HTML documentation.
|
||||||
|
|
||||||
ENUM_VALUES_PER_LINE =
|
ENUM_VALUES_PER_LINE = 4
|
||||||
|
|
||||||
# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
|
# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
|
||||||
# generated containing a tree-like index structure (just like the one that
|
# generated containing a tree-like index structure (just like the one that
|
||||||
# is generated for HTML Help). For this to work a browser that supports
|
# is generated for HTML Help). For this to work a browser that supports
|
||||||
# JavaScript and frames is required (for instance Mozilla, Netscape 4.0+,
|
# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
|
||||||
# or Internet explorer 4.0+). Note that for large projects the tree generation
|
# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
|
||||||
# can take a very long time. In such cases it is better to disable this feature.
|
# probably better off using the HTML help feature.
|
||||||
# Windows users are probably better off using the HTML help feature.
|
|
||||||
|
|
||||||
GENERATE_TREEVIEW = NO
|
GENERATE_TREEVIEW = NO
|
||||||
|
|
||||||
@ -547,7 +651,7 @@ GENERATE_TREEVIEW = NO
|
|||||||
# used to set the initial width (in pixels) of the frame in which the tree
|
# used to set the initial width (in pixels) of the frame in which the tree
|
||||||
# is shown.
|
# is shown.
|
||||||
|
|
||||||
TREEVIEW_WIDTH =
|
TREEVIEW_WIDTH = 250
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# configuration options related to the LaTeX output
|
# configuration options related to the LaTeX output
|
||||||
@ -564,7 +668,8 @@ GENERATE_LATEX = NO
|
|||||||
|
|
||||||
LATEX_OUTPUT = latex
|
LATEX_OUTPUT = latex
|
||||||
|
|
||||||
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be invoked. If left blank `latex' will be used as the default command name.
|
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
|
||||||
|
# invoked. If left blank `latex' will be used as the default command name.
|
||||||
|
|
||||||
LATEX_CMD_NAME = latex
|
LATEX_CMD_NAME = latex
|
||||||
|
|
||||||
@ -618,12 +723,18 @@ USE_PDFLATEX = NO
|
|||||||
|
|
||||||
LATEX_BATCHMODE = NO
|
LATEX_BATCHMODE = NO
|
||||||
|
|
||||||
|
# If LATEX_HIDE_INDICES is set to YES then doxygen will not
|
||||||
|
# include the index chapters (such as File Index, Compound Index, etc.)
|
||||||
|
# in the output.
|
||||||
|
|
||||||
|
LATEX_HIDE_INDICES = NO
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# configuration options related to the RTF output
|
# configuration options related to the RTF output
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
|
# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
|
||||||
# The RTF output is optimised for Word 97 and may not look very pretty with
|
# The RTF output is optimized for Word 97 and may not look very pretty with
|
||||||
# other RTF readers or editors.
|
# other RTF readers or editors.
|
||||||
|
|
||||||
GENERATE_RTF = NO
|
GENERATE_RTF = NO
|
||||||
@ -650,7 +761,7 @@ COMPACT_RTF = NO
|
|||||||
RTF_HYPERLINKS = NO
|
RTF_HYPERLINKS = NO
|
||||||
|
|
||||||
# Load stylesheet definitions from file. Syntax is similar to doxygen's
|
# Load stylesheet definitions from file. Syntax is similar to doxygen's
|
||||||
# config file, i.e. a series of assigments. You only have to provide
|
# config file, i.e. a series of assignments. You only have to provide
|
||||||
# replacements, missing definitions are set to their default value.
|
# replacements, missing definitions are set to their default value.
|
||||||
|
|
||||||
RTF_STYLESHEET_FILE =
|
RTF_STYLESHEET_FILE =
|
||||||
@ -694,12 +805,35 @@ MAN_LINKS = NO
|
|||||||
|
|
||||||
# If the GENERATE_XML tag is set to YES Doxygen will
|
# If the GENERATE_XML tag is set to YES Doxygen will
|
||||||
# generate an XML file that captures the structure of
|
# generate an XML file that captures the structure of
|
||||||
# the code including all documentation. Note that this
|
# the code including all documentation.
|
||||||
# feature is still experimental and incomplete at the
|
|
||||||
# moment.
|
|
||||||
|
|
||||||
GENERATE_XML = NO
|
GENERATE_XML = NO
|
||||||
|
|
||||||
|
# The XML_OUTPUT tag is used to specify where the XML pages will be put.
|
||||||
|
# If a relative path is entered the value of OUTPUT_DIRECTORY will be
|
||||||
|
# put in front of it. If left blank `xml' will be used as the default path.
|
||||||
|
|
||||||
|
XML_OUTPUT = xml
|
||||||
|
|
||||||
|
# The XML_SCHEMA tag can be used to specify an XML schema,
|
||||||
|
# which can be used by a validating XML parser to check the
|
||||||
|
# syntax of the XML files.
|
||||||
|
|
||||||
|
XML_SCHEMA =
|
||||||
|
|
||||||
|
# The XML_DTD tag can be used to specify an XML DTD,
|
||||||
|
# which can be used by a validating XML parser to check the
|
||||||
|
# syntax of the XML files.
|
||||||
|
|
||||||
|
XML_DTD =
|
||||||
|
|
||||||
|
# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
|
||||||
|
# dump the program listings (including syntax highlighting
|
||||||
|
# and cross-referencing information) to the XML output. Note that
|
||||||
|
# enabling this will significantly increase the size of the XML output.
|
||||||
|
|
||||||
|
XML_PROGRAMLISTING = YES
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# configuration options for the AutoGen Definitions output
|
# configuration options for the AutoGen Definitions output
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
@ -712,6 +846,39 @@ GENERATE_XML = NO
|
|||||||
|
|
||||||
GENERATE_AUTOGEN_DEF = NO
|
GENERATE_AUTOGEN_DEF = NO
|
||||||
|
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# configuration options related to the Perl module output
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# If the GENERATE_PERLMOD tag is set to YES Doxygen will
|
||||||
|
# generate a Perl module file that captures the structure of
|
||||||
|
# the code including all documentation. Note that this
|
||||||
|
# feature is still experimental and incomplete at the
|
||||||
|
# moment.
|
||||||
|
|
||||||
|
GENERATE_PERLMOD = NO
|
||||||
|
|
||||||
|
# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
|
||||||
|
# the necessary Makefile rules, Perl scripts and LaTeX code to be able
|
||||||
|
# to generate PDF and DVI output from the Perl module output.
|
||||||
|
|
||||||
|
PERLMOD_LATEX = NO
|
||||||
|
|
||||||
|
# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
|
||||||
|
# nicely formatted so it can be parsed by a human reader. This is useful
|
||||||
|
# if you want to understand what is going on. On the other hand, if this
|
||||||
|
# tag is set to NO the size of the Perl module output will be much smaller
|
||||||
|
# and Perl will parse it just the same.
|
||||||
|
|
||||||
|
PERLMOD_PRETTY = YES
|
||||||
|
|
||||||
|
# The names of the make variables in the generated doxyrules.make file
|
||||||
|
# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
|
||||||
|
# This is useful so different doxyrules.make files included by the same
|
||||||
|
# Makefile don't overwrite each other's variables.
|
||||||
|
|
||||||
|
PERLMOD_MAKEVAR_PREFIX =
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# Configuration options related to the preprocessor
|
# Configuration options related to the preprocessor
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
@ -761,7 +928,7 @@ INCLUDE_FILE_PATTERNS =
|
|||||||
|
|
||||||
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
|
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
|
||||||
|
|
||||||
# If the MACRO_EXPANSION and EXPAND_PREDEF_ONLY tags are set to YES then
|
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
|
||||||
# this tag can be used to specify a list of macro names that should be expanded.
|
# this tag can be used to specify a list of macro names that should be expanded.
|
||||||
# The macro definition that is found in the sources will be used.
|
# The macro definition that is found in the sources will be used.
|
||||||
# Use the PREDEFINED tag if you want to use a different macro definition.
|
# Use the PREDEFINED tag if you want to use a different macro definition.
|
||||||
@ -770,16 +937,30 @@ EXPAND_AS_DEFINED =
|
|||||||
|
|
||||||
# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
|
# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
|
||||||
# doxygen's preprocessor will remove all function-like macros that are alone
|
# doxygen's preprocessor will remove all function-like macros that are alone
|
||||||
# on a line and do not end with a semicolon. Such function macros are typically
|
# on a line, have an all uppercase name, and do not end with a semicolon. Such
|
||||||
# used for boiler-plate code, and will confuse the parser if not removed.
|
# function macros are typically used for boiler-plate code, and will confuse the
|
||||||
|
# parser if not removed.
|
||||||
|
|
||||||
SKIP_FUNCTION_MACROS = YES
|
SKIP_FUNCTION_MACROS = YES
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# Configuration::addtions related to external references
|
# Configuration::additions related to external references
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# The TAGFILES tag can be used to specify one or more tagfiles.
|
# The TAGFILES option can be used to specify one or more tagfiles.
|
||||||
|
# Optionally an initial location of the external documentation
|
||||||
|
# can be added for each tagfile. The format of a tag file without
|
||||||
|
# this location is as follows:
|
||||||
|
# TAGFILES = file1 file2 ...
|
||||||
|
# Adding location for the tag files is done as follows:
|
||||||
|
# TAGFILES = file1=loc1 "file2 = loc2" ...
|
||||||
|
# where "loc1" and "loc2" can be relative or absolute paths or
|
||||||
|
# URLs. If a location is present for each tag, the installdox tool
|
||||||
|
# does not have to be run to correct the links.
|
||||||
|
# Note that each tag file must have a unique name
|
||||||
|
# (where the name does NOT include the path)
|
||||||
|
# If a tag file is not located in the directory in which doxygen
|
||||||
|
# is run, you must also specify the path to the tagfile here.
|
||||||
|
|
||||||
TAGFILES =
|
TAGFILES =
|
||||||
|
|
||||||
@ -810,10 +991,10 @@ PERL_PATH = /usr/bin/perl
|
|||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
|
# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
|
||||||
# generate a inheritance diagram (in Html, RTF and LaTeX) for classes with base or
|
# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
|
||||||
# super classes. Setting the tag to NO turns the diagrams off. Note that this
|
# super classes. Setting the tag to NO turns the diagrams off. Note that this
|
||||||
# option is superceded by the HAVE_DOT option below. This is only a fallback. It is
|
# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
|
||||||
# recommended to install and use dot, since it yield more powerful graphs.
|
# recommended to install and use dot, since it yields more powerful graphs.
|
||||||
|
|
||||||
CLASS_DIAGRAMS = YES
|
CLASS_DIAGRAMS = YES
|
||||||
|
|
||||||
@ -844,6 +1025,12 @@ CLASS_GRAPH = YES
|
|||||||
|
|
||||||
COLLABORATION_GRAPH = NO
|
COLLABORATION_GRAPH = NO
|
||||||
|
|
||||||
|
# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
|
||||||
|
# collaboration diagrams in a style similar to the OMG's Unified Modeling
|
||||||
|
# Language.
|
||||||
|
|
||||||
|
UML_LOOK = NO
|
||||||
|
|
||||||
# If set to YES, the inheritance and collaboration graphs will show the
|
# If set to YES, the inheritance and collaboration graphs will show the
|
||||||
# relations between templates and their instances.
|
# relations between templates and their instances.
|
||||||
|
|
||||||
@ -863,6 +1050,14 @@ INCLUDE_GRAPH = NO
|
|||||||
|
|
||||||
INCLUDED_BY_GRAPH = NO
|
INCLUDED_BY_GRAPH = NO
|
||||||
|
|
||||||
|
# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
|
||||||
|
# generate a call dependency graph for every global function or class method.
|
||||||
|
# Note that enabling this option will significantly increase the time of a run.
|
||||||
|
# So in most cases it will be better to enable call graphs for selected
|
||||||
|
# functions only using the \callgraph command.
|
||||||
|
|
||||||
|
CALL_GRAPH = NO
|
||||||
|
|
||||||
# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
|
# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
|
||||||
# will graphical hierarchy of all classes instead of a textual one.
|
# will graphical hierarchy of all classes instead of a textual one.
|
||||||
|
|
||||||
@ -901,6 +1096,17 @@ MAX_DOT_GRAPH_WIDTH = 1024
|
|||||||
|
|
||||||
MAX_DOT_GRAPH_HEIGHT = 1024
|
MAX_DOT_GRAPH_HEIGHT = 1024
|
||||||
|
|
||||||
|
# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
|
||||||
|
# graphs generated by dot. A depth value of 3 means that only nodes reachable
|
||||||
|
# from the root by following a path via at most 3 edges will be shown. Nodes that
|
||||||
|
# lay further from the root node will be omitted. Note that setting this option to
|
||||||
|
# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
|
||||||
|
# note that a graph may be further truncated if the graph's image dimensions are
|
||||||
|
# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
|
||||||
|
# If 0 is used for the depth value (the default), the graph is not depth-constrained.
|
||||||
|
|
||||||
|
MAX_DOT_GRAPH_DEPTH = 0
|
||||||
|
|
||||||
# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
|
# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
|
||||||
# generate a legend page explaining the meaning of the various boxes and
|
# generate a legend page explaining the meaning of the various boxes and
|
||||||
# arrows in the dot generated graphs.
|
# arrows in the dot generated graphs.
|
||||||
@ -908,51 +1114,16 @@ MAX_DOT_GRAPH_HEIGHT = 1024
|
|||||||
GENERATE_LEGEND = YES
|
GENERATE_LEGEND = YES
|
||||||
|
|
||||||
# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
|
# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
|
||||||
# remove the intermedate dot files that are used to generate
|
# remove the intermediate dot files that are used to generate
|
||||||
# the various graphs.
|
# the various graphs.
|
||||||
|
|
||||||
DOT_CLEANUP = YES
|
DOT_CLEANUP = YES
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# Configuration::addtions related to the search engine
|
# Configuration::additions related to the search engine
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
# The SEARCHENGINE tag specifies whether or not a search engine should be
|
# The SEARCHENGINE tag specifies whether or not a search engine should be
|
||||||
# used. If set to NO the values of all tags below this one will be ignored.
|
# used. If set to NO the values of all tags below this one will be ignored.
|
||||||
|
|
||||||
SEARCHENGINE = NO
|
SEARCHENGINE = NO
|
||||||
|
|
||||||
# The CGI_NAME tag should be the name of the CGI script that
|
|
||||||
# starts the search engine (doxysearch) with the correct parameters.
|
|
||||||
# A script with this name will be generated by doxygen.
|
|
||||||
|
|
||||||
CGI_NAME = search.cgi
|
|
||||||
|
|
||||||
# The CGI_URL tag should be the absolute URL to the directory where the
|
|
||||||
# cgi binaries are located. See the documentation of your http daemon for
|
|
||||||
# details.
|
|
||||||
|
|
||||||
CGI_URL =
|
|
||||||
|
|
||||||
# The DOC_URL tag should be the absolute URL to the directory where the
|
|
||||||
# documentation is located. If left blank the absolute path to the
|
|
||||||
# documentation, with file:// prepended to it, will be used.
|
|
||||||
|
|
||||||
DOC_URL =
|
|
||||||
|
|
||||||
# The DOC_ABSPATH tag should be the absolute path to the directory where the
|
|
||||||
# documentation is located. If left blank the directory on the local machine
|
|
||||||
# will be used.
|
|
||||||
|
|
||||||
DOC_ABSPATH =
|
|
||||||
|
|
||||||
# The BIN_ABSPATH tag must point to the directory where the doxysearch binary
|
|
||||||
# is installed.
|
|
||||||
|
|
||||||
BIN_ABSPATH = /usr/local/bin/
|
|
||||||
|
|
||||||
# The EXT_DOC_PATHS tag can be used to specify one or more paths to
|
|
||||||
# documentation generated for other projects. This allows doxysearch to search
|
|
||||||
# the documentation for these projects as well.
|
|
||||||
|
|
||||||
EXT_DOC_PATHS =
|
|
||||||
|
@ -18,8 +18,11 @@
|
|||||||
#include <osg/ShadowVolumeOccluder>
|
#include <osg/ShadowVolumeOccluder>
|
||||||
#include <osg/Referenced>
|
#include <osg/Referenced>
|
||||||
|
|
||||||
|
|
||||||
namespace osg {
|
namespace osg {
|
||||||
|
|
||||||
|
#define COMPILE_WITH_SHADOW_OCCLUSION_CULLING
|
||||||
|
|
||||||
/** A CullingSet class which contains a frustum and a list of occluders. */
|
/** A CullingSet class which contains a frustum and a list of occluders. */
|
||||||
class SG_EXPORT CullingSet : public Referenced
|
class SG_EXPORT CullingSet : public Referenced
|
||||||
{
|
{
|
||||||
@ -222,7 +225,7 @@ class SG_EXPORT CullingSet : public Referenced
|
|||||||
{
|
{
|
||||||
if (((bs.center()*_pixelSizeVector)*_smallFeatureCullingPixelSize)>bs.radius()) return true;
|
if (((bs.center()*_pixelSizeVector)*_smallFeatureCullingPixelSize)>bs.radius()) return true;
|
||||||
}
|
}
|
||||||
|
#ifdef COMPILE_WITH_SHADOW_OCCLUSION_CULLING
|
||||||
if (_mask&SHADOW_OCCLUSION_CULLING)
|
if (_mask&SHADOW_OCCLUSION_CULLING)
|
||||||
{
|
{
|
||||||
// is it in one of the shadow occluder volumes.
|
// is it in one of the shadow occluder volumes.
|
||||||
@ -236,7 +239,7 @@ class SG_EXPORT CullingSet : public Referenced
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -244,6 +247,7 @@ class SG_EXPORT CullingSet : public Referenced
|
|||||||
{
|
{
|
||||||
_frustum.pushCurrentMask();
|
_frustum.pushCurrentMask();
|
||||||
|
|
||||||
|
#ifdef COMPILE_WITH_SHADOW_OCCLUSION_CULLING
|
||||||
if (!_occluderList.empty())
|
if (!_occluderList.empty())
|
||||||
{
|
{
|
||||||
for(OccluderList::iterator itr=_occluderList.begin();
|
for(OccluderList::iterator itr=_occluderList.begin();
|
||||||
@ -253,12 +257,14 @@ class SG_EXPORT CullingSet : public Referenced
|
|||||||
itr->pushCurrentMask();
|
itr->pushCurrentMask();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void popCurrentMask()
|
inline void popCurrentMask()
|
||||||
{
|
{
|
||||||
_frustum.popCurrentMask();
|
_frustum.popCurrentMask();
|
||||||
|
|
||||||
|
#ifdef COMPILE_WITH_SHADOW_OCCLUSION_CULLING
|
||||||
if (!_occluderList.empty())
|
if (!_occluderList.empty())
|
||||||
{
|
{
|
||||||
for(OccluderList::iterator itr=_occluderList.begin();
|
for(OccluderList::iterator itr=_occluderList.begin();
|
||||||
@ -268,6 +274,7 @@ class SG_EXPORT CullingSet : public Referenced
|
|||||||
itr->popCurrentMask();
|
itr->popCurrentMask();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void disableAndPushOccludersCurrentMask(NodePath& nodePath);
|
void disableAndPushOccludersCurrentMask(NodePath& nodePath);
|
||||||
|
@ -24,8 +24,6 @@
|
|||||||
#ifndef OSG_PROGRAM
|
#ifndef OSG_PROGRAM
|
||||||
#define OSG_PROGRAM 1
|
#define OSG_PROGRAM 1
|
||||||
|
|
||||||
#include <osg/State>
|
|
||||||
#include <osg/StateAttribute>
|
|
||||||
#include <osg/buffered_value>
|
#include <osg/buffered_value>
|
||||||
#include <osg/ref_ptr>
|
#include <osg/ref_ptr>
|
||||||
#include <osg/Vec2>
|
#include <osg/Vec2>
|
||||||
@ -41,6 +39,8 @@
|
|||||||
|
|
||||||
namespace osg {
|
namespace osg {
|
||||||
|
|
||||||
|
class State;
|
||||||
|
|
||||||
class SG_EXPORT GL2Extensions : public osg::Referenced
|
class SG_EXPORT GL2Extensions : public osg::Referenced
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -312,7 +312,7 @@ typedef std::vector< ShaderPtr > ShaderList;
|
|||||||
* configuration.
|
* configuration.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class SG_EXPORT Program : public osg::StateAttribute
|
class SG_EXPORT Program : public osg::Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Program();
|
Program();
|
||||||
@ -320,10 +320,10 @@ class SG_EXPORT Program : public osg::StateAttribute
|
|||||||
/** Copy constructor using CopyOp to manage deep vs shallow copy.*/
|
/** Copy constructor using CopyOp to manage deep vs shallow copy.*/
|
||||||
Program(const Program& rhs, const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
|
Program(const Program& rhs, const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
|
||||||
|
|
||||||
META_StateAttribute(osg, Program, PROGRAM);
|
META_Object(osg, Program);
|
||||||
|
|
||||||
/** return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.*/
|
/** return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.*/
|
||||||
virtual int compare(const osg::StateAttribute& sa) const;
|
virtual int compare(const osg::Program& sa) const;
|
||||||
|
|
||||||
/** If enabled, activate our program in the GL pipeline,
|
/** If enabled, activate our program in the GL pipeline,
|
||||||
* performing any rebuild operations that might be pending. */
|
* performing any rebuild operations that might be pending. */
|
||||||
|
@ -38,7 +38,7 @@ namespace osg {
|
|||||||
* configuration.
|
* configuration.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class SG_EXPORT Shader : public osg::Referenced
|
class SG_EXPORT Shader : public osg::Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
@ -176,10 +176,6 @@ class SG_EXPORT StateAttribute : public Object
|
|||||||
REGISTER_COMBINERS,
|
REGISTER_COMBINERS,
|
||||||
// osgNVParse
|
// osgNVParse
|
||||||
PROGRAM_PARSER,
|
PROGRAM_PARSER,
|
||||||
|
|
||||||
/// core GLSL
|
|
||||||
PROGRAM,
|
|
||||||
UNIFORM,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Simple pairing between an attribute type and the member within that attribute type group.*/
|
/** Simple pairing between an attribute type and the member within that attribute type group.*/
|
||||||
|
@ -18,6 +18,10 @@
|
|||||||
#include <osg/StateAttribute>
|
#include <osg/StateAttribute>
|
||||||
#include <osg/ref_ptr>
|
#include <osg/ref_ptr>
|
||||||
|
|
||||||
|
#include <osg/Uniform>
|
||||||
|
#include <osg/Program>
|
||||||
|
|
||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <string>
|
#include <string>
|
||||||
@ -252,6 +256,56 @@ class SG_EXPORT StateSet : public Object
|
|||||||
|
|
||||||
void setAssociatedTextureModes(unsigned int unit,const StateAttribute* attribute, StateAttribute::GLModeValue value);
|
void setAssociatedTextureModes(unsigned int unit,const StateAttribute* attribute, StateAttribute::GLModeValue value);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/** Simple pairing between an attribute and its override flag.*/
|
||||||
|
typedef std::pair<ref_ptr<Uniform>,StateAttribute::OverrideValue> RefUniformPair;
|
||||||
|
|
||||||
|
/** a container to map <StateAttribyte::Types,Member> to their respective RefAttributePair.*/
|
||||||
|
typedef std::map<std::string,RefUniformPair> UniformList;
|
||||||
|
|
||||||
|
/** Set this StateSet to contain specified uniform and override flag.*/
|
||||||
|
void setUniform(Uniform* uniform, StateAttribute::OverrideValue value=StateAttribute::OFF);
|
||||||
|
|
||||||
|
/** remove uniform of specified name from StateSet.*/
|
||||||
|
void removeUniform(const std::string& name);
|
||||||
|
|
||||||
|
/** remove attribute from StateSet.*/
|
||||||
|
void removeUniform(Uniform* attribute);
|
||||||
|
|
||||||
|
/** Get Uniform for specified name.
|
||||||
|
* Returns NULL if no matching uniform is contained within StateSet.*/
|
||||||
|
Uniform* getUniform(const std::string& name);
|
||||||
|
|
||||||
|
/** Get const Uniform for specified name.
|
||||||
|
* Returns NULL if no matching uniform is contained within StateSet.*/
|
||||||
|
const Uniform* getUniform(const std::string& name) const;
|
||||||
|
|
||||||
|
/** Get specified RefUniformPair for specified type.
|
||||||
|
* Returns NULL if no type is contained within StateSet.*/
|
||||||
|
const RefUniformPair* getUniformPair(const std::string& name) const;
|
||||||
|
|
||||||
|
/** set the list of all Uniforms contained in this StateSet.*/
|
||||||
|
inline void setUniformList(UniformList& al) { _uniformList=al; }
|
||||||
|
|
||||||
|
/** return the list of all Uniforms contained in this StateSet.*/
|
||||||
|
inline UniformList& getUniformList() { return _uniformList; }
|
||||||
|
|
||||||
|
/** return the const list of all Uniforms contained in this const StateSet.*/
|
||||||
|
inline const UniformList& getUniformList() const { return _uniformList; }
|
||||||
|
|
||||||
|
|
||||||
|
void setProgram(Program* program) { _program = program; }
|
||||||
|
|
||||||
|
Program* getProgram() { return _program.get(); }
|
||||||
|
|
||||||
|
const Program* getProgram() const { return _program.get(); }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
enum RenderingHint
|
enum RenderingHint
|
||||||
{
|
{
|
||||||
DEFAULT_BIN = 0,
|
DEFAULT_BIN = 0,
|
||||||
@ -330,6 +384,9 @@ class SG_EXPORT StateSet : public Object
|
|||||||
TextureModeList _textureModeList;
|
TextureModeList _textureModeList;
|
||||||
TextureAttributeList _textureAttributeList;
|
TextureAttributeList _textureAttributeList;
|
||||||
|
|
||||||
|
UniformList _uniformList;
|
||||||
|
osg::ref_ptr<osg::Program> _program;
|
||||||
|
|
||||||
inline ModeList& getOrCreateTextureModeList(unsigned int unit)
|
inline ModeList& getOrCreateTextureModeList(unsigned int unit)
|
||||||
{
|
{
|
||||||
if (unit>=_textureModeList.size()) _textureModeList.resize(unit+1);
|
if (unit>=_textureModeList.size()) _textureModeList.resize(unit+1);
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
#include <osg/Vec3>
|
#include <osg/Vec3>
|
||||||
#include <osg/Vec4>
|
#include <osg/Vec4>
|
||||||
#include <osg/Matrix>
|
#include <osg/Matrix>
|
||||||
#include <osg/StateAttribute>
|
#include <osg/GL>
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
@ -127,9 +127,9 @@ typedef char GLchar;
|
|||||||
namespace osg {
|
namespace osg {
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
/** Uniform is an osg::StateAttribute to encapsulate glUniform values */
|
/** Uniform encapsulates glUniform values */
|
||||||
|
|
||||||
class SG_EXPORT Uniform : public StateAttribute
|
class SG_EXPORT Uniform : public Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
class Value
|
class Value
|
||||||
@ -146,7 +146,7 @@ class SG_EXPORT Uniform : public StateAttribute
|
|||||||
INT_VEC4 = GL_INT_VEC4,
|
INT_VEC4 = GL_INT_VEC4,
|
||||||
BOOL = GL_BOOL,
|
BOOL = GL_BOOL,
|
||||||
BOOL_VEC2 = GL_BOOL_VEC2,
|
BOOL_VEC2 = GL_BOOL_VEC2,
|
||||||
BOOL_VEC3 = GL_BOOL_VEC3,
|
BOOL_VEC3 = GL_BOOL_VEC3,
|
||||||
BOOL_VEC4 = GL_BOOL_VEC4,
|
BOOL_VEC4 = GL_BOOL_VEC4,
|
||||||
FLOAT_MAT2 = GL_FLOAT_MAT2,
|
FLOAT_MAT2 = GL_FLOAT_MAT2,
|
||||||
FLOAT_MAT3 = GL_FLOAT_MAT3,
|
FLOAT_MAT3 = GL_FLOAT_MAT3,
|
||||||
@ -162,6 +162,7 @@ class SG_EXPORT Uniform : public StateAttribute
|
|||||||
|
|
||||||
Value( const char* name, Type type );
|
Value( const char* name, Type type );
|
||||||
Value( const Value& rhs );
|
Value( const Value& rhs );
|
||||||
|
|
||||||
|
|
||||||
/** Get the name of glUniform. */
|
/** Get the name of glUniform. */
|
||||||
const std::string& getName() const { return _name; }
|
const std::string& getName() const { return _name; }
|
||||||
@ -249,19 +250,21 @@ class SG_EXPORT Uniform : public StateAttribute
|
|||||||
/** Copy constructor using CopyOp to manage deep vs shallow copy. */
|
/** Copy constructor using CopyOp to manage deep vs shallow copy. */
|
||||||
Uniform(const Uniform& gu,const CopyOp& copyop=CopyOp::SHALLOW_COPY);
|
Uniform(const Uniform& gu,const CopyOp& copyop=CopyOp::SHALLOW_COPY);
|
||||||
|
|
||||||
META_StateAttribute(osg, Uniform, UNIFORM);
|
META_Object(osg, Uniform);
|
||||||
|
|
||||||
/** return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. */
|
/** return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. */
|
||||||
virtual int compare(const StateAttribute& sa) const
|
virtual int compare(const Uniform& rhs) const
|
||||||
{
|
{
|
||||||
// check if the types are equal and then create the rhs variable
|
|
||||||
// used by the COMPARE_StateAttribute_Parameter macros below.
|
|
||||||
COMPARE_StateAttribute_Types(Uniform,sa)
|
|
||||||
|
|
||||||
return _value.compare( rhs._value );
|
return _value.compare( rhs._value );
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void apply( State& state ) const;
|
bool operator < (const Uniform& rhs) const
|
||||||
|
{
|
||||||
|
if (_value.getName()<rhs._value.getName()) return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const std::string& getName() const { return _value.getName(); }
|
||||||
|
|
||||||
/** assignment */
|
/** assignment */
|
||||||
bool set( float f );
|
bool set( float f );
|
||||||
|
@ -1912,7 +1912,7 @@ Program::Program()
|
|||||||
|
|
||||||
|
|
||||||
Program::Program(const Program& rhs, const osg::CopyOp& copyop):
|
Program::Program(const Program& rhs, const osg::CopyOp& copyop):
|
||||||
osg::StateAttribute(rhs, copyop)
|
osg::Object(rhs, copyop)
|
||||||
{
|
{
|
||||||
osg::notify(osg::FATAL) << "how got here?" << std::endl;
|
osg::notify(osg::FATAL) << "how got here?" << std::endl;
|
||||||
}
|
}
|
||||||
@ -1932,7 +1932,7 @@ Program::~Program()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int Program::compare(const osg::StateAttribute& sa) const
|
int Program::compare(const osg::Program& sa) const
|
||||||
{
|
{
|
||||||
// check the types are equal and then create the rhs variable
|
// check the types are equal and then create the rhs variable
|
||||||
// used by the COMPARE_StateAttribute_Paramter macro's below.
|
// used by the COMPARE_StateAttribute_Paramter macro's below.
|
||||||
|
@ -55,8 +55,8 @@ Shader::Shader(Type type, const char* sourceText) :
|
|||||||
setShaderSource( sourceText );
|
setShaderSource( sourceText );
|
||||||
}
|
}
|
||||||
|
|
||||||
Shader::Shader(const Shader& rhs, const osg::CopyOp& /*copyop*/):
|
Shader::Shader(const Shader& rhs, const osg::CopyOp& copyop):
|
||||||
Referenced( rhs ),
|
Object( rhs, copyop ),
|
||||||
_type(rhs._type)
|
_type(rhs._type)
|
||||||
{
|
{
|
||||||
/*TODO*/
|
/*TODO*/
|
||||||
|
@ -281,6 +281,37 @@ int StateSet::compare(const StateSet& rhs,bool compareAttributeContents) const
|
|||||||
}
|
}
|
||||||
else if (rhs_mode_itr == rhs._modeList.end()) return 1;
|
else if (rhs_mode_itr == rhs._modeList.end()) return 1;
|
||||||
|
|
||||||
|
|
||||||
|
// check uniforms.
|
||||||
|
UniformList::const_iterator lhs_uniform_itr = _uniformList.begin();
|
||||||
|
UniformList::const_iterator rhs_uniform_itr = rhs._uniformList.begin();
|
||||||
|
while (lhs_uniform_itr!=_uniformList.end() && rhs_uniform_itr!=rhs._uniformList.end())
|
||||||
|
{
|
||||||
|
if (lhs_uniform_itr->first<rhs_uniform_itr->first) return -1;
|
||||||
|
else if (rhs_uniform_itr->first<lhs_uniform_itr->first) return 1;
|
||||||
|
if (lhs_uniform_itr->second<rhs_uniform_itr->second) return -1;
|
||||||
|
else if (rhs_uniform_itr->second<lhs_uniform_itr->second) return 1;
|
||||||
|
++lhs_uniform_itr;
|
||||||
|
++rhs_uniform_itr;
|
||||||
|
}
|
||||||
|
if (lhs_uniform_itr==_uniformList.end())
|
||||||
|
{
|
||||||
|
if (rhs_uniform_itr!=rhs._uniformList.end()) return -1;
|
||||||
|
}
|
||||||
|
else if (rhs_uniform_itr == rhs._uniformList.end()) return 1;
|
||||||
|
|
||||||
|
if (_program.valid())
|
||||||
|
{
|
||||||
|
if (rhs._program.valid())
|
||||||
|
{
|
||||||
|
int result = _program->compare(*rhs._program);
|
||||||
|
if (result!=0) return result;
|
||||||
|
}
|
||||||
|
else return 1;
|
||||||
|
}
|
||||||
|
else if (rhs._program.valid()) return -1;
|
||||||
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -631,6 +662,58 @@ const StateSet::RefAttributePair* StateSet::getAttributePair(StateAttribute::Typ
|
|||||||
return getAttributePair(_attributeList,type,member);
|
return getAttributePair(_attributeList,type,member);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void StateSet::setUniform(Uniform* uniform, StateAttribute::OverrideValue value)
|
||||||
|
{
|
||||||
|
if (uniform)
|
||||||
|
{
|
||||||
|
RefUniformPair& up = _uniformList[uniform->getName()];
|
||||||
|
up.first = uniform;
|
||||||
|
up.second = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void StateSet::removeUniform(const std::string& name)
|
||||||
|
{
|
||||||
|
UniformList::iterator itr = _uniformList.find(name);
|
||||||
|
if (itr!=_uniformList.end())
|
||||||
|
{
|
||||||
|
_uniformList.erase(itr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void StateSet::removeUniform(Uniform* uniform)
|
||||||
|
{
|
||||||
|
if (!uniform) return;
|
||||||
|
|
||||||
|
UniformList::iterator itr = _uniformList.find(uniform->getName());
|
||||||
|
if (itr!=_uniformList.end())
|
||||||
|
{
|
||||||
|
if (itr->second.first != uniform) return;
|
||||||
|
_uniformList.erase(itr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Uniform* StateSet::getUniform(const std::string& name)
|
||||||
|
{
|
||||||
|
UniformList::iterator itr = _uniformList.find(name);
|
||||||
|
if (itr!=_uniformList.end()) return itr->second.first.get();
|
||||||
|
else return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
const Uniform* StateSet::getUniform(const std::string& name) const
|
||||||
|
{
|
||||||
|
UniformList::const_iterator itr = _uniformList.find(name);
|
||||||
|
if (itr!=_uniformList.end()) return itr->second.first.get();
|
||||||
|
else return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
const StateSet::RefUniformPair* StateSet::getUniformPair(const std::string& name) const
|
||||||
|
{
|
||||||
|
UniformList::const_iterator itr = _uniformList.find(name);
|
||||||
|
if (itr!=_uniformList.end()) return &(itr->second);
|
||||||
|
else return 0;
|
||||||
|
}
|
||||||
|
|
||||||
void StateSet::setTextureMode(unsigned int unit,StateAttribute::GLMode mode, StateAttribute::GLModeValue value)
|
void StateSet::setTextureMode(unsigned int unit,StateAttribute::GLMode mode, StateAttribute::GLModeValue value)
|
||||||
{
|
{
|
||||||
if (s_textureGLModeSet.isTextureMode(mode))
|
if (s_textureGLModeSet.isTextureMode(mode))
|
||||||
|
@ -424,32 +424,12 @@ Uniform::Uniform( const char* name, int i ) :
|
|||||||
|
|
||||||
|
|
||||||
Uniform::Uniform( const Uniform& gu, const CopyOp& copyop ) :
|
Uniform::Uniform( const Uniform& gu, const CopyOp& copyop ) :
|
||||||
StateAttribute(gu,copyop),
|
Object(gu,copyop),
|
||||||
_value( gu._value )
|
_value( gu._value )
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void Uniform::apply( State& /*state*/ ) const
|
|
||||||
{
|
|
||||||
// The definition of apply() for Uniforms is unique among
|
|
||||||
// osg::StateAttributes...
|
|
||||||
// If a Program is not active, then cannot apply the uniform value,
|
|
||||||
// but must wait for a Program to do that itself later when it
|
|
||||||
// does become active.
|
|
||||||
// If a Program is active, then the Uniform may be applied
|
|
||||||
// immediately.
|
|
||||||
// something like...
|
|
||||||
//
|
|
||||||
// Program* program = state->getActiveProgram();
|
|
||||||
// if( program )
|
|
||||||
// {
|
|
||||||
// program->applyUniform( this );
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool Uniform::set( float f )
|
bool Uniform::set( float f )
|
||||||
{
|
{
|
||||||
if( ! isCompatibleType( Value::FLOAT ) ) return false;
|
if( ! isCompatibleType( Value::FLOAT ) ) return false;
|
||||||
|
@ -60,6 +60,5 @@ BEGIN_ENUM_REFLECTOR(osg::StateAttribute::Type)
|
|||||||
EnumLabel(osg::StateAttribute::TEXTURE_SHADER);
|
EnumLabel(osg::StateAttribute::TEXTURE_SHADER);
|
||||||
EnumLabel(osg::StateAttribute::VERTEX_PROGRAM);
|
EnumLabel(osg::StateAttribute::VERTEX_PROGRAM);
|
||||||
EnumLabel(osg::StateAttribute::REGISTER_COMBINERS);
|
EnumLabel(osg::StateAttribute::REGISTER_COMBINERS);
|
||||||
EnumLabel(osg::StateAttribute::PROGRAM);
|
|
||||||
EnumLabel(osg::StateAttribute::PROGRAM_PARSER);
|
EnumLabel(osg::StateAttribute::PROGRAM_PARSER);
|
||||||
END_REFLECTOR
|
END_REFLECTOR
|
||||||
|
Loading…
Reference in New Issue
Block a user