mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-11-03 15:18:47 +00:00 
			
		
		
		
	Service/CAM: Add doxycomments to all service functions
This commit is contained in:
		
							parent
							
								
									fc6fa0f088
								
							
						
					
					
						commit
						338a0f01f2
					
				
					 1 changed files with 217 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -190,24 +190,241 @@ struct PackageParameterCameraSelect {
 | 
			
		|||
 | 
			
		||||
static_assert(sizeof(PackageParameterCameraSelect) == 28, "PackageParameterCameraSelect structure size is wrong");
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00010040
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00010040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void StartCapture(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00020040
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00020040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void StopCapture(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00050040
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00050042
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: Descriptor: Handle
 | 
			
		||||
 *      3: Event handle
 | 
			
		||||
 */
 | 
			
		||||
void GetVsyncInterruptEvent(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00060040
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00060042
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: Descriptor: Handle
 | 
			
		||||
 *      3: Event handle
 | 
			
		||||
 */
 | 
			
		||||
void GetBufferErrorInterruptEvent(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Sets the target buffer to receive a frame of image data and starts the transfer. Each camera
 | 
			
		||||
 * port has its own event to signal the end of the transfer.
 | 
			
		||||
 *
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00070102
 | 
			
		||||
 *      1: Destination address in calling process
 | 
			
		||||
 *      2: u8 Camera port (`Port` enum)
 | 
			
		||||
 *      3: Image size (in bytes?)
 | 
			
		||||
 *      4: u16 Transfer unit size (in bytes?)
 | 
			
		||||
 *      5: Descriptor: Handle
 | 
			
		||||
 *      6: Handle to destination process
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00070042
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: Descriptor: Handle
 | 
			
		||||
 *      3: Handle to event signalled when transfer finishes
 | 
			
		||||
 */
 | 
			
		||||
void SetReceiving(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00090100
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *      2: u16 Number of lines to transfer
 | 
			
		||||
 *      3: u16 Width
 | 
			
		||||
 *      4: u16 Height
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00090040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void SetTransferLines(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x000A0080
 | 
			
		||||
 *      1: u16 Width
 | 
			
		||||
 *      2: u16 Height
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x000A0080
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: Maximum number of lines that fit in the buffer(?)
 | 
			
		||||
 */
 | 
			
		||||
void GetMaxLines(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x000C0040
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x000C0080
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: Total number of bytes for each frame with current settings(?)
 | 
			
		||||
 */
 | 
			
		||||
void GetTransferBytes(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x000E0080
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *      2: u8 bool Enable trimming if true
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x000E0040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void SetTrimming(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00120140
 | 
			
		||||
 *      1: u8 Camera port (`Port` enum)
 | 
			
		||||
 *      2: s16 Trim width(?)
 | 
			
		||||
 *      3: s16 Trim height(?)
 | 
			
		||||
 *      4: s16 Camera width(?)
 | 
			
		||||
 *      5: s16 Camera height(?)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00120040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void SetTrimmingParamsCenter(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Selects up to two physical cameras to enable.
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00130040
 | 
			
		||||
 *      1: u8 Cameras to activate (`CameraSelect` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00130040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void Activate(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x001D00C0
 | 
			
		||||
 *      1: u8 Camera select (`CameraSelect` enum)
 | 
			
		||||
 *      2: u8 Type of flipping to perform (`Flip` enum)
 | 
			
		||||
 *      3: u8 Context (`Context` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x001D0040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void FlipImage(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x001F00C0
 | 
			
		||||
 *      1: u8 Camera select (`CameraSelect` enum)
 | 
			
		||||
 *      2: u8 Camera frame resolution (`Size` enum)
 | 
			
		||||
 *      3: u8 Context id (`Context` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x001F0040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void SetSize(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00200080
 | 
			
		||||
 *      1: u8 Camera select (`CameraSelect` enum)
 | 
			
		||||
 *      2: u8 Camera framerate (`FrameRate` enum)
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00200040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void SetFrameRate(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Returns calibration data relating the outside cameras to eachother, for use in AR applications.
 | 
			
		||||
 *
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x002B0000
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x002B0440
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2-17: `StereoCameraCalibrationData` structure with calibration values
 | 
			
		||||
 */
 | 
			
		||||
void GetStereoCameraCalibrationData(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00360000
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00360080
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 *      2: ?
 | 
			
		||||
 */
 | 
			
		||||
void GetSuitableY2rStandardCoefficient(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Unknown
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00380040
 | 
			
		||||
 *      1: u8 Sound ID
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00380040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void PlayShutterSound(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Initializes the camera driver. Must be called before using other functions.
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x00390000
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x00390040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void DriverInitialize(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Shuts down the camera driver.
 | 
			
		||||
 *  Inputs:
 | 
			
		||||
 *      0: 0x003A0000
 | 
			
		||||
 *  Outputs:
 | 
			
		||||
 *      0: 0x003A0040
 | 
			
		||||
 *      1: ResultCode
 | 
			
		||||
 */
 | 
			
		||||
void DriverFinalize(Service::Interface* self);
 | 
			
		||||
 | 
			
		||||
/// Initialize CAM service(s)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue