-->

1. Modules

Here is a list of all modules:

1.1. Injection API

The Injection API contains methods for programmatic injection of Nsight tools from target applications. This provides an alternative mechanism to the Nsight Host for launching and injecting applications.

Classes

struct 
Reports information about a specified activity.
struct 
Reports information about a particular Nsight installation.

Enumerations

enum NGFX_Injection_ActivityType
Specifies a particular activity that is available from Nsight Graphics.
enum NGFX_Injection_Result
Reports success or failure of an injection operation.
enum NGFX_Nsight_SKU
Identifies the SKU of a particular Nsight installation.

Functions

NGFX_Injection_Result NGFX_Injection_EnumerateActivities ( const NGFX_Injection_InstallationInfo* pInstallation, uint32_t* pCount, NGFX_Injection_Activity* pActivities )
Enumerates the activities that are available for the particular installation of Nsight Graphics.
NGFX_Injection_Result NGFX_Injection_EnumerateInstallations ( uint32_t* pCount, NGFX_Injection_InstallationInfo* pInstallations )
Enumerates the installations of Nsight that are installed on the current system.
NGFX_Injection_Result NGFX_Injection_ExecuteActivityCommand ( )
Performs the primary command for the injected activity.
NGFX_Injection_Result NGFX_Injection_InjectToProcess ( const NGFX_Injection_InstallationInfo* pInstallation, const NGFX_Injection_Activity* pActivity )
Performs an injection into the current process with the specified installation and activity.
NGFX_Injection_Result NGFX_Injection_SetActivitySettingsFromProjectFile ( const NGFX_Injection_InstallationInfo* pInstallation, const NGFX_Injection_PathChar* pProjectFilePath )
Globally configures the activity settings based off an existing Nsight Graphics project file.
NGFX_Injection_Result NGFX_Injection_SetActivitySettingsFromProjectJson ( const NGFX_Injection_InstallationInfo* pInstallation, const char* pJson )
Globally configures the activity settings based off the contents of an existing Nsight Graphics project file.

Enumerations

enum NGFX_Injection_ActivityType

The activity specifies the type of operations that can be performed when analyzing the application. Only one activity may be selected for a given session.

Values
NGFX_INJECTION_ACTIVITY_UNKNOWN = 0
NGFX_INJECTION_ACTIVITY_FRAME_DEBUGGER = 1
NGFX_INJECTION_ACTIVITY_GENERATE_CPP_CAPTURE = 3
NGFX_INJECTION_ACTIVITY_GPU_TRACE = 4
enum NGFX_Injection_Result

All functions within the NGFX Injection API will report a result code that idenfies the success or failure of the operation. Negative values generally indicate a failed operation.

Values
NGFX_INJECTION_RESULT_OK = 0
Success.
NGFX_INJECTION_RESULT_FAILURE = -1
Generic failure.
NGFX_INJECTION_RESULT_INVALID_ARGUMENT = -2
Invalid argument.
NGFX_INJECTION_RESULT_INJECTION_FAILED = -3
Generic injection failure.
NGFX_INJECTION_RESULT_ALREADY_INJECTED = -4
Cannot inject because already injected.
NGFX_INJECTION_RESULT_NOT_INJECTED = -5
Cannot execute activity because not injected.
NGFX_INJECTION_RESULT_DRIVER_STILL_LOADED = -6
Cannot inject because a graphics driver is already or still loaded.
NGFX_INJECTION_RESULT_INVALID_PROJECT = -7
Project file specified was malformed.
enum NGFX_Nsight_SKU

The sku is the distribution of Nsight.

Values
NGFX_NSIGHT_SKU_UNKNOWN
NGFX_NSIGHT_SKU_PUBLIC
NGFX_NSIGHT_SKU_PRO
NGFX_NSIGHT_SKU_INTERNAL

Functions

NGFX_Injection_Result NGFX_Injection_EnumerateActivities ( const NGFX_Injection_InstallationInfo* pInstallation, uint32_t* pCount, NGFX_Injection_Activity* pActivities )
Enumerates the activities that are available for the particular installation of Nsight Graphics.
Parameters
pInstallation
- A pointer to an installation that was previously identified by NGFX_Injection_EnumerateInstallations.
pCount
- Returns the count of activities available for the specified installation
pActivities
- Returns the list of activities for the specified installation. This parameter may be null when querying the installation count. If non-null the array of activities will be written here.
Returns

An injection result that reports whether the activities could be queried

Description

This method must be called to identify the activities that may be injected for a particular installation of Nsight Graphics. If installation is valid, a count of activities will be returned and when pActivities is non-null, a list of activities of size *pCount will be populated. It is the responsibilities of the user application to point pActivities to valid memory for writing.

NGFX_Injection_Result NGFX_Injection_EnumerateInstallations ( uint32_t* pCount, NGFX_Injection_InstallationInfo* pInstallations )
Enumerates the installations of Nsight that are installed on the current system.
Parameters
pCount
- Returns the count of Nsight installations found on the system.
pInstallations
- Returns the list of Nsight installation. This parameter may be null when querying the installation count. If non-null the array of installations will be written here.
Returns

An injection result that reports whether the installations could be queried

Description

When Nsight Graphics is installed, this method will discover one or more installations and report them for possible injection. When no installations are present, pCount will be assigned to 0. It is the responsibility of the user application to point pInstallations to valid memory for writing.

NGFX_Injection_Result NGFX_Injection_ExecuteActivityCommand ( )
Performs the primary command for the injected activity.
Description

This command is typically a 'capture' command. The prerequisite for this is that NGFX_Injection_InjectToProcess succeeded, i.e., that the application has previously selected a valid installation and activity and successfully injected via NGFX_Injection_InjectToProcess.

This function is currently experimental and may be revised, replaced, or eliminated in a future version.

NGFX_Injection_Result NGFX_Injection_InjectToProcess ( const NGFX_Injection_InstallationInfo* pInstallation, const NGFX_Injection_Activity* pActivity )
Performs an injection into the current process with the specified installation and activity.
Parameters
pInstallation
- A pointer to an installation that was previously identified by NGFX_Injection_EnumerateInstallations.
pActivity
- A pointer to the activity to select when injecting that was queried by NGFX_Injection_EnumerateActivities.
Returns

An injection result that reports whether the process could be injected.

Description

To perform an injection into the current process, a valid installation and activity must have been queried. Additionally, the NVIDIA driver must not be actively loaded, otherwise NGFX_INJECTION_RESULT_DRIVER_STILL_LOADED will be returned.

NGFX_Injection_Result NGFX_Injection_SetActivitySettingsFromProjectFile ( const NGFX_Injection_InstallationInfo* pInstallation, const NGFX_Injection_PathChar* pProjectFilePath )
Globally configures the activity settings based off an existing Nsight Graphics project file.
Parameters
pInstallation
- A pointer to an installation that was previously identified by NGFX_Injection_EnumerateInstallations.
pProjectFilePath
- Path of an Nsight Graphics project file to load. This file is created by the Nsight Graphics UI and saved for consumption by the NGFX Injection API.
Returns

An injection result that reports whether the activities settings object was successfully created.

Description

NGFX_Injection_Result NGFX_Injection_SetActivitySettingsFromProjectJson ( const NGFX_Injection_InstallationInfo* pInstallation, const char* pJson )
Globally configures the activity settings based off the contents of an existing Nsight Graphics project file.
Parameters
pInstallation
- A pointer to an installation that was previously identified by NGFX_Injection_EnumerateInstallations.
pJson
- JSON contents of an Nsight Graphics project file to load.
Returns

An injection result that reports whether the activities settings object was successfully created.

Description