Local data storage methods used in the viewer

From Second Life Wiki
Revision as of 12:01, 17 June 2008 by Scalar Tardis (talk | contribs) (VFS: Where it is used in the viewer moved to Local data storage methods used in the viewer: This is becoming more than a list of references to the VFS. It is interesting to note how the client is evolving, and where the cross-platform APR library )
Jump to navigation Jump to search

This article is a work in progress.

Please do not edit.



This article is a work in progress.

Please do not edit.

Article purpose and notes

This page is intended to have two different purposes.

  • Document where the VFS is used in the viewer source
  • Provide a direction forward for removing/replacing the VFS


The following list of source references is based on viewer source released 1.19.1.4 in the SVN repository, and will need future updating as the viewer source continues to evolve:

This listing duplicates the layout and format of the Viewer Source Files page, providing a direct 1-to-1 correspondence with each section and source file. Although the source list only includes .cpp files, if a matching .h file is found it is listed here below the .cpp for that name. === Table column headings === Each column of the table refers to:

  • VFS - any reference to this keyward. "VFS" is not used in the code alone, and so is usually referring to comments in the source, or debugging/logging notes.
  • gVFS - the "general VFS" which is used for temporary storage for assets, in a private RAM-disk held in memory at all times. It is the primary limitation for allowing unlimited local asset caching in the viewer as currently designed. This needs to be removed and replaced with direct filesystem calls to folder-based storage.
  • gStaticVFS - a read-only VFS in "static_data.db2" and "static_index.db2". This contains the graphical elements and sounds of the Second Life user interface. It's only about 8 megabytes, but why does it have to be fully loaded in a virtual RAM-disk all the time using limited system memory? May be worthwhile to replace this with direct on-disk storage, perhaps in a ZIP file.
  • LLLFS - the "Local File System" procedures, used to directly read and write to the local OS storage. The audio manager for example uses LLLFS calls to write decoded OGG sounds as WAV files in the cache directory. LLLFS calls might be usable to replace the VFS as mentioned above.

VFS removal/replacement

As has been discussed in the sl-dev mailing list and in the JIRA, the VFS does not scale up very well at all since it functions as a private RAM-disk for non-texture assets downloaded by the viewer. The on-disk VFS files are used only for storage when the viewer is not running. At startup, the files are parsed for errors and loaded into memory, and continue to occupy memory until the viewer exits and the contents are written back to the disk files. As a RAM disk, increasing the cache size to larger than the available free memory causes the computer to run out of physical RAM and require the use of virtual memory and disk swapping. This is counterproductive when the intent of increasing the VFS size is to cache more of the frequently-used data to speed up the client and reduce network traffic. In order to permit the cache of assets currently stored in the VFS to grow to gigabytes of storage without requiring gigabytes of physical memory to store it, the existing VFS will have to be removed from the viewer and replaced with a traditional file/directory-based disk cache.

Need for lightweight asset obfuscation

In the interests of copyright protection, a directory-based non-texture asset cache should include some form of low-impact data obfuscation, to make it slightly difficult for the copyrighted works of other SL users held in the cache to be casually copied and examined. As has been discussed in SL-Dev, heavy and slow cache encryption would serve no purpose since a decryption tool can be easily built using the client source that would do the cache decrypting. So it's better to just use a simple and fast obfuscation technique which discourages casual asset theft.

General - Main and Startup

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llstartup.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llappviewer.cpp
X
X
X
X
LLVFS::no LLVFile::no apr_file::no
llappviewer.h
X
X
X
  LLVFS::no LLVFile::no apr_file::no

General - Window Management and Render Pipeline

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
pipeline.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerdisplay.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerprecompiledheaders.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerprecompiledheaders.h
X
      LLVFS::no LLVFile::no apr_file::no
llviewerwindow.cpp         LLVFS::no LLVFile::no apr_file::no
llwindebug.cpp         LLVFS::no LLVFile::no apr_file::no

