//go:build !ignore_autogenerated

/*
SPDX-FileCopyrightText: Copyright (c) 2024-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

/*
Copyright 2024.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Code generated by controller-gen. DO NOT EDIT.

package v1alpha1

import (
	"k8s.io/apimachinery/pkg/runtime"
)

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CheckpointConfiguration) DeepCopyInto(out *CheckpointConfiguration) {
	*out = *in
	out.Storage = in.Storage
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckpointConfiguration.
func (in *CheckpointConfiguration) DeepCopy() *CheckpointConfiguration {
	if in == nil {
		return nil
	}
	out := new(CheckpointConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CheckpointOCIConfig) DeepCopyInto(out *CheckpointOCIConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckpointOCIConfig.
func (in *CheckpointOCIConfig) DeepCopy() *CheckpointOCIConfig {
	if in == nil {
		return nil
	}
	out := new(CheckpointOCIConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CheckpointPVCConfig) DeepCopyInto(out *CheckpointPVCConfig) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckpointPVCConfig.
func (in *CheckpointPVCConfig) DeepCopy() *CheckpointPVCConfig {
	if in == nil {
		return nil
	}
	out := new(CheckpointPVCConfig)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CheckpointS3Config) DeepCopyInto(out *CheckpointS3Config) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckpointS3Config.
func (in *CheckpointS3Config) DeepCopy() *CheckpointS3Config {
	if in == nil {
		return nil
	}
	out := new(CheckpointS3Config)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *CheckpointStorageConfiguration) DeepCopyInto(out *CheckpointStorageConfiguration) {
	*out = *in
	out.PVC = in.PVC
	out.S3 = in.S3
	out.OCI = in.OCI
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckpointStorageConfiguration.
func (in *CheckpointStorageConfiguration) DeepCopy() *CheckpointStorageConfiguration {
	if in == nil {
		return nil
	}
	out := new(CheckpointStorageConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *DiscoveryConfiguration) DeepCopyInto(out *DiscoveryConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiscoveryConfiguration.
func (in *DiscoveryConfiguration) DeepCopy() *DiscoveryConfiguration {
	if in == nil {
		return nil
	}
	out := new(DiscoveryConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GPUConfiguration) DeepCopyInto(out *GPUConfiguration) {
	*out = *in
	if in.DiscoveryEnabled != nil {
		in, out := &in.DiscoveryEnabled, &out.DiscoveryEnabled
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUConfiguration.
func (in *GPUConfiguration) DeepCopy() *GPUConfiguration {
	if in == nil {
		return nil
	}
	out := new(GPUConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *GroveConfiguration) DeepCopyInto(out *GroveConfiguration) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
	out.TerminationDelay = in.TerminationDelay
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroveConfiguration.
func (in *GroveConfiguration) DeepCopy() *GroveConfiguration {
	if in == nil {
		return nil
	}
	out := new(GroveConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *InfrastructureConfiguration) DeepCopyInto(out *InfrastructureConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfiguration.
func (in *InfrastructureConfiguration) DeepCopy() *InfrastructureConfiguration {
	if in == nil {
		return nil
	}
	out := new(InfrastructureConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *IngressConfiguration) DeepCopyInto(out *IngressConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressConfiguration.
func (in *IngressConfiguration) DeepCopy() *IngressConfiguration {
	if in == nil {
		return nil
	}
	out := new(IngressConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *KaiSchedulerConfiguration) DeepCopyInto(out *KaiSchedulerConfiguration) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KaiSchedulerConfiguration.
func (in *KaiSchedulerConfiguration) DeepCopy() *KaiSchedulerConfiguration {
	if in == nil {
		return nil
	}
	out := new(KaiSchedulerConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LWSConfiguration) DeepCopyInto(out *LWSConfiguration) {
	*out = *in
	if in.Enabled != nil {
		in, out := &in.Enabled, &out.Enabled
		*out = new(bool)
		**out = **in
	}
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LWSConfiguration.
func (in *LWSConfiguration) DeepCopy() *LWSConfiguration {
	if in == nil {
		return nil
	}
	out := new(LWSConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LeaderElectionConfiguration) DeepCopyInto(out *LeaderElectionConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LeaderElectionConfiguration.
func (in *LeaderElectionConfiguration) DeepCopy() *LeaderElectionConfiguration {
	if in == nil {
		return nil
	}
	out := new(LeaderElectionConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *LoggingConfiguration) DeepCopyInto(out *LoggingConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfiguration.
func (in *LoggingConfiguration) DeepCopy() *LoggingConfiguration {
	if in == nil {
		return nil
	}
	out := new(LoggingConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MPIConfiguration) DeepCopyInto(out *MPIConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MPIConfiguration.
func (in *MPIConfiguration) DeepCopy() *MPIConfiguration {
	if in == nil {
		return nil
	}
	out := new(MPIConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *MetricsServer) DeepCopyInto(out *MetricsServer) {
	*out = *in
	out.Server = in.Server
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsServer.
func (in *MetricsServer) DeepCopy() *MetricsServer {
	if in == nil {
		return nil
	}
	out := new(MetricsServer)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NamespaceConfiguration) DeepCopyInto(out *NamespaceConfiguration) {
	*out = *in
	out.Scope = in.Scope
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceConfiguration.
func (in *NamespaceConfiguration) DeepCopy() *NamespaceConfiguration {
	if in == nil {
		return nil
	}
	out := new(NamespaceConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *NamespaceScopeConfiguration) DeepCopyInto(out *NamespaceScopeConfiguration) {
	*out = *in
	out.LeaseDuration = in.LeaseDuration
	out.LeaseRenewInterval = in.LeaseRenewInterval
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceScopeConfiguration.
func (in *NamespaceScopeConfiguration) DeepCopy() *NamespaceScopeConfiguration {
	if in == nil {
		return nil
	}
	out := new(NamespaceScopeConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OperatorConfiguration) DeepCopyInto(out *OperatorConfiguration) {
	*out = *in
	out.TypeMeta = in.TypeMeta
	out.Server = in.Server
	out.LeaderElection = in.LeaderElection
	out.Namespace = in.Namespace
	in.Orchestrators.DeepCopyInto(&out.Orchestrators)
	out.Infrastructure = in.Infrastructure
	out.Ingress = in.Ingress
	out.RBAC = in.RBAC
	out.MPI = in.MPI
	out.Checkpoint = in.Checkpoint
	out.Discovery = in.Discovery
	in.GPU.DeepCopyInto(&out.GPU)
	out.Logging = in.Logging
	out.Security = in.Security
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorConfiguration.
func (in *OperatorConfiguration) DeepCopy() *OperatorConfiguration {
	if in == nil {
		return nil
	}
	out := new(OperatorConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (in *OperatorConfiguration) DeepCopyObject() runtime.Object {
	if c := in.DeepCopy(); c != nil {
		return c
	}
	return nil
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *OrchestratorConfiguration) DeepCopyInto(out *OrchestratorConfiguration) {
	*out = *in
	in.Grove.DeepCopyInto(&out.Grove)
	in.LWS.DeepCopyInto(&out.LWS)
	in.KaiScheduler.DeepCopyInto(&out.KaiScheduler)
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratorConfiguration.
func (in *OrchestratorConfiguration) DeepCopy() *OrchestratorConfiguration {
	if in == nil {
		return nil
	}
	out := new(OrchestratorConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *RBACConfiguration) DeepCopyInto(out *RBACConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACConfiguration.
func (in *RBACConfiguration) DeepCopy() *RBACConfiguration {
	if in == nil {
		return nil
	}
	out := new(RBACConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *SecurityConfiguration) DeepCopyInto(out *SecurityConfiguration) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityConfiguration.
func (in *SecurityConfiguration) DeepCopy() *SecurityConfiguration {
	if in == nil {
		return nil
	}
	out := new(SecurityConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Server) DeepCopyInto(out *Server) {
	*out = *in
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Server.
func (in *Server) DeepCopy() *Server {
	if in == nil {
		return nil
	}
	out := new(Server)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *ServerConfiguration) DeepCopyInto(out *ServerConfiguration) {
	*out = *in
	out.Metrics = in.Metrics
	out.HealthProbe = in.HealthProbe
	out.Webhook = in.Webhook
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerConfiguration.
func (in *ServerConfiguration) DeepCopy() *ServerConfiguration {
	if in == nil {
		return nil
	}
	out := new(ServerConfiguration)
	in.DeepCopyInto(out)
	return out
}

// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *WebhookServer) DeepCopyInto(out *WebhookServer) {
	*out = *in
	out.Server = in.Server
}

// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookServer.
func (in *WebhookServer) DeepCopy() *WebhookServer {
	if in == nil {
		return nil
	}
	out := new(WebhookServer)
	in.DeepCopyInto(out)
	return out
}
