Difference between revisions of "Viewer source"

From Second Life Wiki
Jump to: navigation, search
(indra)
m (added link to the doxygen)
 
(14 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 
{{OSWikiLearnBox}}
 
{{OSWikiLearnBox}}
  
Once you have [[Compiling the viewer|gotten the source]], you may be wondering what it is you are looking at.  
+
Once you have [[Get source and compile#Getting_the_source|gotten the source]], you may be wondering what it is you are looking at.  
  
 +
Also see the [[Viewer Doxygen]]; a rich browsing tool.
  
 
== indra ==
 
== indra ==
Line 8: Line 9:
 
Most of the action is in the indra directory.  Here's an alphabetical list of subdirectories, along with a brief description of what the code in that directory is for, and perhaps a pointer to more information:
 
Most of the action is in the indra directory.  Here's an alphabetical list of subdirectories, along with a brief description of what the code in that directory is for, and perhaps a pointer to more information:
  
* indra_complete - Solution File
+
* indra_complete - Solution File for Visual Studio
* launcher - Sim Launcher
+
 
* linux_crash_logger - Crash Logger
 
* linux_crash_logger - Crash Logger
 
* llaudio - Audio Engine.  See [[Sound System]] for more detail.
 
* llaudio - Audio Engine.  See [[Sound System]] for more detail.
Line 16: Line 16:
 
** Location for linden_preprocessor.h - global constants
 
** Location for linden_preprocessor.h - global constants
 
* llimage - Image Storage Class - Loading Targa Files, Textured images, Fileformats - Convert to GL image for rendering.  See [[Image System]] for more.
 
* llimage - Image Storage Class - Loading Targa Files, Textured images, Fileformats - Convert to GL image for rendering.  See [[Image System]] for more.
 +
* llimagej2coj - an implementation of JPEG2000 encode/decode using OpenJPEG
 
* llinventory - manages the inventory of a user (permissions, inventory, parcels).  See [[Inventory]] for more.
 
* llinventory - manages the inventory of a user (permissions, inventory, parcels).  See [[Inventory]] for more.
* llmath - Vectors
+
* llmath - Vectors, quaternions, etc.  A basic 3D math library.
* llmedia - wrappers over Quicktime
+
* [[LLMedia|llmedia]] - wrappers over Quicktime
* llmessage - Messaging/IPC TCP/UDP, Helper classes, Uses [http://apr.apache.org/ Apache Portable Runtime]
+
* llmessage - Messaging/IPC TCP/UDP, Helper classes, Uses [[Apache Portable Runtime]]
 
* llprimitive - More of Rendering - Object Transmission, Shared source for representation on client/server. PMC for objects.
 
* llprimitive - More of Rendering - Object Transmission, Shared source for representation on client/server. PMC for objects.
 
* llrender - Font, AGP wrappers
 
* llrender - Font, AGP wrappers
* llscene - Scene Mgmt for GL
+
* llui - User Interface widgets, the XML UI layer (a.k.a. "XUI"): buttons, checkboxes, text fields, scrollbars, select boxes, etc.
* llui - XML UI layer (a.k.a. "XUI") menu, menuitem, spin controls, panels
+
* llvfs - Virtual file system.  x-platform file handling (open, read/write, close), see [[VFS source relationships]] for more
* llvfs - Virtual file system.  x-platform file handling (open, read/write, close)
+
 
* llwindow - Cross-platform window abstraction (Getting messages, keyboard/mouse, GL context set-up, other low level UI stuff.  Below llui in stack)   
 
* llwindow - Cross-platform window abstraction (Getting messages, keyboard/mouse, GL context set-up, other low level UI stuff.  Below llui in stack)   
* llxml - Wrapper for expat.  
+
* llxml - Wrapper for expat XML library.
 
* lscript - LL Scripting
 
* lscript - LL Scripting
 
* mac_crash_logger - Crash Logger
 
* mac_crash_logger - Crash Logger
* mac_updater
+
* mac_updater - auto-updater for OS X
* newview - Viewer
+
* newview - Viewer (Client)
 
* SConstruct - for the SCons build system
 
* SConstruct - for the SCons build system
 
* test - Test Code
 
* test - Test Code
 
* win_crash_logger - Crash Logger
 
* win_crash_logger - Crash Logger
* win_updater - Updater
+
* win_updater - auto-updater for Windows
  
 
== scripts ==
 
== scripts ==
  
 
Not much in this directory. However, one key file that lives here is message_template.msg, which describes each message in the [[protocol]].
 
Not much in this directory. However, one key file that lives here is message_template.msg, which describes each message in the [[protocol]].
 +
* '''new in 1.18''' [[ template_verifier.py ]] - checks a message template against the master message template for backwards compatibility
 +
 +
== libraries ==
 +
 +
This directory contains the [[Third_Party_Libraries|third party libraries]].
 +
 +
== doc ==
 +
 +
There are some license files in here. More license files can be found in the root directory.
 +
 +
 +
[[Category:Compiling viewer]]
 +
[[Category:Articles_in_need_of_updating]]

Latest revision as of 07:55, 14 December 2011

Once you have gotten the source, you may be wondering what it is you are looking at.

Also see the Viewer Doxygen; a rich browsing tool.

indra

Most of the action is in the indra directory. Here's an alphabetical list of subdirectories, along with a brief description of what the code in that directory is for, and perhaps a pointer to more information:

  • indra_complete - Solution File for Visual Studio
  • linux_crash_logger - Crash Logger
  • llaudio - Audio Engine. See Sound System for more detail.
  • llcharacter - Part of Rendering/Viewer - controls appearance of avatars. See Avatar Appearance for more
  • llcommon - Common Helper Functions (Hashing, Structured Data, Container Classes (deprecated) etc.)
    • Location for linden_preprocessor.h - global constants
  • llimage - Image Storage Class - Loading Targa Files, Textured images, Fileformats - Convert to GL image for rendering. See Image System for more.
  • llimagej2coj - an implementation of JPEG2000 encode/decode using OpenJPEG
  • llinventory - manages the inventory of a user (permissions, inventory, parcels). See Inventory for more.
  • llmath - Vectors, quaternions, etc. A basic 3D math library.
  • llmedia - wrappers over Quicktime
  • llmessage - Messaging/IPC TCP/UDP, Helper classes, Uses Apache Portable Runtime
  • llprimitive - More of Rendering - Object Transmission, Shared source for representation on client/server. PMC for objects.
  • llrender - Font, AGP wrappers
  • llui - User Interface widgets, the XML UI layer (a.k.a. "XUI"): buttons, checkboxes, text fields, scrollbars, select boxes, etc.
  • llvfs - Virtual file system. x-platform file handling (open, read/write, close), see VFS source relationships for more
  • llwindow - Cross-platform window abstraction (Getting messages, keyboard/mouse, GL context set-up, other low level UI stuff. Below llui in stack)
  • llxml - Wrapper for expat XML library.
  • lscript - LL Scripting
  • mac_crash_logger - Crash Logger
  • mac_updater - auto-updater for OS X
  • newview - Viewer (Client)
  • SConstruct - for the SCons build system
  • test - Test Code
  • win_crash_logger - Crash Logger
  • win_updater - auto-updater for Windows

scripts

Not much in this directory. However, one key file that lives here is message_template.msg, which describes each message in the protocol.

  • new in 1.18 template_verifier.py - checks a message template against the master message template for backwards compatibility

libraries

This directory contains the third party libraries.

doc

There are some license files in here. More license files can be found in the root directory.