General - Utility and Misc

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llbbox.cpp         LLVFS::no LLVFile::no apr_file::no
llbox.cpp         LLVFS::no LLVFile::no apr_file::no
llcallbacklist.cpp         LLVFS::no LLVFile::no apr_file::no
llcontroldef.cpp
X
      LLVFS::no LLVFile::no apr_file::no
lleventnotifier.cpp         LLVFS::no LLVFile::no apr_file::no
lleventpoll.cpp         LLVFS::no LLVFile::no apr_file::no
llhippo.cpp         LLVFS::no LLVFile::no apr_file::no
llregionposition.cpp         LLVFS::no LLVFile::no apr_file::no
moviemaker.cpp         LLVFS::no LLVFile::no apr_file::no
noise.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Asset Management

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llassetuploadresponders.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
lltexturecache.cpp      
X
LLVFS::no LLVFile::no apr_file::no
lltexturefetch.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerassetstorage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewerassetstorage.h
X
      LLVFS::no LLVFile::no apr_file::no
llwearable.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llwearablelist.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Character and Animation

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
lldriverparam.cpp         LLVFS::no LLVFile::no apr_file::no
llemote.cpp         LLVFS::no LLVFile::no apr_file::no
llviewergesture.cpp         LLVFS::no LLVFile::no apr_file::no
llvoavatar.cpp
X
 
X
  LLVFS::no LLVFile::no apr_file::no
llcharacter(???)

Rendering - Camera

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcameraview.cpp         LLVFS::no LLVFile::no apr_file::no
llfollowcam.cpp         LLVFS::no LLVFile::no apr_file::no
llmorphview.cpp         LLVFS::no LLVFile::no apr_file::no
llviewercamera.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Effects

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llhudconnector.cpp         LLVFS::no LLVFile::no apr_file::no
llhudeffect.cpp         LLVFS::no LLVFile::no apr_file::no
llhudeffectbeam.cpp         LLVFS::no LLVFile::no apr_file::no
llhudeffectlookat.cpp         LLVFS::no LLVFile::no apr_file::no
llhudeffectpointat.cpp         LLVFS::no LLVFile::no apr_file::no
llhudeffecttrail.cpp         LLVFS::no LLVFile::no apr_file::no
llhudicon.cpp         LLVFS::no LLVFile::no apr_file::no
llhudmanager.cpp         LLVFS::no LLVFile::no apr_file::no
llhudobject.cpp         LLVFS::no LLVFile::no apr_file::no
llhudrender.cpp         LLVFS::no LLVFile::no apr_file::no
llhudtext.cpp         LLVFS::no LLVFile::no apr_file::no
llhudview.cpp         LLVFS::no LLVFile::no apr_file::no
lltracker.cpp         LLVFS::no LLVFile::no apr_file::no
llvelocitybar.cpp         LLVFS::no LLVFile::no apr_file::no
llvotextbubble.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Environment

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llvlmanager.cpp         LLVFS::no LLVFile::no apr_file::no
llvlcomposition.cpp         LLVFS::no LLVFile::no apr_file::no
llvoclouds.cpp         LLVFS::no LLVFile::no apr_file::no
llvosurfacepatch.cpp         LLVFS::no LLVFile::no apr_file::no
llvoground.cpp         LLVFS::no LLVFile::no apr_file::no
llvosky.cpp         LLVFS::no LLVFile::no apr_file::no
llvostars.cpp         LLVFS::no LLVFile::no apr_file::no
llvowater.cpp         LLVFS::no LLVFile::no apr_file::no
llwind.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Viewer Objects: Volumes, Particles, and Trees

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llvocache.cpp         LLVFS::no LLVFile::no apr_file::no
llvograss.cpp         LLVFS::no LLVFile::no apr_file::no
llvoinventorylistener.cpp         LLVFS::no LLVFile::no apr_file::no
llvopartgroup.cpp         LLVFS::no LLVFile::no apr_file::no
llvotree.cpp         LLVFS::no LLVFile::no apr_file::no
llvovolume.cpp         LLVFS::no LLVFile::no apr_file::no

Rendering - Render Pipeline

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcloud.cpp         LLVFS::no LLVFile::no apr_file::no
llcubemap.cpp         LLVFS::no LLVFile::no apr_file::no
llcylinder.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawable.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpool.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolalpha.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolavatar.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolbump.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolclouds.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolground.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolsimple.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolsky.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolstars.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolterrain.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpooltree.cpp         LLVFS::no LLVFile::no apr_file::no
lldrawpoolwater.cpp         LLVFS::no LLVFile::no apr_file::no
lldynamictexture.cpp         LLVFS::no LLVFile::no apr_file::no
llface.cpp         LLVFS::no LLVFile::no apr_file::no
llfeaturemanager.cpp         LLVFS::no LLVFile::no apr_file::no
llflexibleobject.cpp         LLVFS::no LLVFile::no apr_file::no
llglsandbox.cpp         LLVFS::no LLVFile::no apr_file::no
llglslshader.cpp         LLVFS::no LLVFile::no apr_file::no
llpatchvertexarray.cpp         LLVFS::no LLVFile::no apr_file::no
llpolymesh.cpp         LLVFS::no LLVFile::no apr_file::no
llpolymorph.cpp         LLVFS::no LLVFile::no apr_file::no
llsky.cpp         LLVFS::no LLVFile::no apr_file::no
llspatialpartition.cpp         LLVFS::no LLVFile::no apr_file::no
llsphere.cpp         LLVFS::no LLVFile::no apr_file::no
llsprite.cpp         LLVFS::no LLVFile::no apr_file::no
llsurface.cpp         LLVFS::no LLVFile::no apr_file::no
llsurfacepatch.cpp         LLVFS::no LLVFile::no apr_file::no
lltexlayer.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llviewerimage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewerimagelist.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewerjoint.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerjointattachment.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerjointmesh.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerjointshape.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerlayer.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerobject.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerobjectlist.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerpartsim.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerpartsource.cpp         LLVFS::no LLVFile::no apr_file::no
llviewertextureanim.cpp         LLVFS::no LLVFile::no apr_file::no
llviewervisualparam.cpp         LLVFS::no LLVFile::no apr_file::no

Input and Output - Audio

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
fmodwrapper.cpp         LLVFS::no LLVFile::no apr_file::no
llaudiosourcevo.cpp         LLVFS::no LLVFile::no apr_file::no
llaudiostatus.cpp         LLVFS::no LLVFile::no apr_file::no

Input and Output - Input

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llviewerjoystick.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerkeyboard.cpp         LLVFS::no LLVFile::no apr_file::no

Data and Communication - Agents

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llagent.cpp         LLVFS::no LLVFile::no apr_file::no
llagentdata.cpp         LLVFS::no LLVFile::no apr_file::no
llagentpilot.cpp         LLVFS::no LLVFile::no apr_file::no

Data and Communication - Region and World

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llviewerregion.cpp         LLVFS::no LLVFile::no apr_file::no
llworld.cpp         LLVFS::no LLVFile::no apr_file::no

Data and Communication - Network

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llasynchostbyname.cpp         LLVFS::no LLVFile::no apr_file::no
llcaphttpsender.cpp         LLVFS::no LLVFile::no apr_file::no
llurl.cpp         LLVFS::no LLVFile::no apr_file::no
llurlwhitelist.cpp         LLVFS::no LLVFile::no apr_file::no
lluserauth.cpp         LLVFS::no LLVFile::no apr_file::no
llviewergenericmessage.cpp         LLVFS::no LLVFile::no apr_file::no
llviewermessage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewermessage.h
X
      LLVFS::no LLVFile::no apr_file::no
llviewernetwork.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerthrottle.cpp         LLVFS::no LLVFile::no apr_file::no
llweb.cpp         LLVFS::no LLVFile::no apr_file::no
llxmlrpctransaction.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Alerts

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llconfirmationmanager.cpp         LLVFS::no LLVFile::no apr_file::no
llfirstuse.cpp         LLVFS::no LLVFile::no apr_file::no
llnotify.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Assets

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcompilequeue.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llcompilequeue.h
X
      LLVFS::no LLVFile::no apr_file::no
llfloateranimpreview.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llfloatergesture.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterimagepreview.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterinspect.cpp         LLVFS::no LLVFile::no apr_file::no
llfloateropenobject.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterproperties.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterscriptdebug.cpp         LLVFS::no LLVFile::no apr_file::no
llpreview.cpp         LLVFS::no LLVFile::no apr_file::no
llpreviewanim.cpp         LLVFS::no LLVFile::no apr_file::no
llpreviewgesture.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llpreviewgesture.h
X
      LLVFS::no LLVFile::no apr_file::no
llpreviewlandmark.cpp         LLVFS::no LLVFile::no apr_file::no
llpreviewnotecard.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llpreviewnotecard.h
X
      LLVFS::no LLVFile::no apr_file::no
llpreviewscript.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llpreviewscript.h
X
      LLVFS::no LLVFile::no apr_file::no
llpreviewsound.cpp         LLVFS::no LLVFile::no apr_file::no
llpreviewtexture.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Avatar Appearance

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llfloaterclothing.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatercustomize.cpp         LLVFS::no LLVFile::no apr_file::no
llgenepool.cpp         LLVFS::no LLVFile::no apr_file::no
llgesturemgr.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llgesturemgr.h
X
      LLVFS::no LLVFile::no apr_file::no
llpanelmorph.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Chat, Instant Messaging, Notices, Reports

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llchatbar.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterchat.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatermute.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaternewim.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterpostcard.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llfloaterreporter.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llgroupmgr.cpp         LLVFS::no LLVFile::no apr_file::no
llgroupnotify.cpp         LLVFS::no LLVFile::no apr_file::no
llimpanel.cpp         LLVFS::no LLVFile::no apr_file::no
llimview.cpp         LLVFS::no LLVFile::no apr_file::no
lllogchat.cpp         LLVFS::no LLVFile::no apr_file::no
llmutelist.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Data

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llclassifiedinfo.cpp         LLVFS::no LLVFile::no apr_file::no
lleventinfo.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterabout.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterauction.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llfloateravatarinfo.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatergroupinfo.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatergroupinvite.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatergroups.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterland.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterlandholdings.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterregioninfo.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llfloaterregioninfo.h
X
      LLVFS::no LLVFile::no apr_file::no
llfloatertelehub.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatertos.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatertos.h
X
      LLVFS::no LLVFile::no apr_file::no
llpanelavatar.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelclassified.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelevent.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgroup.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgroupgeneral.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgroupinvite.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgrouplandmoney.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgroupnotices.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgrouproles.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgroupvoting.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelland.cpp         LLVFS::no LLVFile::no apr_file::no
llpanellandobjects.cpp         LLVFS::no LLVFile::no apr_file::no
llpanellandoptions.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Data:Inventory

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcallingcard.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterfriends.cpp         LLVFS::no LLVFile::no apr_file::no
llinventoryactions.cpp         LLVFS::no LLVFile::no apr_file::no
llinventorybridge.cpp         LLVFS::no LLVFile::no apr_file::no
llinventoryclipboard.cpp         LLVFS::no LLVFile::no apr_file::no
llinventorymodel.cpp         LLVFS::no LLVFile::no apr_file::no
llinventoryview.cpp         LLVFS::no LLVFile::no apr_file::no
lllandmarklist.cpp
X
      LLVFS::no LLVFile::no apr_file::no
lllandmarklist.h
X
      LLVFS::no LLVFile::no apr_file::no
llviewerinventory.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Data:Money and Land

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcurrencyuimanager.cpp         LLVFS::no LLVFile::no apr_file::no
llgivemoney.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbuy.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbuycontents.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbuycurrency.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbuyland.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatersellland.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Data:Search

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llfloaterdirectory.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirbrowser.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirclassified.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirevents.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirfind.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirgroups.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirland.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirpeople.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirplaces.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldirpopular.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelpick.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelplace.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Data:Map

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcompass.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatermap.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterworldmap.cpp         LLVFS::no LLVFile::no apr_file::no
llmapresponders.cpp         LLVFS::no LLVFile::no apr_file::no
llnetmap.cpp         LLVFS::no LLVFile::no apr_file::no
llworldmap.cpp         LLVFS::no LLVFile::no apr_file::no
llworldmapview.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Objects and Edit Tools

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llhoverview.cpp         LLVFS::no LLVFile::no apr_file::no
llmanip.cpp         LLVFS::no LLVFile::no apr_file::no
llmaniprotate.cpp         LLVFS::no LLVFile::no apr_file::no
llmanipscale.cpp         LLVFS::no LLVFile::no apr_file::no
llmaniptranslate.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbuildoptions.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterbump.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatercolorpicker.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterpermissionsmgr.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatertools.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelcontents.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelface.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelgeneral.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelinventory.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelobject.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelpermissions.cpp         LLVFS::no LLVFile::no apr_file::no
llselectmgr.cpp         LLVFS::no LLVFile::no apr_file::no
lltool.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolbar.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolbrush.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolcomp.cpp         LLVFS::no LLVFile::no apr_file::no
lltooldraganddrop.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolface.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolfocus.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolgrab.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolgun.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolindividual.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolmgr.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolmorph.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolobjpicker.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolpie.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolpipette.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolplacer.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolselect.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolselectland.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolselectrect.cpp         LLVFS::no LLVFile::no apr_file::no
lltoolview.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerparcelmgr.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerparceloverlay.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - HTML

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llfloaterhtml.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterhtmlfind.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaterhtmlhelp.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Import, Export, Upload

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llfloaterimport.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatersaveavatar.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatersnapshot.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
lluploaddialog.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Menus, Overlays, Login

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llmediaremotectrl.cpp         LLVFS::no LLVFile::no apr_file::no
llmenucommands.cpp         LLVFS::no LLVFile::no apr_file::no
llmoveview.cpp         LLVFS::no LLVFile::no apr_file::no
lloverlaybar.cpp         LLVFS::no LLVFile::no apr_file::no
llpanellogin.cpp         LLVFS::no LLVFile::no apr_file::no
llprogressview.cpp         LLVFS::no LLVFile::no apr_file::no
llviewermenu.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewermenu.h         LLVFS::no LLVFile::no apr_file::no
llviewermenufile.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no

User Interface - Preferences

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llfloaterpreference.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelaudioprefs.cpp         LLVFS::no LLVFile::no apr_file::no
llprefschat.cpp         LLVFS::no LLVFile::no apr_file::no
llprefsim.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldisplay.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelmsgs.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelnetwork.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelvolume.cpp         LLVFS::no LLVFile::no apr_file::no
llpanelweb.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Utility

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcolorscheme.cpp         LLVFS::no LLVFile::no apr_file::no
lldirpicker.cpp         LLVFS::no LLVFile::no apr_file::no
llfilepicker.cpp         LLVFS::no LLVFile::no apr_file::no
llfloateravatarpicker.cpp         LLVFS::no LLVFile::no apr_file::no
llfloaternamedesc.cpp         LLVFS::no LLVFile::no apr_file::no
llsavedsettingsglue.cpp         LLVFS::no LLVFile::no apr_file::no
llviewchildren.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Widgets

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llcolorswatch.cpp         LLVFS::no LLVFile::no apr_file::no
llcontainerview.cpp         LLVFS::no LLVFile::no apr_file::no
llfolderview.cpp         LLVFS::no LLVFile::no apr_file::no
llnamebox.cpp         LLVFS::no LLVFile::no apr_file::no
llnameeditor.cpp         LLVFS::no LLVFile::no apr_file::no
llnamelistctrl.cpp         LLVFS::no LLVFile::no apr_file::no
lltexturectrl.cpp         LLVFS::no LLVFile::no apr_file::no
lljoystickbutton.cpp         LLVFS::no LLVFile::no apr_file::no
llviewertexteditor.cpp         LLVFS::no LLVFile::no apr_file::no
llvieweruictrlfactory.cpp         LLVFS::no LLVFile::no apr_file::no
llwebbrowserctrl.cpp         LLVFS::no LLVFile::no apr_file::no

User Interface - Debug

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llconsole.cpp         LLVFS::no LLVFile::no apr_file::no
lldebugmessagebox.cpp         LLVFS::no LLVFile::no apr_file::no
lldebugview.cpp         LLVFS::no LLVFile::no apr_file::no
llfasttimerview.cpp         LLVFS::no LLVFile::no apr_file::no
llframestats.cpp         LLVFS::no LLVFile::no apr_file::no
llframestatview.cpp         LLVFS::no LLVFile::no apr_file::no
llmemoryview.cpp         LLVFS::no LLVFile::no apr_file::no
llfloateravatartextures.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatereditui.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatergodtools.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatertest.cpp         LLVFS::no LLVFile::no apr_file::no
llfloatertopobjects.cpp         LLVFS::no LLVFile::no apr_file::no
llpaneldebug.cpp         LLVFS::no LLVFile::no apr_file::no
llstatbar.cpp         LLVFS::no LLVFile::no apr_file::no
llstatgraph.cpp         LLVFS::no LLVFile::no apr_file::no
llstatusbar.cpp         LLVFS::no LLVFile::no apr_file::no
llstatview.cpp         LLVFS::no LLVFile::no apr_file::no
lltextureview.cpp      
X
LLVFS::no LLVFile::no apr_file::no
llvelocitybar.cpp         LLVFS::no LLVFile::no apr_file::no
llviewercontrol.cpp         LLVFS::no LLVFile::no apr_file::no
llviewerstats.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llviewerstats.h
X
      LLVFS::no LLVFile::no apr_file::no

Unlisted in Viewer Source Files page

file VFS gVFS gStaticVFS LLLFS LLVFS LLVFile apr_file
llassetstorage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llassetstorage.h
X
      LLVFS::no LLVFile::no apr_file::no
audioengine.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
audioengine.h
X
      LLVFS::no LLVFile::no apr_file::no
llaudiodecodemgr.cpp
X
X
X
X
LLVFS::no LLVFile::no apr_file::no
llaudiodecodemgr.h
X
      LLVFS::no LLVFile::no apr_file::no
llextendedstatus.h
X
      LLVFS::no LLVFile::no apr_file::no
llhttpassetstorage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llhttpassetstorage.h
X
      LLVFS::no LLVFile::no apr_file::no
llhttpclient.cpp
X
      LLVFS::no LLVFile::no apr_file::no
lllfsthread.cpp      
X
LLVFS::no LLVFile::no apr_file::no
lllfsthread.h      
X
LLVFS::no LLVFile::no apr_file::no
llhttpclient.cpp
X
X
    LLVFS::no LLVFile::no apr_file::no
llimage.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llimage.h
X
      LLVFS::no LLVFile::no apr_file::no
llkeyframemotion.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llkeyframemotion.h
X
      LLVFS::no LLVFile::no apr_file::no
llprocessor.cpp         LLVFS::no LLVFile::no apr_file::no
llprocessor.h         LLVFS::no LLVFile::no apr_file::no
llstatemachine.cpp         LLVFS::no LLVFile::no apr_file::no
llstatemachine.h         LLVFS::no LLVFile::no apr_file::no
lltransfersourceasset.cpp
X
      LLVFS::no LLVFile::no apr_file::no
lltransfersourceasset.h
X
      LLVFS::no LLVFile::no apr_file::no
lltransfertargetvfile.cpp
X
      LLVFS::no LLVFile::no apr_file::no
lltransfertargetvfile.h
X
      LLVFS::no LLVFile::no apr_file::no
llvfile.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llvfile.h
X
      LLVFS::no LLVFile::no apr_file::no
llvfs.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llvfs.h
X
      LLVFS::no LLVFile::no apr_file::no
llvfsthread.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llvfsthread.h
X
      LLVFS::no LLVFile::no apr_file::no
llxfer_vfile.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llxfer_vfile.h
X
      LLVFS::no LLVFile::no apr_file::no
llxfermanager.cpp
X
      LLVFS::no LLVFile::no apr_file::no
llxfermanager.h
X
      LLVFS::no LLVFile::no apr_file::no
vorbisdecode.cpp
X
      LLVFS::no LLVFile::no apr_file::no
vorbisdecode.h
X
      LLVFS::no LLVFile::no apr_file::no